2022年通用组件系统设计之日志系统 .pdf

上传人:H****o 文档编号:40226254 上传时间:2022-09-08 格式:PDF 页数:9 大小:511.79KB
返回 下载 相关 举报
2022年通用组件系统设计之日志系统 .pdf_第1页
第1页 / 共9页
2022年通用组件系统设计之日志系统 .pdf_第2页
第2页 / 共9页
点击查看更多>>
资源描述

《2022年通用组件系统设计之日志系统 .pdf》由会员分享,可在线阅读,更多相关《2022年通用组件系统设计之日志系统 .pdf(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、通用组件系统设计之日志系统1.文档历史日期作者备注2017-10-14 阳荣安创建2017-10-17 高勇增加系统概述一节2.系统概述针对目前从运维侧看到的一些问题(文件过大,打印信息缺乏标准),希望对日志系统进行规范。提供统一的API,定义一定的规则,并为有效支撑后续日志系统的发展提供支撑。2.1.功能定义日志的主要作用是用来还原现场,协助我们分析问题,帮助重现历史。在日常具体工作中,用得最多的是协助我们直接定义问题的系统维护类日志,以及用来统计分析系统的运行状态的数据上报类日志。我们的日志未来也要具备这类能力。2.1.1.系统维护类日志系统维护类日志界别的分类如下。编号级别描述1 DEB

2、UG 调试应用程序使用2 INFO 突出强调关键动作3 WARN 出现了预知的错误4 ERROR 出现不期望的故障,还能hold 住5 FATAL 严重问题,搞不定了名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 9 页 -为了辅助我们回溯相关问题,考虑到多个模块、多机器、多进程、多线程的问题,对日志进行区分,并设定一些参考格式,便于日志检索,如下供开发人员参考。编号内容备注1 日志级别DEBUG 2 日期时间20171017-155600-123 3 机器节点192.168.0.1 4 模块名ORDER 5 文件名Main.cpp 6 文件行号12 7 进程号123 8 线程号

3、11 9 日志消息体灵活定义,建议控制大小在一定范围内2.1.2.数据上报类日志数据上报类日志严格遵从制定的格式,便于分析汇总。如下是以调用者身份上报被调用服务使用状态的日志格式。每一项之间用|分割,供参考。编号内容例子1 版本1 2 日期时间1508227752 3 调用方 ID CGI 4 调用方所在节点ID WX1 5 被调方 ID ORDERSVR 6 被调方节点ID LG1 7 服务与方法ID Create 8 返回码0 9 耗时10ms 2.2.性能定义后端日志应该统一规范,通过API达成共识,并实现易用性。并发保持不交叉,写入能力应该发挥系统能力,并不再并发时降低。日志的格式应该

4、统一。名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 9 页 -验收办法,如下表:编号并发用例场景完成时长(ms)检查1 1 线程单线程打印1000 万行日志2 10 线程每线程打印100 万行日志3 10 进程每进程打印100 万行日志4 100 线程每线程打印10 万行日志5 100 进程每线程打印10 万行日志2.3.系统设计日志整体如下图,编号模块职责1 日志 API 按统一规范打印日志,确保单台节点并发不乱,性能高2 系统维护日志应用借助日志API输出的日志文件,用于系统维护3 数据上报日志应用借助日志API输出的日志文件,用于数据上报4 日志 AGENT 在单台节点上

5、,处理并上报结果到队列1.对数据上报日志进行汇总处理,并形成结果2.对系统维护日志践行检查预处理,并形成结果5 日志收集队列Kafuka,用来汇总分散的日志名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 9 页 -6 日志分析服务器从队列获取单节点日志结果,形成最终日志结果,输出到日志仓库7 日志仓库按制定格式存放日志,并建立索引8 模块间调用门户呈现模块健康状态,供管理参考9 集中日志呈现门户集中检索日志,供定位分析问题2.4.门户 UI 参考2.4.1.集中日志呈现门户输入日志文件名,或者模块名,日期范围,给出所有日志列表。2.4.2.模块间调用门户用来描述系统间调用健康状态

6、,同样也可以用来表达掉级的2.4.2.1.查询指定服务间调用情况2.4.2.2.查看调用者依赖的被调使用情况名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 9 页 -2.4.2.3.查看按返回码和服务节点分布的情况名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 9 页 -2.4.2.4.系统调用关系图3.建设范围编号内容备注1 一期搞定日志 API,解决系统维护日志的输出问题名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 9 页 -4.系统设计日志库功能设计要点1.日志通用组件满足的需求。1.C+和 PHP统一日志目录和格式规范。2.依据 IP/服务名

7、称/上下文编号,聚合和追溯日志。3.记录服务接口,请求返回数据,正确性,响应时间等信息。4.记录调用方,请求返回数据,正确性,响应时间等信息。2.日志库的未来架构图。1.规划设计图3.日志库概要设计。1.日志级别1.所有级别的日志输出到同一个日志文件中;2.DEBUG(开发人员调试日志)/INFO(业务流程日志)/WARN(警告信息日志)/ERROR(系统错误日志);名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 9 页 -3.ERROR 级别日志,属于严重错误,需要开发人员及时处理,反映系统服务质量和稳定性的重要指标;2.定义通用返回码3.接口调用方日志记录1.log_clie

8、nt_req(客户端请求接口数据)2.log_client_rsp(客户端请求后返回数据)4.接口服务方日志记录1.log_server_req(服务端接收请求数据)2.log_server_rsp(服务端返回请求数据)4.开发阶段分解和本期实现内容。1.日志基础组件库开发(C+PHP统一调用)(一期,本期实现)2.日 志 分 析 上 报 和 聚 合(统 一 查 询 多 台 服 务 器 日 志,区 分IP/hostname)(二期)3.日志分析统计运行质量(接口调用次数,正确率,响应时间等)(三期)日志库目录结构设计自动读取 etc 目录下的所有 xml 配置文件,xml 文件以业务系统模块划

9、分,新增的 xml 文件,在重启服务后,可以自动生成写日志文件。xml 配置文件起到,服务日志先注册后使用。日志文件采用,日期自动更换回滚的写入方式。名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 9 页 -接口通用返回码返回码类型返回码编码返回码说明成功0 调用成功请求方错误1xxx 请求方错误1001 请求参数字段缺失1002 请求参数字段类型错误1003 请求参数字段为空1004 请求接口未找到1005 请求接口报文格式解析错误1006 请求接口版本号错误1007 请求接口报文头字段错误11xx 业务处理错误码返回方错误2xxx 返回方错误2001 请求接口超时2002 请求接口无响应21xx 业务处理错误码日志基础库开发方式:C+和 log4cplus 开发,PHP扩展库,生成C+和 PHP的 so 库文件。名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 9 页 -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁