技术文档
方法相同入参 AOP 使用说明
Shopee 刊登业务梳理文档
亚马逊刊登相关业务知识
刊登监控设计方案
亚马逊跟卖设计
Fanno 刊登业务梳理文档
日志收集 方案设计
PIB 刊登方案设计
Temu 刊登方案设计
ShopTokenInfo Aop集成MBC方案
香港定时卡刊登任务方案
push-message 、receive-message 省流方案
OZON 刊登方案设计
Lazada视频上传方案
广州同步店铺框架搭建
Shopify翻版
Amazon交接
TikTok 由global模式切换replicate模式调研
tiktok 折扣活动对接方案
Target 初期调研
本文档使用 MrDoc 发布
-
+
首页
日志收集 方案设计
# 起因 > 在使用腾讯云做微服务的部署后,便也开启了腾讯云的日志采集功能,改功能由腾讯云自动采集容器内控制台打印的全部日志,并提供了页面供检索日志,但是在不断的使用和日志排查中,发现腾讯云存在部分日志搜索不到的情况,或者部分节点容器未采集日志的情况,鉴于该问题经常导致线上问题排查受挫,使用该日志收集方案保障该问题。 # 方案 > 目前所有的微服务都会对程序所输出的日志文件进行压缩处理,所有压缩后的文件将备份到 ```/data/logs/bak``` 下(该目录一般挂载到容器内部),按服务名称做区分,该方法可以防止程序本身的日志过大导致服务器过载,因为就程序本身而言,容器内部一般按日期做日志分文件。当然 ```/data/logs/bak``` 下的日志也并不会永久保存,运维会在一段时间后删除,而且该文件夹下的文件查询和下载并不方便,一是需要登陆腾讯云进入容器内部,二是在多个微服务集群下下载问价变的更加繁琐。 > 日志收集程序会通过外挂(直接在物理机上运行)等方式保证每个物理机上只运行一个日志收集项目,该项目会扫描物理机上的 ```/data/logs/bak``` 目录下所有的服务,和已配置需要处理的服务做匹配,匹配到的服务将再次扫描该服务下所有的日志文件,将所有的日志文件上传到腾讯云的 COS 上。另外提供查询日志和下载的功能。 # 架构  # 程序流程 ```mps-log-collect``` > 1> 程序通过定时器定时进行日志扫描,扫描是否存在新日志,配置定时器入口:```com.mabang.runner.SystemApplicationRunner``` > 2> 定时任务入口:```com.mabang.task.LogCollectTask.execute()```, 调用真实服务:```com.mabang.service.LogCollectServiceImpl.logCollect()``` 开始扫描服务,检查必要条件和配置的服务进行匹配 > 3> 对于所有扫描出来的服务进行多线程处理每个服务下的日志文件。 > 4> 扫描服务下的日志和缓存中存储的上次处理的日志文件的创建时间匹配,只处理新生成的日志文件。 > 5> 上传日志文件,记录最新处理的日志文件的创建时间。 # 程序流程 ```mps-product-monitor``` > ```com.mabang.web.controller.TencentCOSController``` 下提供查询日志列表和下载的接口,由于查询列表腾讯云的 API 只提供通过日志路径前缀匹配,所有暂时无法通过时间范围查询。
chenjunan
2022年9月18日 20:25
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码