一 logstash安装 1.1下载包 [root@node1 ~]# cd /usr/local/src/ [root@node1 src]# wget https://artifacts.elastic.co/downloads/logstash/logstash-7.4.2.tar.gz [root@node1 src]# tar -xf logstash-7.4.2.tar.gz [root@node1 src]# mv logstash-7.4.2 /usr/local/logstas…
最近在学习ELK的时候踩了不少的坑,特此写个笔记记录下学习过程. 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因.经常分析日志可以了解服务器的负荷,性能安全性,从而及时采取措施纠正错误. 通常,日志被分散的储存不同的设备上.如果你管理数十上百台服务器,你还在使用依次登录每台机器的传统方法查阅日志.这样是不是感觉很繁琐和效率低下.当务之急我们使用集中化的日志管理,例如:开源的syslog,将所有服务器上的日志收…
0x00 概述 ELK-logstash在搬运日志的时候会出现多行日志,普通的搬运会造成保存到ES中单条单条,很丑,而且不方便读取,logstash-filter-multiline可以解决该问题 github地址:https://github.com/logstash-plugins/logstash-filter-multiline 其他插件的地址:https://github.com/logstash-plugins 官网地址:https://www.elastic.co/cn/produ…
0x00 Logstash概述 官方介绍:Logstash is an open source data collection engine with real-time pipelining capabilities.简单来说logstash就是一根具备实时数据传输能力的管道,负责将数据信息从管道的输入端传输到管道的输出端:与此同时这根管道还可以让你根据自己的需求在中间加上滤网,Logstash提供里很多功能强大的滤网以满足你的各种应用场景. Logstash常用于日志关系系统中做日志采集设备…
1 Kibana的显示配置 https://demo.elastic.co/app/kibana#/dashboard/welcome_dashboard 环境先处理干净 安装nginx和httpd-tools 2 使用压测工具产生日志 [root@node4 ~]# ab -n 100 -c 100 http://192.168.132.134/ This is ApacheBench, Version 2.3 <$Revision: 1430300 $> Copyright 1996 Ad…
一 简介 ElasticSearch是一个基于Luncene的搜索服务器.它提供了一个分布式多用户能力全文搜索引擎,基于RESTful web接口,ElsticSearch使用Java开发的,并作为Apache许可下的开源码发布,是当前流行的企业级搜索引擎,设计用域云计算中,能够达到实时搜索,稳定可靠,快速安装的效果. Elasticsearch 是一个分布式的开源搜索和分析引擎,适用于所有类型的数据,包括文本.数字.地理空间.结构化和非结构化数据. Elasticsearch 在 Apache…
Logstash安装: https://www.elastic.co/downloads/logstash 下载解压: tar –zxvf logstash-5.6.1.tar.gz 在/usr/local/logstash-5.6.1/bin下编辑conf:(因为配置了输出到es和console上,所以必须先启动es.) vi logstash-simple.conf input { stdin { } } output { elasticsearch { hosts => ["loca…
Logstash事件处理管道包括三个阶段:输入→过滤器→输出.输入会生成事件,过滤器会对其进行修改,输出会将它们发送到其他地方.输入和输出支持编解码器,使您可以在数据进入或退出管道时对其进行编码或解码,而不必使用单独的过滤器. 1 输入 您可以使用输入将数据获取到Logstash.一些更常用的输入是: file:从文件系统上的文件读取,非常类似于UNIX命令 tail -0F syslog:在知名端口514上侦听syslog消息并根据RFC3164格式进行解析 redis:使用redis通道和r…
前面已经介绍了Elasticsearch这个工具,并对单机安装做了简单介绍,现在使用三台机器做一个elasticsearch集群 一 环境准备 1.1 机器准备 1.2 同步时间 [root@node* ~]# ntpdate ntp1.aliyun.com Nov :: ntpdate[]: adjust time server 120.25.115.20 offset -0.015719 sec [root@node1 ~]# crontab -l * * * * * /usr/sbin/n…
Logstash是具有实时流水线功能的开源数据收集引擎.Logstash可以动态统一来自不同来源的数据,并将数据规范化为您选择的目标.清除所有数据并使其民主化,以用于各种高级下游分析和可视化用例. 虽然Logstash最初推动了日志收集方面的创新,但其功能远远超出了该用例.任何类型的事件都可以通过各种各样的输入,过滤器和输出插件来丰富和转换,许多本机编解码器进一步简化了提取过程. 一 logstash的数据内容 1.1 日志和指标数据 处理所有类型的日志数据 轻松获取大量Web日志(如Apach…
一 metricbeat仪表盘 1.1 安装metricbeat仪表盘 可以将metricbeat数据在kibana中展示 [root@node4 ~]# cd /usr/local/metricbeat/ [root@node4 metricbeat]# grep -Ev "^$|[#;]" metricbeat.yml metricbeat.config.modules: path: ${path.config}/modules.d/*.yml reload.enabled: fa…
0x00 概述 logstash官方最新文档.假设有几十台服务器,每台服务器要监控系统日志syslog.tomcat日志.nginx日志.mysql日志等等,监控OOM.内存低下进程被kill.nginx错误.mysql异常等等,可想而知,这是多么的耗时耗力.logstash采用的是插件化体系架构,几乎所有具体功能的实现都是采用插件,已安装的插件列表可以通过bin/logstash-plugin list --verbose列出.或者访问https://www.elastic.co/guide/…
前面做了关于ELK组件的各个实验,但是并没有真正的把各个组件结合起来做一个实验,现在使用一个脚本简单的生成日志,模拟生产不断产生日志的效果 一 流程说明 使用脚本产生日志,模拟用户的操作 日志的格式 [INFO] -- :: [cn.success.dashboard.Main] -DAU||使用优惠卷|-- :: 日志的格式时"DAU" + userID + "|" + visit + "|"  +date 通过Filebeat读取日志文件的内…
一 背景需求 Nginx是一个非常优秀的web服务器,往往Nginx服务会作为项目的访问入口,那么,nginx的性能保障就会变得非常重要,如果nginx的运行出现了问题就会对项目有较大的影响,所以,我们需要对nginx的运行有监控措施,实时掌握Nginx的运行情况,那就需要收集Nginx的运行指标和分析Nginx的运行日志了 业务流程 说明 通过beats采集Nginx的指标数据和日志数据 Beats采集到数据后发送到Elasticsearch中 kibana读取数据进行分析 用户通过Kiban…
1 背景介绍 在我们日常生活中,我们经常需要回顾以前发生的一些事情:或者,当出现了一些问题的时候,可以从某些地方去查找原因,寻找发生问题的痕迹.无可避免需要用到文字的.图像的等等不同形式的记录.用计算机的术语表达,就是 LOG,或日志. 日志,对于任何系统来说都是及其重要的组成部分.在计算机系统里面,更是如此.但是由于现在的计算机系统大多比较复杂,很多系统都不是在一个地方,甚至都是跨国界的:即使是在一个地方的系统,也有不同的来源,比如,操作系统,应用服务,业务逻辑等等.他们都在不停产生各种各样的…
首先安装一个kafka集群,但是zookeeper使用单节点,可以让kafka快速跑起来,后续再研究kafka和zokkeeper的集群 1 安装Kafka集群 下面是三个节点都要做 [root@node1 src]# wget http://mirror.rise.ph/apache/kafka/2.4.0/kafka_2.11-2.4.0.tgz [root@node1 src]# tar -xf kafka_2.11-2.4.0.tgz [root@node1 src]# mv kafka…
1 安装一个redis服务 [root@node4 ~]# yum -y install redis 直接启动 [root@node4 ~]# systemctl restart redis [root@node4 ~]# systemctl status redis [root@node4 ~]# redis-cli  -h 127.0.0.1 2 配置filebeat,把数据传给redis [root@node4 ~]# vim /etc/filebeat/filebeat.yml file…
一 简介 Kiana是一款开源的数据分析和可视化平台,它是 Elastic Stack成员之一,设计用于和 Elasticsearch协作.您可以使用 Kiana对 Elasticsearch索引中的数据进行搜索.查看.交互操作.您可以很方便的利用图表.表格及地图对数据进行多元化的分析和呈现 基本内容 Kibana 核心产品搭载了一批经典功能:柱状图.线状图.饼图.旭日图,等等.当然啦,您还可以搜索自己的所有文档. 二 功能介绍 1.时序可视化生成器 时序可视化生成器 (TSVB) 是一个时序数…
一 Metricbeat 简介 1.1 系统级监控,更简洁将 Metricbeat 部署到您的所有 Linux.Windows 和 Mac 主机,并将它连接到 Elasticsearch 就大功告成了:您可以获取系统级的 CPU 使用率.内存.文件系统.磁盘 IO 和网络 IO 统计数据,还可针对系统上的每个进程获得与 top 命令类似的统计数据 1.2 单个二进制文件提供多种模块 Metricbeat 提供多种内部模块,这些模块可从多项服务(诸如 Apache.Jolokia.NGINX.Mo…
前面使用json格式收集了nginx的日志,但是再index的显示是filebeat-*,现在使用自定义的index进行配置 但是再使用filebeat的7.4版本以后,有一个巨坑,就是按照网络的很多配置,最后显示的结果依然是filebeat的默认index 一 自定义index 1.1  配置index [root@node4 src]# vim /etc/filebeat/filebeat.yml 会报一个错误 Jan :: node4 filebeat: Exiting: setup.te…
1.下载安装      Centos6.4      jdk1.8.20以上 elasticsearch::https://www.elastic.co/downloads/elasticsearch wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.tar.gz ll tar -zxf elasticsearch-5.2.2.tar.gz ./bin/elasticsearch -d (-…
Logstash之output配置: 输出到file 配置conf: input{ file{ path => "/usr/local/logstash-5.6.1/bin/spark-test-log.log" type => "sparkfile" start_position => "beginning" } } filter{ grok{ patterns_dir => '/usr/local/logstash-5…
Logstash之filter: json filter: input{ stdin{ } } filter{ json{ source => "message" } } output{ stdout{ codec => json } 输入: {"name": "CSL", "age": 20} 输出: Grok filter: pattern: https://github.com/logstash-plugin…
Logstash之codec: Logstash处理流程: input=>decode=>filter=>encode=>output 分类: Plain编码: input{ stdin{ codec => plain } } output{ stdout{} } json编码: input{ stdin{ } } output{ stdout{ codec => json } } multiline 编码: input{ stdin{ codec => mult…
Logstash之inputs配置: input plugin doc: https://www.elastic.co/guide/en/logstash/current/index.html 插件很多,选两个常用的使用下. 1. stdin input plugin 参数: 建立stdin-sample.conf: input { stdin {} } output { stdout {} } 执行: ./logstash -f stdin-sample.conf 输入即所得 2. file…
Logstash基本语法: 处理输入的input 处理过滤的filter 处理输出的output 区域 数据类型 条件判断 字段引用 区域: Logstash中,是用{}来定义区域 区域内,可以定义插件 一个区域内可以定义多个插件 数据类型: 条件判断: 字段引用:…
0x00 自动重新加载配置 为了可以自动检测配置文件的变动和自动重新加载配置文件,需要在启动的时候使用以下命令: ./bin/lagstash -f configfile.conf --config.reload.automatic 默认检测配置文件的间隔时间是3秒,可以通过以下命令改变 --config.reload.interval <second> 如果已经运行了没有提供自动重启的logstash,可以发送一个挂起命令给logstash重新加载配置文件: kill -1 <pid&…
0x00 概述 我们用Logsatsh写配置文件的时候,如果读取的文件太多,匹配的正则过多,会使配置文件动辄成百上千行代码,可能会造成阅读和修改困难.这时候,我们可以将配置文件的输入.过滤.输出分别放在不同的配置文件里,甚至把输入.过滤.输出再次分离,放在不同的文件里. 这时候,后期再需要增删改查内容的时候,就容易维护了. 0x01 logstash如何读取多个配置文件 我们知道在启动logstash的时候,只要加上-f /you_path_to_config_file就可以加载配置文件了,如果…
0x00 概述 需求:需要利用同一logstash进程采集不同日志,输出到es的不同index,各输入输出隔离: 主要需要解决如下两个问题: 0x01 如何加载多个配置文件 普通启动方式: nohup bin/logstash -f config/logstash.conf & 多配置文件启动方式: nohup bin/logstash -f config/java-conf & 注意:java-conf为目录,将加载该目录下所有配置文件:不要使用config/java-conf/*.co…
一 Filebeat工作原理 Filebeat由两个主要组件组成: prospector和 harvester 1.1 harvester 负责读取单个文件的内容 如果文件在读取时被制除或重命名, Filebeat将继续读取文件. 1.2 prospector prospector负责管理 harvester并找到所有要读取的文件来源 如果输入类型为日志,则查找器将查找路径匹配的所有文件,并为每个文件启动一个 harvester Filebeat目前支持两种 prospector类型:log和…