基于程序层次树的日志打印位置决策方法
作者:
作者单位:

作者简介:

贾统(1993-),男,博士,主要研究领域为分布式系统,智能运维.
张齐勋(1979-),男,讲师,CCF学生会员,主要研究领域为嵌入式软件与系统,大数据系统与分析.
李影(1975-),女,博士,教授,博士生导师,CCF高级会员,主要研究领域为分布式计算,可信计算.
吴中海(1968-),男,博士,教授,博士生导师,CCF杰出会员,主要研究领域为大数据技术,系统安全,嵌入式软件.

通讯作者:

李影,E-mail:li.ying@pku.edu.cn

基金项目:

国家重点研发计划(2017YFB1002002)


Automatic Logging Decision Through Program Layered Structure Tree and Transfer Learning
Author:
Affiliation:

Fund Project:

National Key Research and Development Program of China (2017YFB1002002)

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
    摘要:

    基于日志分析的故障诊断是智能运维的关键技术之一,然而该技术存在关键瓶颈——日志的质量.当今,由于程序开发人员缺乏日志打印规范和指导等问题,日志质量欠佳,因此实现日志的自动化打印决策以提升日志质量的需求日益迫切.关注自动化日志打印决策问题,与现有研究工作不同,提出一种基于程序层次树和逆序组合的特征向量生成方法,能够适用于不同编程语言编写的软件系统.此外,还利用迁移学习算法实现跨组件和跨软件系统的日志打印位置决策.在3个典型的应用场景——版本升级、组件开发和系统开发及5个流行的开源软件系统——OpenStack,Tensorflow,SaltCloud,Hadoop和Angel上的实验表明:所述方法在Java系统中的日志打印决策准确率约为95%,在Python系统中的日志打印决策准确率约为70%.

    Abstract:

    With the development of AIOps, log-based failure diagnosis has become more and more important. However, this technique has a key bottleneck-the quality of logs. Today, the lack of log printing specifications and guidance for programmers is a key factor of poor log quality, thus the need of automatic logging decision so as to improve log quality is becoming urgent. This study focuses on automatic logging decision. Specifically, the aim is to propose a general logging point decision approach. Different from existing works, an automatic feature vector generation method is proposed based on program layered structure tree and reverse composition, which can be applied to software systems written in different programming languages. In addition, this study leverages transfer learning algorithms to achieve cross-component and cross-project logging point decision. The approach is evaluated on five popular open source software systems, namely, OpenStack, Tensorflow, SaltCloud, Hadoop, and Angel, in three typical application scenarios including software upgrading, new component development, and new project development. Results show that the proposed approach performs about 95% accuracy in Java projects and 70% accuracy in Python projects on average.

    参考文献
    相似文献
    引证文献
引用本文

贾统,李影,张齐勋,吴中海.基于程序层次树的日志打印位置决策方法.软件学报,2021,32(9):2713-2728

复制
分享
文章指标
  • 点击次数:
  • 下载次数:
历史
  • 收稿日期:2019-05-22
  • 最后修改日期:2019-09-24
  • 录用日期:
  • 在线发布日期: 2021-09-15
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号