基于logstash实现日志文件同步elasticsearch
作者:志不坚者智不达 发布时间:2023-09-01 14:45:57
引言:
之前博文介绍过了mysql/oracle与ES之间的同步机制。而logstash最初始的日志同步功能还没有介绍。本文就logstash同步日志到ES做下详细解读。
1、目的:
将本地磁盘存储的日志文件同步(全量同步、实时增量同步)到ES中。
2、源文件:
[root@5b9dbaaa148a test_log]# ll
-rwxrwxrwx 1 root root 170 Jul 5 08:02 logmachine.sh
-rw-r--r-- 1 root root 66 Jul 5 08:25 MProbe01.log
-rw-r--r-- 1 root root 74 Jul 5 08:28 MProbe02.log
3、增量实时同步脚本:
[root@5b9dbaaa148a test_log]# cat logmachine.sh
#!/bin/bash
icnt=0;
while (true)
do
echo "[debug][20160703-15:00]"$icnt >> MProbe01.log
echo "[ERROR][20160704-17:00]"$icnt >> MProbe02.log
icnt=$((icnt+1));
done
4、logstash配置文件:
[root@5b9dbaaa148a logstash_jdbc_test]# cat log_test.conf
input {
file {
path=> [ "/usr/local/logstash/bin/test_log/MProbe01.log",
"/usr/local/logstash/bin/test_log/MProbe02.log" ]
#codec=>multiline {
# pattern => "^\s"
# what=>"previous"
#}
type=>"probe_log" #类型名称
# tags=>["XX.XX.XX.XX"]
}
}
###过滤
#filter{
# grok {
# match => ["message","mailmonitor"]
# add_tag => [mailmonitor]
# }
# grok {
# match => [ "message", "smsmonitor" ]
# add_tag => [smsmonitor]
# }
# ....
#}
###output to es
output {
elasticsearch {
hosts => "10.8.5.101:9200"
index => "mprobe_index" #索引名称
#template_name => "mprobelog"
#document_id => "%{id}"
}
stdout { codec => json_lines }
}
5、同步测试:
[root@5b9dbaaa148a bin]# ./logstash -f ./logstash_jdbc_test/log_test.conf
Settings: Default pipeline workers: 24
Pipeline main started
{"message":"[DEbug][20160305-15:35]testing02","@version":"1","@timestamp":"2016-07-05T07:26:08.043Z","path":"/usr/local/logstash/bin/test_log/MProbe01.log","host":"5b9dbaaa148a"
6、结果验证
(1)日志记录:
[root@5b9dbaaa148a test_log]# tail -f MProbe01.log
[DEbug][20160305-15:35]testing02
[DEbug][20160305-15:35]testing01
^C
[root@5b9dbaaa148a test_log]# tail -f MProbe02.log
[DEbug][20160305-15:35]testing02_001
[DEbug][20160305-15:35]testing02_003
(2)ES记录
来源:https://www.cnblogs.com/linwenbin/p/13432882.html
猜你喜欢
- 引言昨天把系分的项目又加了一点逻辑判断,比如已经下单的菜品不能减少,不能重复下单,应该先下单再支付等…弄完购物车的逻辑之后,发现一直没有管备
- 这里从八个pandas的数据处理生命周期,整理汇总出pandas框架在整个数据处理过程中都是如何处理数据的。也就是从pandas的数据表对象
- 本文实例讲述了Python计算斗牛游戏概率算法。分享给大家供大家参考,具体如下:过年回家,都会约上亲朋好友聚聚会,会上经常会打麻将,斗地主,
- 数据库:30万条,有ID列但无主键,在要搜索的“分类”字段上建有非聚集索引过程T-SQL: /* 用户自定义函数:执行时间在115
- acronym从字义上理解,是取首字母的缩写词,abbr是缩写,在应用过程中,两个标签看起来差不多,但个人觉得还是有区别的。看下面的例子:&
- 和数据库打交道要频繁地用到SQL语句,除非你是全部用控件绑定的方式,但采用控件绑定的方式存在着灵活性差、效率低、功能弱等等缺点。因此,大多数
- 最近经常需要出一些临时性的报表,于是就用python 的smtplib 和email 两模块写了个小程序,当数据处理完后通过邮箱把报表文件从
- 1. 安装vim:# apt-get install -y vim-gnome2. 安装ctags,ctags用于支持tagli
- 如下所示:import logging # 创建一个logger logger = logging.getLogger('mylog
- 转自微信公众号:机器学习社区,经作者授权转载时间序列分析是数据科学中一个非常重要的领域,它主要包含统计分析、检测变化点、异常检测和预测未来趋
- Go-ethereum 解析ethersjs中产生的签名信息在签名验证的过程中,我们判断签名正确的前提是,签名解析后的公钥,和发起这次动作的
- 目录0. 前言1. 测试环境及关键代码解释1.1 简单测试环境1.2 关键代码2. 完整代码3. 运行效果4. 报错效果4.1 远程连接不上
- SocketServer创建一个网络服务框架。它定义了类来处理TCP,UDP, UNIX streams 和UNIX datagrams上的
- UDP 套接字是可以使用 connect 系统调用连接到指定的地址的。从此以后,这个套接字只会接收来自这个地址的数据,而且可以使用 send
- window.onload=function(){ pd(11);} function pd(number) { if(number>
- ASP 本身不支持动态包含文件,现在的动态包含是通过 FSO 把被包含的文件合并到主文件里再运行。以下也有把形如 <!--#
- 本文为大家分享了python2.7和NLTK安装教程,具体内容如下系统:Windows 7 Ultimate 64-bitsPython 2
- 下载驱动器http://chromedriver.storage.googleapis.com/index.html下载与谷歌版本相同或最近
- Microsoft建立了一种既灵活又强大的安全管理机制,它能够对用户访问SQL Server服务器系统和数据库的安全进行全面地管理。按照本文
- 在腾讯的微信公众平台开发者文档,网页授权获取用户基本信息这一节中写道”在微信公众号请求用户网页授权之前,开发者需要先到公众平台网站的我的服务