面向大规模开源软件的日志增强技术研究
摘要 | 第9-11页 |
ABSTRACT | 第11-12页 |
第一章 绪论 | 第13-21页 |
1.1 课题研究背景 | 第13-18页 |
1.1.1 课题来源 | 第13页 |
1.1.2 研究背景介绍 | 第13-15页 |
1.1.3 研究现状概述 | 第15-18页 |
1.2 课题研究内容和创新点 | 第18-19页 |
1.3 论文结构 | 第19-21页 |
第二章 相关研究 | 第21-30页 |
2.1 故障检测的主要技术 | 第21-22页 |
2.2 基于日志的故障检测 | 第22-26页 |
2.3 基于日志的故障检测方法分析 | 第26-30页 |
2.3.1 故障诊断方法分类 | 第26-28页 |
2.3.2 应用领域分类 | 第28-29页 |
2.3.3 研究目标分类 | 第29-30页 |
第三章 SmartLog系统框架 | 第30-37页 |
3.1 大规模开源软件日志特征分析 | 第30-33页 |
3.1.1 软件内部环境因素 | 第30-31页 |
3.1.2 开发人员因素 | 第31-32页 |
3.1.3 性能因素 | 第32-33页 |
3.2 SmartLog总体设计 | 第33-34页 |
3.3 关键技术 | 第34-37页 |
3.3.1 日志函数识别 | 第34-35页 |
3.3.2 日志代码段识别 | 第35页 |
3.3.3 日志上下文分析 | 第35页 |
3.3.4 日志增强 | 第35-37页 |
第四章 基于机器学习的日志函数自动识别 | 第37-47页 |
4.1 日志函数形式分析 | 第37-38页 |
4.2 日志函数特征提取 | 第38-41页 |
4.2.1 元数据特征 | 第38-39页 |
4.2.2 函数定义使用特征 | 第39-40页 |
4.2.3 程序分析特征 | 第40-41页 |
4.2.4 特征离散化 | 第41页 |
4.3 特征值征筛选与日志函数识别 | 第41-45页 |
4.3.1 计算特征值 | 第42-44页 |
4.3.2 最优特征子集筛选 | 第44-45页 |
4.3.3 决策树训练与分类 | 第45页 |
4.4 实验评估 | 第45-47页 |
第五章 系统日志识别分析与增强 | 第47-58页 |
5.1 面向日志片段识别的程序分析 | 第47-51页 |
5.1.1 日志情景分析 | 第47-48页 |
5.1.2 日志模型 | 第48-49页 |
5.1.3 日志片段识别 | 第49-50页 |
5.1.4 错误码影响下的日志片段识别 | 第50-51页 |
5.2 基于语义分析的日志上下文等价性判定 | 第51-55页 |
5.2.1 函数返回值对上下文的影响 | 第51-54页 |
5.2.2 函数传入参数对上下文的影响 | 第54-55页 |
5.3 程序易错点统计和缺失日志增强 | 第55-57页 |
5.3.1 启发式阈值计算 | 第55-56页 |
5.3.2 非必须日志点 | 第56页 |
5.3.3 添加日志语句 | 第56-57页 |
5.4 实验评估 | 第57-58页 |
第六章 SmartLog的实现和性能评估 | 第58-64页 |
6.1 SmartLog整体评估 | 第58-59页 |
6.1.1 实验软硬件环境 | 第58页 |
6.1.2 运行结果分析 | 第58-59页 |
6.2 结果有效性评估 | 第59-62页 |
6.2.1 结果可用性分析 | 第59-60页 |
6.2.2 已有工作对比 | 第60-61页 |
6.2.3 日志重建 | 第61-62页 |
6.2.4 故障注入 | 第62页 |
6.3 性能影响分析 | 第62-64页 |
第七章 结束语 | 第64-66页 |
7.1 工作总结 | 第64-65页 |
7.2 研究展望 | 第65-66页 |
致谢 | 第66-68页 |
参考文献 | 第68-73页 |
作者在学期间取得的学术成果 | 第73页 |