其他分享
首页 > 其他分享> > 系统日志管理

系统日志管理

作者:互联网

系统日志服务介绍

1.sysklogd 系统日志服务

syslogd: system  application 记录应用日志

klogd: linux  kernel  记录内核日志

事件记录格式:

日期时间  主机  进程 : 事件内容

C/S架构:通过TCP或UDP协议的服务完成日志传送,可以实现将不同主机的日志进行集中管理

 

2.rsyslog 系统日志服务

提供高性能,出色的安全性和模块化设计,可以接收来自各种来源的输入并将其转换,输出到不同的目的地

rsyslog特性:

3.ELK:

由Elasticsearch, Logstash, Kibana三个软件组成

 

日志优先级

 

 

rsyslog配置文件

 

/etc/rsyslog.conf 配置文件组成部分:vim  /etc/rsyslog.conf

 

日志文件的格式:

日期时间  主机  进程 : 事件内容

相关命令:tail  /var/log/messages

 

 

 

实际操作,将ssh服务的日志单独设置

1.查看ssh服务的日志位置:tail -f /var/log/secure

2.修改ssh配置文件:vim /etc/ssh/sshd_config

修改内容:

32 #SyslogFacility AUTHPRIV

33 SyslogFacility LOCAL6

local 0-7(可修改的范围为0-7)

3.修改rsyslog.conf文件:vim /etc/rsyslog.conf

修改内容:
添加自己的文件位置
 local6.*                                   /var/log/ssh.log

4.修改配置文件后需重启该服务:

systemctl  restart  rsyslog

systemctl  restart  ssh

 

 

 

开启日志的远程传输功能

1.修改rsyslog.conf文件:vim /etc/rsyslog.conf

修改内容:

打开514端口

19 #$ModLoad imtcp
20 #$InputTCPServerRun 514

将“#”号删除即可

2.修改配置文件后需重启该服务:systemctl  restart  rsyslog.service

3.查看514端口是否打开:ss -ntap |grep 514

4.设置发送到主机

@主机IP地址(UDP协议传输)

@@主机地址(TCP协议传输)

5.重启服务:

systemctl restart rsyslog.service

6.关闭防火墙

systemctl stop firewalld.service

7.测试

 

 

 

 

 

 

 

日志文件

 

示例:

失败登录信息:

 

每一个用户最近一次的登录信息:

 

 

日志管理工具 journalctl

 1、查看所有日志(默认情况下 ,只保存本次启动的日志)

journalctl

2、查看内核日志(不显示应用日志)

journalctl -k

3、查看系统本次启动的日志

journalctl -b

journalctl -b -0

4、查看上一次启动的日志(需更改设置)

journalctl -b -1

5、查看指定时间的日志

journalctl --since="2017-10-30 18:10:30"

journalctl --since "20 min ago"

journalctl --since yesterday

journalctl --since "2017-01-10" --until "2017-01-11 03:00"

journalctl --since 09:00 --until "1 hour ago"

6、显示尾部的最新10行日志

journalctl -n

7、显示尾部指定行数的日志

journalctl -n 20

8、实时滚动显示最新日志

journalctl -f

9、查看指定服务的日志

journalctl /usr/lib/systemd/systemd

10、查看指定进程的日志

journalctl _PID=1

11、查看某个路径的脚本的日志

journalctl /usr/bin/bash

12、查看指定用户的日志

journalctl _UID=33 --since today

13、查看某个 Unit 的日志

journalctl -u nginx.service

journalctl -u nginx.service --since today

14、实时滚动显示某个 Unit 的最新日志

journalctl -u nginx.service -f

15、合并显示多个 Unit 的日志

journalctl -u nginx.service -u php-fpm.service --since today

16、以 JSON 格式(单行)输出

journalctl -b -u nginx.service -o json

17、以 JSON 格式(多行)输出,可读性更好

journalctl -b -u nginx.serviceqq -o json-pretty

18、显示日志占据的硬盘空间

journalctl --disk-usage

19、指定日志文件占据的最大空间

journalctl --vacuum-size=1G

20、指定日志文件保存多久

journalctl --vacuum-time=1years

21、日志默认分页输出,--no-pager 改为正常的标准输出

journalctl -b -u nginx.service --no-pager

 

标签:log,管理,--,journalctl,rsyslog,var,日志,系统日志
来源: https://www.cnblogs.com/xhx1991874414/p/15987833.html