第1章 走近日志 001
1.1 什么是日志 002
1.1.1 日志的概念 002
1.1.2 日志生态系统 002
1.1.3 日志的作用 003
1.2 日志数据 004
1.2.1 日志环境与日志类型 005
1.2.2 日志语法 006
1.2.3 日志管理规范 009
1.2.4 日志使用误区 009
1.3 云日志 010
1.4 日志使用场景 011
1.4.1 运维监控 011
1.4.2 安全审计 012
1.4.3 业务分析 013
1.4.4 物联网 015
1.5 日志未来展望 016
第2章 日志管理 017
2.1 概述 018
2.2 日志管理相关法律 018
2.3 日志管理要求 019
2.4 日志管理中存在的问题 019
2.5 日志管理的好处 020
2.6 日志归档 024
第3章 日志管理与分析系统 025
3.1 日志管理与分析系统的基本功能 026
3.1.1 日志采集 026
3.1.2 数据清洗 027
3.1.3 日志存储 027
3.1.4 日志告警 027
3.1.5 日志分析 028
3.1.6 日志可视化 028
3.1.7 日志智能分析 028
3.1.8 用户与权限管理 029
3.1.9 系统管理 029
3.2 日志管理与分析系统技术选型 030
3.2.1 日志分析的基本工具 030
3.2.2 开源+自研 032
3.2.3 商业产品 032
3.3 小结 035
第4章 日志采集 036
4.1 日志采集方式 037
4.1.1 Agent采集 037
4.1.2 Syslog 038
4.1.3 抓包 039
4.1.4 接口采集 039
4.1.5 业务埋点采集 040
4.1.6 Docker日志采集 040
4.2 日志采集常见问题 041
4.2.1 事件合并 042
4.2.2 高并发日志采集 043
4.2.3 深层次目录采集 043
4.2.4 大量小文件日志采集 044
4.2.5 其他日志采集问题 044
4.3 小结 045
第5章 字段解析 046
5.1 字段的概念 047
5.2 通用字段 048
5.2.1 时间戳 048
5.2.2 日志来源 048
5.2.3 执行结果 049
5.2.4 日志优先级 049
5.3 字段抽取 049
5.3.1 日志语法 050
5.3.2 字段抽取方法 050
5.3.3 常用日志类型的字段抽取 052
5.4 schema on write与schema on read 054
5.5 字段解析常见问题 055
5.5.1 字段存在别名 055
5.5.2 多个时间戳 055
5.5.3 特殊字符 055
5.5.4 封装成标准日志 056
5.5.5 类型转换 056
5.5.6 敏感信息替换 056
5.5.7 HEX转换 057
5.6 小结 057
第6章 日志存储 058
6.1 概述 059
6.2 日志存储形式 059
6.2.1 普通文本 059
6.2.2 二进制文本 060
6.2.3 压缩文本 063
6.2.4 加密文本 064
6.3 日志存储方式 064
6.3.1 数据库存储 064
6.3.2 分布式存储 067
6.3.3 文件检索系统存储 069
6.3.4 云存储 071
6.4 日志物理存储 073
6.5 日志留存策略 073
6.5.1 空间策略维度 074
6.5.2 时间策略维度 074
6.5.3 起始位移策略维度 074
6.6 日志搜索引擎 074
6.6.1 日志搜索概述 075
6.6.2 实时搜索引擎 075
6.7 小结 077
第7章 日志分析 078
7.1 概述 079
7.2 日志分析现状 079
7.2.1 对日志的必要性认识不足 079
7.2.2 缺乏日志分析专业人才 079
7.2.3 日志体量大且分散,问题定位难 080
7.2.4 数据外泄 080
7.2.5 忽略日志本身的价值 080
7.3 日志分析解决方案 080
7.3.1 数据集中管理 080
7.3.2 日志分析维度 081
7.4 常用分析方法 082
7.4.1 基线 082
7.4.2 聚类 083
7.4.3 阈值 083
7.4.4 异常检测 083
7.4.5 机器学习 084
7.5 日志分析案例 085
7.5.1 Linux系统日志分析案例 085
7.5.2 运营分析案例 086
7.5.3 交易监控案例 088
7.5.4 VPN异常用户行为监控案例 088
7.5.5 高效运维案例 089
7.6 SPL简介 090
7.7 小结 092
第8章 日志告警 093
8.1 概述 094
8.2 监控设置 094
8.3 告警监控分类 098
8.3.1 命中数统计类型的告警监控 098
8.3.2 字段统计类型的告警监控 099
8.3.3 连续统计类型的告警监控 100
8.3.4 基线对比类型的告警监控 100
8.3.5 自定义统计类型的告警监控 101
8.3.6 智能告警 102
8.4 告警方式 102
8.4.1 告警发送方式 102
8.4.2 告警抑制和恢复 105
8.4.3 告警的插件化管理 105
8.5 小结 105
第9章 日志可视化 106
9.1 概述 107
9.2 可视化分析 107
9.2.1 初识可视化 107
9.2.2 图表与数据 109
9.3 图表详解 110
9.3.1 序列类图表 110
9.3.2 维度类图表 116
9.3.3 关系类图表 119
9.3.4 复合类图表 123
9.3.5 地图类图表 125
9.3.6 其他图表 127
9.4 日志可视化案例 134
9.4.1 MySQL性能日志可视化 134
9.4.2 金融业务日志可视化 138
9.5 小结 140
第10章 日志平台兼容性与扩展性 142
10.1 RESTful API 143
10.1.1 RESTful API概述 143
10.1.2 常见日志管理API类型 144
10.1.3 API设计案例 145
10.2 日志App 147
10.2.1 日志App 概述 147
10.2.2 日志App的作用和特点 147
10.2.3 常见日志App类型 148
10.2.4 典型日志App案例 151
10.2.5 日志App的发展 155
第11章 智能运维 157
11.1 概述 158
11.2 异常检测 159
11.2.1 单指标异常检测 160
11.2.2 多指标异常检测 166
11.3 根因分析 167
11.3.1 相关性分析 168
11.3.2 事件关联关系挖掘 170
11.4 日志分析 170
11.4.1 日志预处理 171
11.4.2 日志模式识别 172
11.4.3 日志异常检测 172
11.5 告警收敛 173
11.6 趋势预测 175
11.7 智能运维面临的挑战 176
第12章 SIEM 177
12.1 概述 178
12.2 信息安全建设中存在的问题 179
12.3 日志分析在SIEM中的作用 179
12.4 日志分析与安全设备分析的异同 180
12.5 SIEM功能架构 181
12.6 SIEM适用场景 182
12.7 用户行为分析 191
12.8 小结 198
参考文献 199
展开