第三章 Linux系统中的日志管理

2021/10/26 7:11:57

本文主要是介绍第三章 Linux系统中的日志管理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.journald

  systemd-journuald.service     服务名称

  journalctl                                   用这个命令管理日志

系统默认的存放日志的路径 :     /run/log

journalctl 命令的基本用法

journalctl  

                              -n   3                          显示日志的最新三条

                            --since "08:20:00"  --until  "08:30:10"      显示自8:20:00-08:30:10的所有日志

                  -o          short                  经典模式显示日志

                               verbose               显示日志全部字节

                               export                  适合传出和备份的二进制格式

                                json                      js 格式显示输出

                -p           

                0              emerg                      系统严重问题日志

                1               alert                         系统要立即更改的信息

                2               crit                           严重级别会导致系统软件不能正常工作

                3               err                            程序报错

                4               warning                   程序警告

                5               notice                       重要信息的普通日志

                6                info                           普通信息

                7                debug                       程序拍错信息

                -F               PRIORITY                查看可控日志级别

                -U               sshd                          指定查看服务

               --disk-usage                                 查看日志大小

              --vacuum-size=1G                        设定日志存放大小

              --vacuum-time=1W                       设定日志存放时间

                -f                                                     监控日志

             jrurnalctl   _PID=10235  _SYSTEMD_UNIT=sshd.servic

用journald服务永久存放日志

系统默认的日志存放路径:/run/log/journal

mkdir /var/log/journal

chgrp systemd-journal  /var/log/journal

chmod    2777    /var/log/journal

ls -ld   /var/log/journal

systemctl  restart  systemd-journald.service

当服务重启日志就会永久的保存到:/var/log/journal

 测试:

1.在操作以上步骤之前县查看日志在/run/log/journal

2.操作完成之后重启系统

3.再次查看日志

4.可以看到目录中保存的日志是重启之后产生的

5.完成以上操作之后重启系统后之前的日志也会被保存

 2.rsyslog

rsyslog.service     服务名称

日志存放:

/var/log/messages                系统服务日志,常规信息,服务报错

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

/var/log/maillog                       系统邮件日志信息

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

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

配置文件: /etc/rsyslog.conf

实验一:自定义日志采集路径

>  /var/log/messages

cat /var/log/messages

vim /var/rsyslog.conf

编辑内容:

* . *                                    /var/log/westos                    全部内容全部等级的日志内容被采集到此文件中 systemctl restart rsyslog.service  
cat /var/log/westos

>  /var/log/messages

cat /var/log/messages

vim /var/rsyslog.conf

编辑内容:

* . * ;authpriv.none                                         /var/log/westos

systemctl restart rsyslog.service  
cat /var/log/westos

日志类型

auth                               用户认证

authpriv                         服务认证

cron                               时间任务

kern                               内核类型

mail                                 邮件

news                               系统更新时间

user                                 用户

 实验二:日志远程同步

(1)在nodeb中接受nodea的日志

实验环境

两台虚拟机nodea,nodeb   设定nodea为服务端,nodeb为客户端

> /var/log/mesages    两台虚拟机都执行

在nodeb中操作

systemctl  start rsyslog.service

vim /etc/rsyslog.service

systemctl restart rsyslog.service

netstat --antlupe | grep rsyslog

udp     0.0.0.0.514              0.0.0.0:*    出现这行说明接口设置成功

在nodeb中操作

vim  /etc/rsyslog.conf

编辑内容: * . *                                                  @172.25.254.212

systemctl   restart    rsyslog.service

> /var/log/messages

logger  westos test message        发送端发送的这条信息在接收端nodeb中能找到

测试:

在nodea中操作

> /var/log/messages

cat /var/messages

westos test  message     会显示发送端的这条信息

 

更改采集日志格式

 定义日志采集格式

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

WESTOS_FORMAT:       格式名称

%FROMHOST-IP%          日志来源主机ip

%timegenerated% %         日志生产时间               

%syslogtag%                      日志生成服务

%msg%\n"                           日志内容

  \n                                          换行

3.timedatectl 

timedatectl  set-time   "2021-10-22 12:27:21"       设定系统时间

timedatectl  list-timezones                                         设定系统的所有时区

timedatectl   set-zone   "Asia/shanghai"                  设定系统时区

timedatectl  set-local-rtc 0|1                                   设定系统时间计算方法 0表示使用utc时间计算方式

时间同步服务

chronyd.service     服务名称

 /etc/chrony.conf    配置文件

服务端nodea     客户端nodeb

在nodea 中操作

vim /etc/chrony.conf

编辑内容:

23     allow  172.25.254.212 iburst

26     local  stratum

systemctl restart chronyd.service

systemctl disable --now  firewalld

在nodeb中操作

vim /etc/chrony.conf

编辑内容:

pool  172.25.254.112 iburst

systemctl restart chronyd.service

 chronyc   sources   -v

  210 Number of sources = 1

  .-- Source mode  '^' = server, '=' = peer, '#' = local clock.
 / .- Source state '*' = current synced, '+' = combined , '-' = not combined,
| /   '?' = unreachable, 'x' = time may be in error, '~' = time too variable.
||                                                 .- xxxx [ yyyy ] +/- zzzz
||      Reachability register (octal) -.           |  xxxx = adjusted offset,
||      Log2(Polling interval) --.      |          |  yyyy = measured offset,
||                                \     |          |  zzzz = estimated error.
||                                 |    |           \
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^* 172.25.254.112               10   6    17    45    -12us[ -807ns] +/-  246u

如果显示上面的信息,那时间同步设置成功

 



这篇关于第三章 Linux系统中的日志管理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程