Page 495 - 《软件学报》2024年第4期
P. 495

吴圣垚 等: HiLog: OpenHarmony  的高性能日志系统                                             2073


                  5   总结与讨论

                    本文主要工作是为开源操作系统            OpenHarmony  设计并实现了    HiLog  日志系统. HiLog  负责存储并管理包括
                 内核日志、系统日志以及三方日志等各种类型的日志信息, 为系统开发者和应用开发者提供日志读写、压缩、存
                 储等功能. 目前, HiLog   已在包括   HarmonyOS  在内的多个   OpenHarmony  发行版上进行了稳定的运行, 为系统开发
                 者、应用开发者和数据分析师提供了重要的日志数据. 同时, 作为开源项目, HiLog                      日志系统已受到国内外开发者
                 的广泛关注, 相关代码已合入         OpenHarmony  主线. 经过本文的理论和实验分析, HiLog       的优势如下.
                    (1) HiLog  拥有很高的日志吞吐量和稳定性, 通过高效的            IPC  模型和缓冲区结构设计提高日志读写效率. 在日
                 志写入阶段, HiLog   具备极高的日志吞吐量; 在日志持久化阶段, HiLog              具备远低于     Log  的丢包率. 满足了性能
                 需求.
                    (2) HiLog  创新性地加入了流量控制功能, 可以有效地平衡写日志资源的占用并降低                      CPU  资源消耗. 同时将
                 写日志资源从一种公共资源转化为了每个程序的私有资源, 鼓励开发者规范程序的写日志速率, 促进操作系统生
                 态和谐. 满足了资源分配需求.
                    (3) HiLog  提供轻量化的数据安全能力, 未使用公开标识标记的参数都会被掩码隐藏, 降低系统敏感数据或用
                 户的隐私信息的泄露风险. 并且此功能对系统资源消耗极小, 不会影响写日志速率. 一定程度上满足了数据安全
                 需求.
                    (4) HiLog  考虑了面向资源受限设备的兼容性, 通过良好的模块化设计可以在轻量设备上分离用户态缓冲区
                 及其管理模块, 降低系统资源占用. 同时           HiLog  提供日志持久化压缩功能, 可以有效节约设备的存储空间, 空间节
                 约效率可达    96.5%. 满足了设备兼容性需求.
                    同时, 也反映出     HiLog  的一些问题与改进空间.
                    (1) 目前业界对于日志系统的数据安全的研究较少, HiLog               的轻量化数据安全能力是对于日志数据安全问题
                 的初步探索, 虽然可以一定程度上遮蔽敏感数据信息, 但是仍需要开发者和审核人员投入精力对日志参数进行修
                 改和验证, 具备一定的人工成本. 后续希望能够引入一些自动化的判断机制, 例如采用机器学习的手段对日志参数
                 的上下文进行分析, 进而自动化地判断该参数是否属于隐私信息, 减少人工审核成本, 提高数据安全能力的易
                 用性.
                    (2) OpenHarmony  作为分布式操作系统, 原生支持分布式能力. 分布式能力涉及多台设备的协同运作, 即日志
                 信息会在多台设备上产生, 然而目前           HiLog  尚不具备从多设备统一收集日志并进行管理的能力. 这种缺陷对于分
                 布式能力的开发和调试造成了一定的不便, 具备优化的空间. 构造分布式日志系统有两个重要的问题需要解决, 其
                 一是设备间高速、高稳定的连接问题, 其二是多设备的时钟同步问题. 对于第                         1  个问题, 可以等待   OpenHarmony
                 的软总线   (SoftBus) 技术成熟后, 利用   SoftBus 作为稳定高速的日志传输的通道; 对于第           2  个问题, 可以考虑基于精
                 确时间协议    (precision time protocol, PTP) 实现无线局域网内的多设备时钟同步. 使     HiLog  成为更具  OpenHarmony
                 特色的分布式的日志系统.

                 References:
                  [1]  Beckett D. Combined log system. Computer Networks and ISDN Systems, 1995, 27(6): 1089–1096. [doi: 10.1016/0169-7552(95)00013-
                     W]
                  [2]  He PJ, Zhu JM, He SL, Li J, Lyu MR. Towards automated log parsing for large-scale log data analysis. IEEE Trans. on Dependable and
                     Secure Computing, 2018, 15(6): 931–944. [doi: 10.1109/TDSC.2017.2762673]
                  [3]  Landauer  M,  Skopik  F,  Wurzenberger  M,  Rauber  A.  System  log  clustering  approaches  for  cyber  security  applications:  A  survey.
                     Computers & Security, 2020, 92: 101739. [doi: 10.1016/j.cose.2020.101739]
                  [4]  Dumais S, Jeffries R, Russell DM, Tang D, Teevan J. Understanding user behavior through log data and analysis. In: Olson JS, Kellogg
                     WA, eds. Ways of Knowing in HCI. New York: Springer, 2014. 349–372. [doi: 10.1007/978-1-4939-0378-8_14]
                  [5]  Zhao X, Rodrigues K, Luo Y, Stumm M, Yuan D, Zhou YY. Log20: Fully automated optimal placement of log printing statements under
                     specified  overhead  threshold.  In:  Proc.  of  the  26th  Symp.  on  Operating  Systems  Principles.  Shanghai:  Association  for  Computing
   490   491   492   493   494   495   496   497   498   499   500