日志管理

一、日志基础

日志服务功能是内核提供的
rsyslog是用户管理日志的工具
安装软件

sudo yum -y install rsyslog-5.8.10-6.el6.x86_64
启动服务

/etc/init.d/rsyslog start //rhel5/6
systemctl start rsyslog //rhel7
查看日志:两个位置

1) /var/log
2)软件本身指定的目录
常用日志

(以下都位于/var/log)

message    //系统日志
maillog    //邮件日志
cron     //计划任务
xferlog     //vsftpd日志,下载日志
httpd     apache日志
secure     安全日志 ssh ftp telent pop3 pam等
lastlog     //记录每一个账户最后一次登陆的时间,使用lastlog 命令查看日志,(安全相关)
wtmp    //查看的是一个月所有账户的登陆情况,使用last命令查看日志 因为>wtmp的日志轮转是一月一次,且只轮转一次,关于轮转,后文会讲到
utmp     //查看当前登陆账户,用w who 命令查看日志,两个命令看到的结果略有不同
btmp      // 查看错误登陆尝试,使用lastb命令查看日志
samba      //samba 共享日志
yum.log      //yum程序相关的日志,记录安装和卸载
dmesg      //开机是核心检查过程中所产生的信息
boot.log      //系统启动过程中日志记录存放
libvirt      // kvm虚拟化的日志
sa      //(是一个目录,记录一个月的cpu的使用率,cpu负载,磁盘I/O)用sar命令来查看, -f 参数后跟某天的文件名
tail -f 动态查看日志
也可以用cat 、vim 等来查看日志。
更加详细的可以我的另外一篇 日志服务

二 、自定义日志

vim /etc/rsyslog.conf

*.*         /var/log/mylog
kern.err      /var/log/kernel.log
*.info;mail.none   /var/log/big.log
mail.info      /var/log/mail.log
cron.info;cron.!err   /var/log/newcron
/etc/rsyslog.conf中都是以下的模式来配置的

日志对象.日志级别   日志文件

查看都有哪些日志对象和日志级别
man 5 rsyslog.conf  (自己翻译的,可能有些地方不一定准确)
日志对像(也叫日志设备)

The facility is one of the following keywords: auth(认证messsage), authpriv(privileges)认证权限、安全权限, cron计划任务, daemon后台守护进程, kern内核, lpr打印机, mail, mark, news新闻服务器, security (same as auth)安全, syslog(系统日志), user(用户), uucp(unix to unix cp) and local0 through local7(用户自定义日志用的).
日志级别

The priority(优先级) is one of the following keywords, in ascending order: debug, info, notice, warning, warn (same as warning), err, error (same as err), crit, alert, emerg, panic (same as emerg). The keywords error, warn and panic are deprecated and should not be used anymore. The priority defines the severity of the message.
优先级从低到高,级别低的包含级别高的,级别高的不包含级别低的。
level syslogd 遇到何种情况(正常、错误)才会记录日志
LOG_EMERG 紧急,致命,服务无法继续运行,如配置文件丢失
LOG_ALERT 报警,需要立即处理,如磁盘空使用95%
LOG_CRIT 致命行为
LOG_ERR 错误行为
LOG_WARNING 警告信息
LOG_NOTICE 普通
LOG_INFO 标准信息
LOG_DEBUG 调试信息,排错所需,一般不建议使用
日志文件

日志存放的位置
/var/log/    一般的日志都存放在这里
还有一些是服务类的,这些都是服务定义的日志位置,比如/etc/ssh/sshd_conf 文件是ssh的配置文件,他就指定了ssh日志的存放位置。
自定义日志

local0-local7的使用
定义ssh日志为例
1.修改ssh的主配置文件/etc/ssh/sshd_config
SyslogFacility local5 //设置ssh的日志定义由local5设备来记录
2.修改rsyslog的主配置文件/etc/rsyrlog.conf
local5.info   /var/log/ssh
3.重启日志服务,重新加载服务配置文件。
自定义日志就完成了,新产生的日志就会到你指定的位置
logger小工具:用于shell脚本
使用命令行写日志到指定的设备及级别
 >logger "run......."
>logger -p emerg "run......."
 >logger -p authpriv.info "run......."

三、日志轮转

日志轮转也叫日志切割,日志管理的重中之重
日志轮转的配置文件是/etc/logrotate.conf
全局配置

 `vim /etc/logrotate.conf`
see "man logrotate" for details
rotate log files weekly
weekly     #轮转周期
 keep 4 weeks worth of backlogs
rotate 4     #轮转次数
create new (empty) log files after rotating old ones
create    #创建新的文件
 use date as a suffix of the rotated file
dateext     #后缀 ,以日期为后缀
uncomment this if you want your log files compressed
compress
RPM packages drop log rotation information into this directory
include /etc/logrotate.d     全局变量
no packages own wtmp and btmp -- we'll rotate them here
/var/log/wtmp {
monthly     #轮转周期
create 0664 root utmp 
minsize 1M
rotate 1
}
/var/log/btmp {
missingok         #丢失也不报错
monthly
create 0600 root utmp
rotate 1
}
system-specific logs may be also be configured here.
服务类日志轮转

服务类日志轮转的配置文件在/etc/logrotate.d/下
以apache日志轮转为例
/etc/logrotate.d/httpd
/var/log/httpd/*log {
   missingok
   notifempty    //空文件不轮转       
   sharedscripts //指下边的不管有多少的文件被轮转,只执行一次scripts
   delaycompress    //压缩相关的
   postrotate    //开始
/bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true    //重新加载配置文件,把产生的信息扔了。
endscript    // 结束
}
还可以加上
prerotate
endscript
轮转前
轮转验证

logrotate -f /etc/logrotate.conf 强制轮转,所有的都被轮转了
强制轮转:
logrotate -s /var/lib/logrotate/logrotate.status /etc/logrotate.conf
-s 指定最后的日志轮转记录文件位/var/lib/logrotate/logrotate.status
#### 日志轮转小提示
日志轮转中重启服务的重要性: 
日志轮转配置文件中重启服务的脚本 是为了把新的日志内容写入到新的日志文件里
因为旧的日志文件被轮转只是改了个名字,INODE并没有变,但是日志程序是按日志文件的inode号识别文件的,所以需要重启日志以改变日志文件为新的文件

四 、日志使用案例

1: 统计登录失败top 5

grep 'Fail' /var/log/secure |awk '{print $11}' |sort |uniq -c|sort -k1 -n -r |head -5
7 172.16.130.14
6 172.16.130.70
5 172.16.130.56
3 172.16.130.80
2 172.16.130.76

2: 统计登录成功

grep 'Accepted' /var/log/secure |awk '{print $(NF-3)}' |sort |uniq -c
4 111.201.131.215
1 116.243.0.213
1 123.120.14.32
3 123.120.38.233
2 221.222.199.175
1 221.222.202.102

3: 查看网卡是否已被驱动

grep -i eth /var/log/dmesg
[ 0.809104] r8169 Gigabit Ethernet driver 2.3LK-NAPI loaded
[ 0.814193] r8169 0000:02:00.0 eth0: RTL8168g/8111g at 0xffffc9000183e000, 40:8d:5c:9b:3c:17, XID 0c000800 IRQ 25
[ 0.814195] r8169 0000:02:00.0 eth0: jumbo features [frames: 9200 bytes, tx checksumming: ko]
[ 1.724991] bnx2 0000:01:00.0 eth0: Broadcom NetXtreme II BCM5709 1000Base-T (C0
) PCI Express found at mem d6000000, IRQ 32,1.725693] bnx2 0000:01:00.1 eth1: Broadcom NetXtreme II BCM5709 1000Base-T (C0
) PCI Express found at mem d8000000, IRQ 33,1.726387] bnx2 0000:02:00.0 eth2: Broadcom NetXtreme II BCM5709 1000Base-T (C0
) PCI Express found at mem da000000, IRQ 35, 1.727432] bnx2 0000:02:00.1 eth3: Broadcom NetXtreme II BCM5709 10

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,560评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,104评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,297评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,869评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,275评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,563评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,833评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,543评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,245评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,512评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,011评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,359评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,006评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,062评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,825评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,590评论 2 273
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,501评论 2 268

推荐阅读更多精彩内容

  • 日志管理2 1、日志服务的配置文件 [loring ~]# vim /etc/rsyslog.conf ...
    崔千易阅读 519评论 0 0
  • 日志管理Rsyslog [TOC] 背景 有一个4台机器的分布式服务,不多不少,上每台机器上查看日志比较麻烦,用F...
    ferret阅读 30,828评论 0 6
  • 第一节 日志管理简介 1.日志服务 在CentOS6.x中日志服务已经由rsyslogd取代了原先的syslogd...
    littlexjing阅读 1,339评论 0 4
  • 日志介绍rsyslog日志管理journalctlMySQL管理日志 一、日志介绍 (一)日志的基本概念 日志:将...
    哈喽别样阅读 454评论 0 0
  • 1、rsyslog介绍 术语,参见man loggerfacility:设施,从功能或程序上对日志进行归类auth...
    张大志的博客阅读 330评论 0 0