选项:
--detail<报告详细程度>: 指定日志报告的详细程度;
--logfile<日志文件>: 仅处理指定的日志文件;
--service<服务名>: 仅处理指定服务的日志文件;
--print: 打印结果到标准输出;
--mailto<邮件地址>: 将结果发送到指定邮箱;
--range<日期范围>: 指定处理日志的日期范围;
--archives: 处理归档日志文件;
--debug<调试等级>: 调试模式;
--save<文件名>: 将结果保存到指定文件中,而不显示或者发送到指定邮箱;
--logdir<目录>: 指定查找日志文件的目录,而不使用默认的日志目录;
--hostname<主机名>: 指定在日志报告中使用的主机名,不使用系统默认的主机名;
--numeric: 在报告中显示ip地址而不是主机名;
--help: 显示指令的帮助信息。
实例:
logwatch --detail Low --mailto email@address --service http --range today #将今天的http LOW日志发送到邮箱
logwatch --detail High --service all --range all --print 打印所有服务日志
logwatch --service sshd --detail high --print 打印SSHD错误日志
定制自己要监控的日志
首先创建logwatch日志文件组:
vim /etc/logwatch/conf/logfiles/test.conf
LogFile = /usr/local/nginx/logs/nginx.log
然后创建logwatch服务配置文件:
vim /etc/logwatch/conf/services/test.conf
Title = test title #日志文件的标题
LogFile = test #日志文件组的名字,即上面创建的日志文件组test.conf
创建logwatch服务过滤器脚本:
vim /etc/logwatch/scripts/services/test
cat /etc/logwatch/scripts/services/test
#!/bin/sh
grep -i ERROR | wc -l
#此处实验只是简单的写了脚本,工作中可根据需要编写
给脚本文件可执行权限:
chmod +x /etc/logwatch/scripts/services/test
测试输出效果:
logwatch --service test --print #test为服务名
################### Logwatch 7.3.6 (05/19/07) ####################
Processing Initiated: Mon May 22 14:09:22 2017
Date Range Processed: yesterday
( 2017-May-21 )
Period is day.
Detail Level of Output: 10
Type of Output: unformatted
Logfiles for Host: zabbix
##################################################################
--------------------- test title Begin ------------------------
1022
---------------------- test title End -------------------------
###################### Logwatch End #########################
Linux 系统中使用 logwatch 监控日志文件