您的位置:首页 > 其它

日志服务与日志分析工具

2016-08-08 00:28 309 查看

系统日志生成服务

功能:

日志服务是根据日志配置文件进行提供相应的功能服务,对于各种服务的信息等级的设定将不同服务的不懂等级信息记录在不同的文件里面。

日志管理服务分类:

1.rsyslogd 普通日志管理服务

采集各种服务产生的信息根据日志服务配置文件内容将信息进行分类保存。

2.klogd 内核信息日志文件服务

专门记录内核信息

3.logrotate 日志文件轮替服务

解决日志文件内容过多消耗内存的日志文件替换服务





普通日志管理:

常见服务日志分类:

/var/log/cron          ##crontab 例行性任务调度产生信息
/var/log/maillog        ##邮件往来信息
/var/log/secure        ##涉及帐号密码的登陆信息
/var/log/faillog  /var/log/wtmp  ##记录系统登陆者信息
/var/log/yum.log     ##yum使用的信息
在log 目录里面一般还有各种的网络服务日志文件,例如http samba 等等。




常见日志信息等级:

1           info            ##基本信息说明
2           notice          ##需要注意的内容
3           warning         ##警示信息
4           err             ##错误
5           crit            ##严重错误
6           alert           ##警告
7      emerg(panic)        ##严重错误警告


开启日志管理服务:

查看状态:进程(ps)查看方式或者服务查看方式(systemctl)均可以



可以看到日志管理服务处于运行的状态,如果没有开启,我们可以通过

systemctl start rsyslog.service  或  systemctl restart rsyslog.server 启动日志管理服务


配置日志管理服务:

/etc/rsyslog.conf     ##日志服务配置文件






注:在上面的图片中mail的那一行指定目录文件的时候有一个“-”号,表示将信息暂时保存在速度较为快的内存里面,虽然提高了性能,由于存在内存里面容易造成数据丢失。


保存日志书写格式:

服务 + 过滤符号 + 信息等级            保存目录


过滤符:
.   ------> 大于或等于该信息等级
.=  ------> 大于该等级的信息等级
.!  ------> 不等于该等级,除了该等级以外的信息等级
*   ------> 通配所有


例子1:

所有信息保存在messages文件里面除了cron,mail 的信息:

*.*;cron,mail.none          /var/log/messages

不同等级不同服务用;隔开。相同信息的用,隔开。


例子2:

所有日志信息重定向到 /var/log/all.log:




例子3:

将本机的日志信息推送到相应的服务机:


对本机的修改:
*.* (这里为相应的服务信息以及信息等级)      @日志接受方的ip地址


在服务接受方的修改:
开启udp接受的设置(在这里开启udp比tcp有速度,异时的优势)




双方均重启服务,服务接受方关闭防火墙服务。

测试的结果:

服务接受机:





本机:



服务接受机:



系统日志分析:

systemd-journald日志分析进程



在红帽7.0等新一代的系统中使用systemd管理服务。Journald,它捕获系统日志信息,内核日志信息以及来自原始RAM磁盘的信息,早期启动信息以及所有服务写入标准输出流,标准错误流的信息。

Journald日志写入二进制文件,在/run/log/journal中,临时存在,当关机日志消失。

配置文件在 /etc/systemd/journal.conf里面。

它一个不同于rsyslog服务的一个新的日志服务,有日志分析,以及日志清空,节约空间的优势,但是不能代替传统的集中日志服务,如rsyslog服务。它不存在日志同步共享性也不能保存关机前的日志信息。


常用命令:

journalctl          ##日志分析命令

journalctl -n 5     ##查看最近生成的5条日志
journalctl -p err   ##查看系统报错
journalctl --since 时间("2016-07-22 03:00:00") --until ("2016-07-22 03:30:00") ###查看某个时间段生成的日志

journalctl -o verbose   ###查看日志能够使用的条件参数详细信息
journalctl  _UID=       ##进程uid
_PID=       ##进程id
_GID=       ##进程gid
_HOSTNAME=  ##进程所在主机
_SYSTEMD_UNIT=  ##服务名称
_COMM=      ##命令名称


例子:

Journal日志服务存在丢失上一次开机运行信息所以我们创建文件将临时的文件保存,以便下次开机能够看到上一次的信息。

创建保存文件文件夹,并设置相关的权限:



Send the USR1 signal to the systemd-journald or reboot serverX.



通过查看可以知道新创建的文件里面多了一个文件夹。

all
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息