elk对于集群实例的日志的整合-基于logstash采集日志

说明:基于logstash采集日志

环境:

物理机192.168.31.151

一.启动2个测试实例,每5-10s随机生成一条订单日志

实例一

包位置:/home/logtest/one/log-test-0.0.1-SNAPSHOT.jar

日志位置:/docker/elastic/logstash_ingest_data/logs/log-test-one.log

实例二

包位置:/home/logtest/two/log-test-0.0.1-SNAPSHOT.jar

日志位置:/docker/elastic/logstash_ingest_data/logs/log-test-two.log

二.配置/docker/elastic/logstash.conf

注:

  1. 配置文件中采集的/usr/share/logstash/ingest_data/logs是logstash容器内路径,与宿主机日志路径/docker/elastic/logstash_ingest_data/logs是bind关系
  2. 日志会被采集到es中的log-test-%{+YYYY.MM.dd}索引
  3. logstash采集时会自动给日志加上timestamp hostname等元数据,在kibana展示时就可以通过这些元数据筛选,排序

示例配置:

复制代码
input {
  # 输入插件配置,例如:file, beats, etc.
}

filter {
  # 过滤器插件配置,例如:grok, date, mutate, etc.
}

output {
  # 输出插件配置,例如:elasticsearch, stdout, etc.
}

实际配置:

复制代码
input {
    file {
      path => "/usr/share/logstash/ingest_data/logs/log-test-*.log"
      start_position => "beginning"
  }
}


filter {
}


output {
 elasticsearch {
   index => "log-test-%{+YYYY.MM.dd}"
   hosts => "${ELASTIC_HOSTS}"
   user => "${ELASTIC_USER}"
   password => "${ELASTIC_PASSWORD}"
   cacert => "certs/ca/ca.crt"
 }
 file {
  path => "/opt/mytest-%{+YYYY.MM.dd}.log"
  }
}

重启logstash,日志开始采集。

三.Kibana创建Data View(Index pattern设置为log-test*,用于匹配log-test-2024.06.20.log log-test-2024.06.19等日志)

四.查看日志

相关推荐
SelectDB19 小时前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
Elasticsearch2 天前
3个信号、2个环境变量、0个采集器:使用 Python 和 Elastic 的托管 OTLP 端点实现 OpenTelemetry
elasticsearch
XIAOHEZIcode2 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220703 天前
如何搭建本地yum源(上)
运维
Elasticsearch4 天前
如何通过 Claude Code 来写入 CSV 数据到 Elasticsearch
elasticsearch
大树886 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠6 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
大志哥1236 天前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
霸道流氓气质6 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务