背景:
由于项目采用微服务架构,业务日志文件数量较多,我做了个简单的日志监控服务,先在此分享下日志采集的简单步骤,没有任何花里胡哨 ~(ps:一切数据到了 kafka就非常好解决了!)
一、Flume安装
Flume的安装使用可以说非常简单,直接进官网:http://flume.apache.org/
最新是1.9.0版本,我们选择1.8.0版本下载。
然后在Linux下解压:
配置用户环境变量:(如果有root权限可以配置在/etc/profile
)
vim ~/.bashrc
在末尾添加路径:
FLUME_HOME=/home/dev/flume/flume-1.8.0
PATH=$PATH:$FLUME_HOME/bin
source使其生效:
source ~/.bashrc
二、确定日志采集策略
需要根据我们的日志类型来确定最佳策略。
我们项目的业务日志是通过Logback生成,日志形式如下所示:
根据日期规则进行滚动:
当天的日志文件名为stdout.log
,过了凌晨12点即把stdout.log
改名为stdout.log.昨天日期.log
,然后日志重新输出在新的stdout.log
。所以我们只需要采集名为stdout.log
的文件即可。
一般Flume采集日志source有两种方式: