做照明出口的网站,深圳 网站制作,团队介绍网站建设,网站建设如何做报价【Hilog】鸿蒙系统日志源码分析
Hilog采用C/S结构#xff0c;Hilogd作为服务端提供日志功能。Client端通过API调用#xff08;最终通过socket通讯#xff09;与HiLogd打交道。简易Block图如下。 这里主要分析一下。Hilog的读、写、压缩落盘#xff0c;以及higlog与android…【Hilog】鸿蒙系统日志源码分析
Hilog采用C/S结构Hilogd作为服务端提供日志功能。Client端通过API调用最终通过socket通讯与HiLogd打交道。简易Block图如下。 这里主要分析一下。Hilog的读、写、压缩落盘以及higlog与android log在这几个流程上的差异点。
HiLog日志写入流程
HiLog写入流程与Android Log主要差异点
Buffer满时清理流程higlog无android的黑白名单、 清理log输入最多的uid的流程。hilog清理同域旧的5%的log。支持域流量控制单域固定时间端间隔内只允许写入固定的流量。超出流量后Drop msg。
HiLog日志读取流程
HiLog读取时基本上没有什么差异。
HiLog日志压缩落盘
HiLog日志落盘与Android差异
支持压缩落盘先将buffer压缩压缩后的buffer落盘到文件中。HiLogD直接落盘android log需要将log日志读取到client端Client端进行落盘。HiLog直接在服务端进行落盘。