【Hilog】鸿蒙系统日志源码分析

【Hilog】鸿蒙系统日志源码分析

  • Hilog采用C/S结构,Hilogd作为服务端提供日志功能。Client端通过API调用(最终通过socket通讯)与HiLogd打交道。简易Block图如下。
  • 这里主要分析一下。Hilog的读、写、压缩落盘,以及higlog与android log在这几个流程上的差异点。

HiLog日志写入流程

HiLog写入流程与Android Log主要差异点:

  1. Buffer满时清理流程,higlog无android的黑白名单、 清理log输入最多的uid的流程。hilog清理同域旧的5%的log。
  2. 支持域流量控制:单域固定时间端间隔内,只允许写入固定的流量。超出流量后,Drop msg。

HiLog日志读取流程

  • HiLog读取时基本上没有什么差异。

HiLog日志压缩落盘

  • HiLog日志落盘与Android差异:
  1. 支持压缩落盘:先将buffer压缩,压缩后的buffer落盘到文件中。
  2. HiLogD直接落盘:android log需要将log日志读取到client端,Client端进行落盘。HiLog直接在服务端进行落盘。
相关推荐
PoppyBu1 小时前
Ubuntu20.04版本上安装最新版本的scrcpy工具
android·ubuntu
执念、坚持1 小时前
Property Service源码分析
android
用户41659673693551 小时前
在 ViewPager2 + Fragment 架构中玩转 Jetpack Compose
android
GoldenPlayer2 小时前
Gradle脚本执行
android
用户74589002079542 小时前
Android进程模型基础
android
we1less2 小时前
[audio] Audio debug
android
Jomurphys2 小时前
AndroidStudio - TOML
android
有位神秘人2 小时前
Android最新动态权限申请工具
android
lxysbly2 小时前
psp模拟器安卓版下载汉化版2026
android
2501_941822753 小时前
面向灰度发布与风险隔离的互联网系统演进策略与多语言工程实践分享方法论记录思考汇总稿件
android·java·人工智能