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等日志)

四.查看日志

相关推荐
Elastic 中国社区官方博客1 小时前
Elasticsearch:智能搜索的 MCP
大数据·人工智能·elasticsearch·搜索引擎·全文检索
yzx9910132 小时前
生活在数字世界:一份人人都能看懂的网络安全生存指南
运维·开发语言·网络·人工智能·自动化
橙*^O^*安3 小时前
Go 语言基础:变量与常量
运维·开发语言·后端·golang·kubernetes
阿拉斯加大闸蟹4 小时前
基于RDMA 通信的可负载均衡高性能服务架构
运维·架构·负载均衡
不是吧这都有重名5 小时前
为什么ubuntu大文件拷贝会先快后慢?
linux·运维·ubuntu
sunshine-sm5 小时前
CentOS Steam 9安装 Redis
linux·运维·服务器·redis·centos
伍哥的传说6 小时前
Lodash-es 完整开发指南:ES模块化JavaScript工具库实战教程
大数据·javascript·elasticsearch·lodash-es·javascript工具库·es模块·按需导入
棒棒的唐6 小时前
armbian平台ubuntu环境下telnet安装及启动,给pantherX2增加一个应急通道
linux·运维·armbian·telnetd
纳切威6 小时前
CentOS 7部署Zabbix5.0
linux·运维·centos·zabbix
sunshine-sm6 小时前
CentOS Steam 9安装 MySQL 8
linux·运维·服务器·数据库·mysql·centos·centos stream