logstash实现日志文件同步到elasticsearch深入详解

简介: 之前博文介绍过了mysql/oracle与ES之间的同步机制。而logstash最初始的日志同步功能还没有介绍。本文就logstash同步日志到ES做下详细解读。

引言:

之前博文介绍过了mysql/oracle与ES之间的同步机制。而logstash最初始的日志同步功能还没有介绍。本文就logstash同步日志到ES做下详细解读。

1、目的:

将本地磁盘存储的日志文件同步(全量同步、实时增量同步)到ES中。

image.png

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记录

image.png


作者:铭毅天下
转载请标明出处,原文地址:http://blog.csdn.net/laoyang360/article/details/51842744

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
存储 运维 监控
金融场景 PB 级大规模日志平台:中信银行信用卡中心从 Elasticsearch 到 Apache Doris 的先进实践
中信银行信用卡中心每日新增日志数据 140 亿条(80TB),全量归档日志量超 40PB,早期基于 Elasticsearch 构建的日志云平台,面临存储成本高、实时写入性能差、文本检索慢以及日志分析能力不足等问题。因此使用 Apache Doris 替换 Elasticsearch,实现资源投入降低 50%、查询速度提升 2~4 倍,同时显著提高了运维效率。
1154 3
金融场景 PB 级大规模日志平台:中信银行信用卡中心从 Elasticsearch 到 Apache Doris 的先进实践
|
存储 弹性计算 运维
海量日志接入 Elasticsearch Serverless 应用降本70%以上
本文将探讨在日志场景下,使用阿里云Elasticsearch Serverless相较于基于ECS自建Elasticsearch集群的成本与性能优势,展示如何通过Serverless架构实现高达 70%以上的成本节约。
952 0
|
存储 数据采集 监控
阿里云DTS踩坑经验分享系列|SLS同步至ClickHouse集群
作为强大的日志服务引擎,SLS 积累了用户海量的数据。为了实现数据的自由流通,DTS 开发了以 SLS 为源的数据同步插件。目前,该插件已经支持将数据从 SLS 同步到 ClickHouse。通过这条高效的同步链路,客户不仅能够利用 SLS 卓越的数据采集和处理能力,还能够充分发挥 ClickHouse 在数据分析和查询性能方面的优势,帮助企业显著提高数据查询速度,同时有效降低存储成本,从而在数据驱动决策和资源优化配置上取得更大成效。
901 9
ELK 圣经:Elasticsearch、Logstash、Kibana 从入门到精通
ELK是一套强大的日志管理和分析工具,广泛应用于日志监控、故障排查、业务分析等场景。本文档将详细介绍ELK的各个组件及其配置方法,帮助读者从零开始掌握ELK的使用。
|
存储 SQL 监控
|
自然语言处理 监控 数据可视化
|
运维 监控 安全
|
安全 Java Linux
Linux安装Elasticsearch详细教程
Linux安装Elasticsearch详细教程
2255 64
|
JSON 安全 数据可视化
Elasticsearch(es)在Windows系统上的安装与部署(含Kibana)
Kibana 是 Elastic Stack(原 ELK Stack)中的核心数据可视化工具,主要与 Elasticsearch 配合使用,提供强大的数据探索、分析和展示功能。elasticsearch安装在windows上一般是zip文件,解压到对应目录。文件,elasticsearch8.x以上版本是自动开启安全认证的。kibana安装在windows上一般是zip文件,解压到对应目录。elasticsearch的默认端口是9200,访问。默认用户是elastic,密码需要重置。
6291 0
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
675 5