赞
踩
日志就是一个大数据库
clickhouse kafka filebeat grafana
filebeat是通过docker部署的,把要收集的日志目录持到容器中,filebeat自动读取文件并送到kafka中去.日志格式为json.filebeat按行读取
通过docker-compose部署filebeat 文件如下
# filebeat的docker-compose文件 version: '3' services: myFileBeat: image: elastic/filebeat:8.3.3 restart: always container_name: filebeat01 hostname: filebeat01 user: root environment: - TZ=Asia/Shanghai volumes: - $PWD/data_lib:/var/lib/filebeat:rw #存放日志文件读取偏移量 - $PWD/data_data:/usr/share/filebeat/data:rw #存放日志文件读取偏移量 - $PWD/data_logs:/usr/share/filebeat/logs:rw #存放filebeat本身的日志 - $PWD/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro #filebeat配置文件 - $PWD/crts:/crts:ro #连接kafaka使用的证书 - /opt/appName/logs:/logs/appName:ro #要收集的日志地址
filebeat的配置文件如下
filebeat.inputs:
- type: log
id: myAppLog
enabled: true
encoding: utf-8
paths:
- /logs/*/*.log #可以监控一整个目录及子目录
fields:
tag: 'myNewApp' #自定义tag 这个tag会随消息传递filebeat.config.modules:
path: ${path.config}/modules.d/*.yml
reload.enabled: falsesetup.template.settings:
index.number_of_shards: 2output.kafka:
# 连接到kafka的配置 这里通过证书进行客户端认证
hosts: [ "kafka01.example.top:9092" ]
topic: all_log
partition.round_robin:
reachable_only: true
ssl.enabled: true
ssl.key: "/crts/filebeat.key"
ssl.certificate: "/crts/filebeat.crt"
ssl.certificate
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。