ELK stack是以Elasticsearch、Logstash、Kibana三个开源软件为主的数据处理工具链,是目前开源界最流行的实时数据分析解决方案,成为实时日志处理领域开源界的第一选择。然而,ELK stack并不是实时数据分析的灵丹妙药,使用不恰当,反而会事倍功半。本书对ELK stack的原理进行了解剖,不仅分享了大量实战案例和实现效果,而且分析了部分源代码,使读者不仅知其然还知其所以然。读者可通过本书快速掌握实时日志处理方法,并搭建自己的数据分析系统。本书分为三大部分,共19章。第一部分“Logstash”介绍Logstash的安装与配置、场景示例、性能与测试、扩展方案、源码解析、插件开发等;第二部分“Elasticsearch”介绍Elasticsearch的架构原理、数据接口用例、性能优化、测试和扩展方案、映射与模板的定制、监控方案等;第三部分“Kibana”介绍Kibana 3和Kibana 4的特点对比,并分别讲解了Kibana 3和Kibana 4的配置、案例与源代码解析。
第部分 Logstash
第1章入门示例 3
1.1下载安装 3
1.2HellOWbrld 5
1.3配置语法 7
1.3.1语法 8
1.3.2命令行参数 10
1.4插件安装 1l
1.5长期运行方式 12
第2章插件配置 15
2.1输入插件 15
2.1.1标准输入 16
2.1.2文件输入 17
2.1.3 TCP输入 18
2.1.4 syslog输入 19
2.1.5 collectd输入 21
2.2编解码配置 23
2.2.1 JSON编解码 24
2.2.2多行事件编码 -25
2.2.3网络流编码 26
2.3过滤器配置 _28
2.3.1 date时间处理 28
2.3.2 grok正则捕获 30
2.3.3 GeoIP地址查询 33
2.3.4 JSON编解码 34
2.3.5 key-value切分 35
2.3.6 metrics数值统计 36
2.3.7 mutate数据修改 37
2.3.8随心所欲的Ruby处理 42
2.3.9 split拆分事件 _43
2.3.10 elapsed 43
2.4输出插件 44
2.4.1输出到Elasticsearch 44
2.4.2发送email 49
2.4.3调用系统命令执行 ’50
2.4.4保存成文件 50
2.4.5报警发送到Nagios 51
2.4.6 statsd 52
2.4.7标准输出stdout 54
?2.4.8 TCP发送数据 55
2.4.9输出到HDFS 55
第3章场景示例 57
3.1 Nginx访问日志 57
3.1.1 grok处理方式 57
3.1.2 split处理方式 -58
3.1.3 json格式 -6l
3.1.4 syslog方式发送 62
3.2 Nginx错误日志 62
3.3 Postfix日志 63
3.4 0ssec日志 64
3.4.1配置所有Ossec agent采用
syslog输出 -64
3.4.2配置Logstash 65
3.4.3推荐Kibana仪表盘 65
3.5Windows系统日志 67
3.5.1采集端配置 67
3.5.2接收解析端配置 68
3.6 Java日志 69
3.6.1 Log4J配置 70
3.6.2 Logstash配置 70
3.6.3异常堆栈测试验证 70
3.6.4 JSON Event layout 71
3.7 MySQL慢查询日志 -73
3.8 Docker日志 74
3.8.1记录到主机磁盘 75
3.8.2通过logspout收集 75
第4章性能与监控 77
4.1性能测试 77
4.1.1配置示例 77
4.1.2使用方式 78
4.1.3额外的话 79
4.2监控方案 79
4.2.1 logstash-input-heartbeat心跳
检测方式 80
4.2.2 JMX启动参数方式 8l
第5章扩展方案 83
5.1通过Redis队列扩展 84
5.1.1读取Redis数据 84
5.1.2采用list类型扩展Logstash''''85
5.1.3输出到Redis 86
5.2通过Kafka队列扩展 87
5.2.1 Logstashl.4版本插件的安装 88
5.2.2 Input配置 88
5.2.3 0utput配置 90
5.3 logstash-forwarder'''. 91
5.3.1 Indexer端配置 91
5.3.2 Shipper端配置 92
5.3.3 AIX上的logstash-forwarder-
java -‘93
5.4 Rsyslog''''' 95
5.4.1常用模块介绍 95
5.4.2与Logstash合作 96
5.4.3 Mmextemal模块 ’97
5.5 NxlOg ‘99
5.6 Heka 101
5.7 Fluentd 102
5.7.1配置示例 103
5.7.2 Fluentd插件 -104
?5.8 MeSSage::PaSSing 104
第6章Logstash源码解析 --107
6.2.1 Input中的 Codec ll0
6.2.2 0utput中的 Worker 111
第7章插件开发 113
7.1插件格式 113
7.2插件的关键方法 114
7.3插件打包 115
7.4 Filter插件开发示例 116
7.4.1 mmdb数据库的生成方法 116
7.4.2 LogStash::Filters::Mmdb实现117
7.4.3 logstash-filter-mmdb打包 l l 9
7.5 Input插件开发示例 119
7.5.1 FileWatch模块原理 120
7.5.2 LogStash::Inputs::Utmp实现 l21
7.6 0utput插件开发示例 124
第二部分 Elasticsearch
第8章架构原理 129
8.1准实时索引的实现 129
8.1.1动态更新的Lucene索引 129
8.1.2利用磁盘缓存实现的
准实时检索 l30
8.1.3 translog提供的磁盘同步
控制 131
8.2 segmentmerge的影响 132
8.2.1归并线程配置 133
8.2.2归并策略 134
8.2.3 0ptimize接口 134
8.3 routing和replica的读写过程 134
8.3.1路由计算 134
8.3.2副本致性 135
8.4 shard的allocate控制 136
8.4.1 reroute接口 138
8.4.2冷热数据的读写分离 138
8.5 自动发现的配置 139
8.5.1 multicast方式 140
8.5.2 unicast方式 l40
第9章数据接口用例 141
9.1增删改查操作 141
9.2搜索请求 143
9.2.1全文搜索 143
9.2.2聚合请求 145
9.3脚本 147
9.3.1动态提交 147
9.3.2固定文件 l47
9.3.3其他语言 148
9.4重建索引 148
9.4.1 Perl客户端 149
9.4.2用Logstash重建索引 l49
9.5 Spark Streaming交互 150
第10章性能优化 l53
10.1 bulk提交 153
10.1.1bulk大小 154
第11章测试和扩展方案167
第12章映射与模版的订制181
第13章监控方案189
第14章Elasticsearch在运维监控领域的其他应用215
第三部分Kibana
第15章Kibana的产品对比231
第16章Kibana3 235
第17章Kibana3 源码解析297
第18章Kibana4 319
第19章Kibana4源码解析363
《PHP典型模块与项目实战大全》以实战开发为原则,以PHP典型模块和项目开发为主线,通过12个高质量的PHP典型模块和6个PHP大型应用
”餐巾纸系列“全面来袭!全系列3本24开本双色彩图精致诠释,传授视觉化思考秘笈,让好玩的画图化繁为简、解决一切商业难题!★编
数据库系统原理教程国家精品课程教材 内容简介 由王珊、陈红编著的《数据库系统原理教程(国家精品课程教材)》系统、完整地讲述了当前数据库技术的基本原理和应用实践。...
全书一共分为9章,首先从宏观上介绍了CSS3技术的最新发展现状、新特性,以及现有的主流浏览器对这些新特性的支持情况;然后详细讲
五所权威德国设计学院:柏林艺术大学(UdkBerlin)杜塞尔多夫高等专业学院(FHD)莱比锡书籍设计及平面设计学院(HGBLeipzig)奥
网络公关 本书特色 在中国公共关系走过二十年的历程后,我非常高兴地看到首套公共关系译丛的出版。此套丛书汲取了国际上先进的公共关系理论和案例研究,堪为经典公共关系...
書裝幀,就如同女媧造人最後吹出的那口氣,賦予一本書新的生命力,更召喚書中內在的靈魂,成為書籍最初的表情,為作品自身說話。
《全面预算管理》内容简介:全面预算管理作为管理会计的重要内容之一,能够帮助企业作出明智的决策,进而创造价值,并保证企业持续
《以房养老:理念与模式》内容简介:以房养老理论与建立在其上的反向抵押贷款的研究,前者是一种理念,一种横跨房地产、金融保险、
LABVIEW入门与提该范例教程 内容简介 本书详细介绍了使用LabVIEW进行虚拟仪器开发的方法。为了帮助读者快速轻松地进入LabVIEW编程世界,本书的编写...
《中文版3ds Max 2013实例教程(全彩超值版)》内容简介:这是一本全面介绍中文版3ds Max 2013各项功能的书。《中文版3ds Max 2013
《超越LOGO设计:国际顶级平面设计师的成功法则》收录了国际顶级平面设计师DavidAirey的超人气博客中最受欢迎的设计案例,其中的
《异乡人:我在北京这十年》内容简介:本书是青年作家子禾的首部非虚构作品,书写自己在北京十年间生活经验,照见最普遍的你我人生
本书探讨如何提升网站性能,分8章详细介绍性能提升所需的工具、软件、方法,主要内容包括:页面加载速度的基础知识,图片的格式和
《Spring Boot从入门到实战(微课视频版)》内容简介:本书从Spring和Spring MVC的基础知识讲起,让读者无难度地学习Spring Boot ...
郑泽宇,现为才云科技(Caicloud.io)联合创始人、首席大数据科学家。针对分布式TensorFlow上手难、管理难、监控难、上线难等问题
51单片机应用从零开始 内容简介 8051单片机不仅是国内用得*多的单片机之一,同时也是*适合初学者入门学习的一款单片机。一旦用户对它的应用卜手之后,即能开发电...
《巅峰决战》内容简介:本书介绍超级计算机可以算天、算地、算人。我们使用超级计算机给大地做CT,寻找石油。分析人的基因,解读生
《建筑师与设计师视觉笔记》旨在鼓励视觉表达,其理念基于这样一种观点,即视觉修养与文字修养同等重要。为了开拓表达视觉信息的
《婚礼纪实摄影宝典》内容简介:《婚礼纪实摄影宝典》是一本介绍如何拍摄婚礼纪实影像的专业书籍,书中通过图文结合的方式讲解了婚