系统日志

系统日志

1.系统日志默认分类

/var/log/messages                       系统服务及日志,包括服务的信息,报错等等

/var/log/secure                              系统认证信息日志

/var/log/maillog                             系统邮件服务信息

/var/log/cron                                 系统定时任务信息

/var/log/boot.log                           系统启动信息


2.
日志管理服务    rsyslog.service

(1).rsyslog                              负责采集日志和分类存放日志

(2).rsyslog                              日志分类

vim /etc/rsyslog.conf                   主配置文件 


格式:   日志设备(类型).(连接符号)日志级别  日志处理方式(action)


日志设备(可以理解为日志类型):

———————————————————————-

auth                                           pam产生的日志

authpriv                                     ssh,ftp等登录信息的验证信息

cron                                           时间任务相关

kern                                         内核

lpr                                             打印

mail                                         邮件

mark(syslog)–rsyslog               服务内部的信息,时间标识

news                                         新闻组

user                                          用户程序产生的相关信息

uucp                                         unix to unix copy, unix主机之间相关的通讯


日志级别

———————————————————————-

debug                              有调式信息的,日志信息最多

info                                  一般信息的日志,最常用

notice                              最具有重要性的普通条件的信息

warning                           警告级别

err                                   错误级别,阻止某个功能或者模块不能正常工作的信息

crit                                   严重级别,阻止整个系统或者整个软件不能正常工作的信息

alert                                需要立刻修改的信息

emerg                             内核崩溃等严重信息

none                               什么都不记录


服务.日志级别                 /存放文件

*.*                                    /var/log/freya



表示将系统任何类型、任何级别的日志信息存放在/var/log/westos下,上图用cat  /var/log/freya来查看日志信息

注意:从上到下,级别从低到高,记录的信息越来越少详细的可以查看手册: man 3 syslog

连接符号

———————————————————————-

.xxx: 表示大于等于xxx级别的信息

.=xxx:表示等于xxx级别的信息

.!xxx:表示在xxx之外的等级的信息


#####
实例####
1.
记录到普通文件或设备文件::
*.*                                  /var/log/file.log          

*.*                                  /dev/pts/0
测试: logger -p local3.info ‘KadeFor is testing thersyslog and logger ‘   logger命令用于产生日志

2.
发送给用户(需要在线才能收到)
*.*                                   root
*.*                                   root,kadefor,up01        
使用,号分隔多个用户
*.*                                   *                                    *
号表示所有在线用户

3.
忽略,丢弃
local3.*                           ~                                   
忽略所有local3类型的所有级别的日志

4.
执行脚本::
local3.*                          ^/tmp/a.sh                     ^
号后跟可执行脚本或程序的绝对路径
                                                                             
日志内容可以作为脚本的第一个参数.
                                                                             
可用来触发报警

3.日志同步

(1)步骤

①systemctl stop firewalld                   关闭两台主机的火墙

②配置日志发送方 (vim  /etc/rsyslog.conf) 

*.*             @172.25.0.11                     通过udp协议把日志发送到11主机



注意@:udp,@@:tcp,当需要同步到外部的主机时,用tcp协议(@@)更加安全

重启服务:systemctl  restart  rsyslog.service

③配置日志接受方 vim  /etc/rsyslog.conf) 


15 $ModLoad imudp                           日志接收插件

16 $UDPServerRun 514                     日志接收插件使用端口

重启服务:systemctl  restart  rsyslog.service

④测试                    

> /var/log/messages                           两边都做

logger test message                           日志发送方

⑤watch -n 1 ' /var/log/messages'        日志接收方


当规定日志采集格式 ,在上述步骤的基础上,在发送方的/etc/rsyslog.conf 配置文件下做如下更改 

                  

$template freya, "%timegenerated% %FROMHOST-IP% %syslogtag%%msg%\n"

%timegenerated%                             显示日志时间

%FROMHOST-IP%                           显示主机ip
%syslogtag%                                    日志记录目标
                                 

%msg%                                             日志内容

\n                                                       换行

$ActionfileDefaultTemplate freya

*.info;mail.none;authpriv.none;cron.none               /var/log/messages;<<freya>>

                 改完配置文件后,一定要记得重启服务
4.日志分析工具journal(systemd-journald是该进程名称)

                  

journalctl                                       直接执行,浏览系统日志

-n 3                                                显示最新3                                                          

-p err                                             显示报错

-f                                                   监控日志

--since --until                                --since "[YYYY-MM-DD] [hh:mm:ss]"从什么时间到什么时间的日志

-o verbose                                   显示日志能够使用的详细进程参数     

          _PID=(进程pid+ _SYSTEMD_UNIT=(服务名称)

systemd-journald管理
默认情况下此程序会忽略重启前的日志信息,如不忽略:
①mkdir /var/log/journal
②chown root:systemd-journal /var/log/journal
③chmod 2755 /var/log/journal
④killall -1 systemd-journald
⑤ls /var/log/journal/
 system.journal user-1000.journal


5.
时间同步 

1.
服务端

yum install chrony -y                       安装服务

vim /etc/chrony.conf                       主配置文件


22 allow 172.25.0.0/24                  允许谁去同步我的时间  

29 local stratum 10                        不去同步任何人的时间,时间同步服务器级别


systemctl restart chronyd

systemctl stop firewalld


2.
客户端

                  更改时间以及把时间同步到硬盘和系统上

                  

vim /etc/chrony.conf

  3 server 0.rhel.pool.ntp.orgiburst====>删掉

  4 server 1.rhel.pool.ntp.orgiburst====> 删掉 ====>  server 客户IP  iburst

  5 server 2.rhel.pool.ntp.orgiburst====>删掉

  6 server 3.rhel.pool.ntp.orgiburst====>删掉

systemctl restart chronyd


测试结果:
                  两边>/var/log/messages清空日志

                  两边watch -n 1 date监控

                  
5.timedatectl
命令
timedatectl     status                                  
显示当前时间信息
                      set-time                               
设定当前时间
                      set-timezone                       
设定当前时区
                      set-local-rtc 0|1                   
设定是否使用utc时间



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章