Linux下的系统日志管理

##1.rsyslog  此服务是用来采集和分类系统日志的,

     它不产生日志,只是起到采集的作用##
##2.日志管理服务rsyslog##

##系统日志默认分类##
  /var/log/messages      ##系统服务及日志,包括服务的信息,报错等等
  /var/log/secure          ##系统登陆日志(系统认证信息日志)
  /var/log/cron            ##系统定时任务日志
  /var/log//maillog     ##系统邮件日志
  /var/log//boot.log  ##系统启动日志   
##日志类型##
vim /etc/rsyslog.conf  ##主配置文件
*.*  什么类型的日志.什么级别的日志  日志处理方式(action)
systemctl restart rsyslog
##日志设备(可以理解为日志类型)##
auth                  ##pam产生的日志
authpriv            ##ssh,ftp等登录信息的验证信息
cron                  ##时间任务相关
kern                  ##内核
lpr                     ##打印
mail                  ##邮件
mark(syslog)–rsyslog    ##服务内部的信息,时间标识
news                ##新闻组
user                 ##用户程序产生的相关信息
uucp                ##unix to unix copy, unix主机之间相关的通讯
local 1~7         ##自定义的日志设备

##日志级别##
debug              ##有调式信息的,日志信息最多
info                  ##一般信息的日志,最常用
notice              ##最具有重要性的普通条件的信息
warning           ##警告级别
err                    ##错误级别,阻止某个功能或者模块不能正常工作的信息
crit                   ##严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert                 ##需要立刻修改的信息
emerg             ##内核崩溃等严重信息
none               ##什么都不记录

##注意:从上到下,级别从低到高,记录的信息越来越少
##详细的可以查看手册: man 3 syslog
##连接符号##
.xxx: 表示大于等于xxx级别的信息
.=xxx:表示等于xxx级别的信息
.!xxx:表示在xxx之外的等级的信息

##3.日志的远程同步##
在日志发送方:
vim /etc/rsyslog.conf
*.*      @172.25.254.200 @符号表示udp协议发送 两个@是tcp协议

Linux下的系统日志管理_第1张图片

systemctl restart rsyslog

在日志接受方
 vim  /etc/rsyslog.conf
15 $ ModLoad imudp            #日志接受模块(去掉#)
16 $ UDPServerRun 514         #开启接受端口


systemctl  restart rsyslog
systemctl  stop firewalld     #关闭火墙
systemctl  disable firewalld  #设定火墙开机关闭

Linux下的系统日志管理_第2张图片

测试:

在两方都清空messages
> /var/log/messages

##在日志发送方##
logger test

cat /var/log/messages

在日志接受方
cat /var/log/messages

Linux下的系统日志管理_第3张图片

##日志采集格式的设定

vim /etc/rsyslog.conf
加入$template LOGFMT, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"

加入*.*  /var/log/westos;LOGFMT

Linux下的系统日志管理_第4张图片

%timegenerated%            ##显示日志时间
%FROMHOST-IP%          ##显示主机ip
%syslogtag%                  ##日志记录目标
%msg%                          ##日志内容
\n                                   ##换行

cat /var/log/westos

##4.时间同步服务##
服务名称 chronyd
 
在服务端
vim  /etc/chrony.conf                   ##主配置文件

22 改为allow 172.25.254.0/24             允许哪些客户端来同步本机的时间
29 local stratum 10                     本机不同步任何主机的时间,本机作为时间源
systemctl restart chronyd
timedatectl set-timezone Asia/Shanghai  更改当前时区为东8区

在客户端
vim  /etc/chrony.conf
  3 server 0.rhel.pool.ntp.org iburst
  4 server 1.rhel.pool.ntp.org iburst====> server ntpserverip iburst        

 本机立即同步225主机的时间    

systemctl restart chronyd
timedatectl  set-timezone Asia/Shanghai 更改当前时区为东8区

测试:

客户端
chronyc sources -v
测试:
[root@localhost ~]# chronyc sources -vLinux下的系统日志管理_第5张图片

##5.timedatectl命令##
timedatectl    status                ##显示当前时间信息

Linux下的系统日志管理_第6张图片
        set-time        ##设定当前时间


        set-timezone        ##设定当前时区

Linux下的系统日志管理_第7张图片
        set-local-rtc 0|1    ##设定是否使用utc时间

Linux下的系统日志管理_第8张图片

##6.journalctl#

1.journalctl        ##日志查看工具(不能查看关机之前的时间)

      -n  3         查看最近三条

Linux下的系统日志管理_第9张图片
      -p  err       查看错误日志


      -o verbose    查看日志的详细参数

Linux下的系统日志管理_第10张图片
      --since       查看从什么时间开始的日志
      --until       查看从什么时候结束的日志

Linux下的系统日志管理_第11张图片
2.如何使用systemd-journald保存系统日志
 默认    systemd-journald是不保存系统日志到硬盘的
 那么关机后再次开机只能开到本次开机之后的日志,之前关机前的是没有的

mkdir /var/log/journal
chgrp systemd-journal /var/log/journal
chmod g+s /var/log/journal
killall -1 systemd-journald

ls /var/log/journal
...

Linux下的系统日志管理_第12张图片

你可能感兴趣的:(Linux下的系统日志管理)