ElasticStack:使用FileBeat、Logstash、Elasticsearch、Kibana收集清洗存储查看分析数据
借用ElasticStack的一张图,很好的阐述了LEK的在数据处理中的位置
一、环境:
版本均未5.2.0
https://www.elastic.co/cn/downloads/past-releases
1、filebeat:
https://www.elastic.co/cn/downloads/past-releases/filebeat-5-2-0
2、logstash
https://www.elastic.co/cn/downloads/past-releases/logstash-5-2-0
3、elasticsearch:
https://www.elastic.co/cn/downloads/past-releases/elasticsearch-5-2-0
4、kibana:
https://www.elastic.co/cn/downloads/past-releases/kibana-5-2-0
二、日志准备
使用python脚本定时生成模拟日志
generator_log.py
# -*- encoding:utf-8 -*-import time
from chinesename import ChineseNamecn = ChineseName()while True:now = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())message = "{} {}\n".format(now, cn.getName())print(message)with open("demo.log", "a", encoding="utf-8") as f:f.write(message)# 每3秒生成一条日志 time.sleep(3)
日志示例(日期 姓名):
2019-06-13 18:01:31 容休
三、filebeat
1、配置
修改配置文件filebeat.yml
可以选择直接将数据传入Elasticsearch,也可以传入Logstash处理
filebeat.prospectors:
- input_type: logpaths:
# 配置需要收集的文件地址- /var/log/*.log #-------------------------- Elasticsearch output ------------------------------
# output.elasticsearch:# hosts: ["localhost:9200"]#----------------------------- Logstash output --------------------------------
output.logstash:hosts: ["localhost:5044"]
2、启动:
./filebeat -e -c filebeat.yml -d "publish"
参考:开始使用Filebeat
四、logstash
1、匹配说明
(1)内置匹配
%{SYNTAX:SEMANTIC}
(2)ruby正则
(?<name>pattern)
关于Ruby的正则:
Ruby 正则表达式: https://www.runoob.com/ruby/ruby-regular-expressions.html
Ruby 正则匹配测试: https://rubular.com/
2、配置
新建一个文件夹存放自定义匹配模式
$ mkdir ./patterns
$ cat ./patterns/datetime.re
DATETIME \d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}
es-pipeline.conf
input {beats {port => "5044"}
}
filter {grok {patterns_dir => ["./patterns"]match => { "message" => "%{DATETIME:logdate} (?<text>(.*))"}remove_field => "message"}date {match => ["logdate", "yyyy-MM-dd HH:mm:ss"]}
}
output {stdout { codec => rubydebug }elasticsearch {hosts => [ "localhost:9200" ]}
}
3、启动logstash
# 解析配置文件并报告任何错误
$ ./bin/logstash -f es-pipeline.conf --config.test_and_exit# 启用自动配置加载
$ ./bin/logstash -f es-pipeline.conf --config.reload.automatic
五、kibana中查询结果
1、启动
$ elasticsearch
$ kibana
2、查询
GET /logstash-2019.06.13/_search
{"sort": [{"@timestamp": {"order": "desc"}}]
}# 查询结果
{"_index": "logstash-2019.06.13","_type": "log","_id": "AWtQTwv8vaBpxF8s4wUp","_score": null,"_source": {"@timestamp": "2019-06-13T10:08:02.000Z","offset": 197738,"logdate": "2019-06-13 18:08:02","@version": "1","beat": {"hostname": "bogon","name": "bogon","version": "5.2.0"},"input_type": "log","host": "bogon","source": "/Users/qmp/Desktop/log/demo.log","text": "伯镟","type": "log","tags": ["beats_input_codec_plain_applied"]},"sort": [1560420482000]
}
图形化查看日志数量曲线图
参考
使用Logstash filter grok过滤日志文件
Logstash使用grok进行日志过滤
Logstash介绍
ElasticStack:使用FileBeat、Logstash、Elasticsearch、Kibana收集清洗存储查看分析数据相关推荐
- 使用Log-Pilot + logstash+Elasticsearch + Kibana 收集 kubernetes 日志
开发者在面对 Kubernetes 分布式集群下的日志需求时,常常会感到头疼,既有容器自身特性的原因,也有现有日志采集工具的桎梏,主要包括: 容器本身特性: 采集目标多:容器本身的特性导致采集目标多, ...
- 【转】Filebeat+Kafka+Logstash+ElasticSearch+Kibana 日志采集方案
前言 Elastic Stack 提供 Beats 和 Logstash 套件来采集任何来源.任何格式的数据.其实Beats 和 Logstash的功能差不多,都能够与 Elasticsearch 产 ...
- ELK学习3_使用redis+logstash+elasticsearch+kibana快速搭建日志平台
日志的分析和监控在系统开发中占非常重要的地位,系统越复杂,日志的分析和监控就越重要,常见的需求有: 根据关键字查询日志详情 监控系统的运行状况 统计分析,比如接口的调用次数.执行时间.成功率等 异常数 ...
- Logstash+Elasticsearch+kibana搭建日志平台文档(xjh20160527重庆公司亲测可用)
Logstash+Elasticsearch+kibana搭建日志平台文档 v1.0_xjh 20160527 http://wenku.baidu.com/link?url=_HaXh4neqWm ...
- 安装logstash,elasticsearch,kibana三件套
原文地址:http://www.cnblogs.com/yjf512/p/4194012.html logstash,elasticsearch,kibana三件套 elk是指logstash,ela ...
- 【Hadoop Summit Tokyo 2016】中型组织的数据基础设施架构:收集、存储和分析的技巧...
本讲义出自 Egor Pakhomov在Hadoop Summit Tokyo 2016上的演讲,主要分享了数据收集.存储和分析的技巧,介绍了为什么SQL如此的重要以及如何在Hadoop中使用SQL, ...
- 客端日志的收集、存储和分析
客端日志的收集.存储和分析(一) 文章目录 客端日志的收集.存储和分析(一) 前言 一.如何做到海量日志的快速收集 1.架构分析 2. Nginx能做什么 3. Nginx落地的文件我们怎么处理 二. ...
- Filebeat+Kafka+Logstash+Elasticsearch+Kibana 构建日志分析系统
文章目录 一.前言 二.背景信息 三.操作流程 四.准备工作 1.Docker 环境 2.Docker Compose 环境 3.版本准备 4.环境初始化 5.服务安装 6.服务设置 五.配置 Fil ...
- 基于ELK打造强大的日志收集分析系统(springboot2+logback+logstash+elasticsearch+kibana)
前言 上一代的日志分析系统springboot+log4j+flume+kafka仿佛还是昨天,现在已经流行起了新一代的springboot2+logback+logstash+elasticsear ...
最新文章
- 邮箱自动转发攻击邮件服务器
- 海天 oracle,Oracle执行计划详解
- Java开发者必须知道的内存泄漏问题
- mapxtreme开发资料全集
- python基础第三章选择结构答案-Python days03-选择结构【if】
- cisco 防火墙模拟器_【方案分享】如何解决cisco设备无法进入系统问题?
- SSM整合(相关jar包需求)
- Map.Entry的使用(转载)
- 转自他人——django实例教程
- visio 2013破解
- 开源点云数据处理 开源_大数据开源安全
- mac 修改idea 占用内容_mac之idea卡顿修改内存设置
- cloudera安装
- 关于computer vision的会议及vision guys-机器学习与视觉大牛族谱深度挖掘
- centos 6.7 GRUB配置
- android家庭理财系统毕业设计报告,毕业设计(论文)-基于Android的家庭理财通系统设计.doc...
- Java finally 的用法,看这一篇就够了
- elasticsearch 基础 —— _mget取回多个文档及_bulk批量操作
- 最新软件库PHP程序源码+支持CDKey卡密充值
- 【Python】Word文档重复字检测程序
热门文章
- 自主性: 一个概念的哲学考察
- AVB之镜像的签名及验证签名详解
- java.lang.RuntimeException: java.lang.NoSuchMethodException: com.xxx.analy
- Android中的PendingIntent 原理
- JavaWeb:HTML
- BUCTOJ邀请赛20180814-D: String
- 电脑微信QQ正常登录,浏览器无法访问网站
- 数字企业-数字社会-数字中国,统一一套方法论
- iOS 修改系统返回键
- 切图工具:输出512*512切片大小的切片