日志的管理

it2022-05-05  154

采集日志服务 rsyslog.server

1.日志的基础知识   程序本身生成日志 采集日志   2.rsyslog的管理文件  

文件类型/var/log/messages服务信息日志/var/log/secure系统登陆日志/var/log/cron定时任务日志/var/log/maillog邮件日志/var/log/boot.log系统启动日志

3.指定日志采集路径  

vim /etc/rsyslog.conf

格式:什么类型的日志.什么级别的日志      /var/log/file

eg: *.* /var/log/westos 把系统中所有日志采集到/var/log/westos 文件中   4.日志分类  

1)日志类别:

auth  pam产生的日志

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

cron   时间任务相关日志

kern  内核相关日志

lpr   打印日志

mail   邮件日志

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

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

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

local 1~7  自定义的日志设备

1)日志级别:

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

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

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

warning 警告级别

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

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

alert 需要立即修改的信息

emerg 内核崩溃等严重信息

none 什么都不记录

注:从上到下,级别依次增加,记录的信息越来越少

命令man 3 syslog 可以查看详细手册

  5.日志的远程传输 (应用UDP传输)  

man 5 rsyslog.conf 查看传输详细手册

(1)在发送方:

1)vim /etc/rsyslog.conf

在文件中编辑发送命令*.* @[接受方主机ip]

2)systemctl restart rsyslog

(2)在接受方:

1)vim /etc/rsyslog.conf

在此文件中打开udp接口

15 $ModLoad imudp 16 $UDPServerRun514

2)systemctl restart rsyslog

3)关闭防火墙 systemctl stop firewalld

设定防火墙开机时默认关闭 systemctl disable firewalld

(3)测试

1)在发收双方都清空日志文件

> /var/log/messages

2)在发送方

loggerlogger test cat /var/log/messages

3)在接收方查看 cat /var/log/messages

  6.日志采集格式的设定(在接收方设置)  

(1)vim /etc/rsyslog.conf

在文件中编辑格式设定规则 $template LOGFMT,"[参数]"

常用参数作用%timegenerated%显示日志时间%FROMHOST-IP%显示主机ip%syslogtag%显示日志记录目标%msg%显示日志内\n换行

(2)

*.* /var/log/westos;LOFGMT 在指定的日志中采用LOGFMT格式 $ActionFileDefaultTemplate LOFGMT 修改系统默认日志采集格式为LOGFMT

(3)systemctl restart rsyslog 重启服务

7.设置时间同步

chronyd.server 时间同步服务

步骤:

(1)在服务器方:vim /etc/chrony.conf 编辑文件

22 172.25.254.0/24 29 local stratum 10

syatemctl resart chronyd

(2)在客户方:vim /etc/chrony.conf 编辑文件只保留一个同步主机ip

设置火墙

systemctl stop firewalld systemctl disable firewalld

(3)测试

在客户方输入命令 chronyc sources -v

或者

服务器重置时间date 在客户方查看是否同步

  8.timedatectl 管理系统时间命令  

命令作用timedatectl status显示当前时间信息timedatectl set-time设定当前时间timedatectl set-timezoes设定当前时区timedatectl list-timezones查看支持的所有时区timedatectl set-local-rtc 0/1设定是否使用UTC时间 (0为是 1为是否)

注:cst=utc+时区

9.journal 日志文件   (1)journalctl 查看日志命令

参数作用-n 3查看最近3条日志-p err查看错误日志-o verbose查看日志的详细参数–snice查看从什么时间开始的日志–until查看到某一时间之前的日志

也可通过某重大事件的参数信息直接使用journalctl 【参数信息】查看该事件日志 (2)如何使用systemd-journald保存系统日志

 系统在默认情况下systemctl-journald是不保存系统日志到硬盘的 在关机之后在此开启只能看到开机之后的日志关机之前的日志是无法查看

步骤:

1)mkdir /var/log/journal

2)

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

3)ls /var/log/journal

cd 946cb0e817ea4adb916183df8c4fc817 查看system.journal是否建立建立成功则日志会保存到硬盘


最新回复(0)