
Filebeat+kafka+logstash 多路径日志收集
发布日期:2022-04-22 13:46:58
浏览次数:6
分类:博客文章
本文共 2426 字,大约阅读时间需要 8 分钟。
一、准备日志环境
1.配置nginx日志为json格式
vim /usr/local/nginx/nginx.conf
log_format json '{"@timestamp":"$time_iso8601",' '"@version":"1",' '"client":"$remote_addr",' '"url":"$uri",' '"status":"$status",' '"domian":"$host",' '"host":"$server_addr",' '"size":"$body_bytes_sent",' '"responsetime":"$request_time",' '"referer":"$http_referer",' '"ua":"$http_user_agent"' '}'; #自定日志输出样式access_log logs/access.log json; #引用指定的日志
2.其他示例日志路径
/usr/local/nginx/logs/{access.log,error.log}/home/tomcat/logs/cata...out/var/log/message
二、修改filebeat配置文件
vim /etc/filebeat/filebeat.yml
filebeat.inputs:- type: log enabled: true paths: - /usr/local/nginx/logs/*.log fields: log_topics: nginx type: nginx ip: 192.168.137.125 fields_under_root: true - type: log enabled: true paths: - /home/tomcat/logs/catalina.out fields: log_topics: tomcat type: tomcat ip: 192.168.137.125 fields_under_root: true- type: log enabled: true paths: - /var/log/messages fields: log_topics: message type: message ip: 192.168.137.125 fields_under_root: truefilebeat.config.modules: path: ${path.config}/modules.d/*.yml reload.enabled: falsesetup.template.settings: index.number_of_shards: 1setup.kibana:output.kafka: hosts: ["192.168.137.25:9092","192.168.137.125:9092","192.168.137.126:9092"] enabled: true topic: '%{[fields][log_topics]}'processors: - add_host_metadata: ~ - add_cloud_metadata: ~ - add_docker_metadata: ~
注意点:其他一些filebeat的高级配置:
fields: #向输出的每一条日志添加额外的信息,比如“level:debug”,方便后续对日志进行分组统计。默认情况下,会在输出信息的fields子目录下以指定的新增fields建立子目录,例如fields.level。 log_topics: nginx type: nginx ip: 192.168.137.125 #根据该值可区分不同主机 fields_under_root: true #将fields下级的一些字段提升到上一级;如果该选项设置为true,则新增fields成为顶级目录,而不是将其放在fields目录下。自定义的field会覆盖filebeat默认的field。 ... ... topic: '%{[fields][log_topics]}' #根据上面的自定信息,创建相应的topic
三、配置logstash和kibana可视化
1.配置logstash
vim /etc/logstash/conf.d/test.yml
input { kafka { bootstrap_servers => ["192.168.137.125:9092,192.168.137.25:9092,192.168.137.126:9092"] topics => ["tomcat","nginx","message"] #filebeat里创建的topic consumer_threads => 1 codec => json }}output { elasticsearch { hosts => ["192.168.137.25:9200"] index => "filebeat-log-%{+YYYY.MM.dd}" }}
2.配置kibana可视化
3.根据字段检索日志
转载地址:https://www.cnblogs.com/yhy223/p/14465022.html 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2023年09月08日 12时05分55秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
wireshark tcp抓包
2019-03-07
TCP的Ack和Seq和len的关系
2019-03-07
C#跨线程调用异常处理方法
2019-03-07
扁平数据转树形结构探究
2019-03-07
一个在关系型数据库中进行海量数据检索的调优案例
2019-03-07
java多线程编程之volatile和CAS
2019-03-07
JAVA中金额数据的处理
2019-03-07
规则引擎drools封装
2019-03-07
电商财务结算系统重构实践
2019-03-07
大数据量业务报表实现思考
2019-03-07
跨进程调用实现之消息组件RabbitMq实例
2019-03-07
小谈mysql存储引擎优化
2019-03-07
java疫苗之殇?关于java类加载器的一些思考
2019-03-07
Java正则表达式简单介绍
2019-03-07
数据库连接池原理
2019-03-07
预防缓存穿透方案设计
2019-03-07
浅谈软件工程中的代码评审
2019-03-07
日常工作中数据特征引发的慢查询
2019-03-07
Vue前端测试实践
2019-03-07
财务系统库存重构现有量方案追忆
2019-03-07