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

四.查看日志

相关推荐
颇有几分姿色3 分钟前
深入理解 Linux 内存管理:free 命令详解
linux·运维·服务器
晨欣3 分钟前
Elasticsearch和Lucene之间是什么关系?(ChatGPT回答)
elasticsearch·chatgpt·lucene
光芒再现dev20 分钟前
已解决,部署GPTSoVITS报错‘AsyncRequest‘ object has no attribute ‘_json_response_data‘
运维·python·gpt·语言模型·自然语言处理
AndyFrank33 分钟前
mac crontab 不能使用问题简记
linux·运维·macos
成都古河云1 小时前
智慧场馆:安全、节能与智能化管理的未来
大数据·运维·人工智能·安全·智慧城市
算法与编程之美1 小时前
文件的写入与读取
linux·运维·服务器
Amelio_Ming2 小时前
Permissions 0755 for ‘/etc/ssh/ssh_host_rsa_key‘ are too open.问题解决
linux·运维·ssh
心灵彼岸-诗和远方2 小时前
Devops业务价值流:软件研发最佳实践
运维·产品经理·devops
JuiceFS3 小时前
好未来:多云环境下基于 JuiceFS 建设低运维模型仓库
运维·云原生
Ven%3 小时前
centos查看硬盘资源使用情况命令大全
linux·运维·centos