初学linux系统代码,linux初学者-系统日志(二)(示例代码)
先前在(一)中介紹到在不同主機間日志同步的方法,在一臺主機上可以看到另一臺主機的日志。這里會介紹系統日志方面的一些其他內容。
1、日志的采集格式
在日志的采集中,由圖可以看出,這樣的排列或者顯示方式會增加分析區分的難度,尤其是在進行日志同步時,所以在日志的采集中有時需要用到一些明顯的采集格式。
日志采集格式是在"/etc/chrony.conf"中編輯的,如果是改變日志同步的采集格式,就需要在日志的接收方配置。編輯格式如下圖所示,編輯的文本必須在所有采集存放地址信息的最前面,否則不生效。
上圖顯示編輯的文本中,"WE"為格式名稱,可以自行編寫。"%timegenerated%"是顯示日志時間。"%FROMHOST-IP%"是顯示主機ip。"%syslogtag%"是日志記錄目標。"%msg%"是日志內容。"\n"是換行符。排列順序和格式內容可以根據自己意愿自行編輯。
編輯結束后,在要需要修改格式的目錄名后輸入";WE",保存退出后輸入"systemctl restart rsyslog.service"重啟服務生效。
另外,如果需要所有的采集目錄均生效,則將下圖中"$ActionfileDefaultTemplate"后的部分改為"WE"。
2、時間同步
在日志同步的過程中,如果兩臺主機的時間不一致,則會出現日志查看和分析時的麻煩甚至錯亂,所以還需要對兩臺主機進行時間同步。在時間同步中,服務端的時間不改變,客戶端去同步服務端的時間。具體同步步驟如下。
在同步之前,如果沒有安裝時間同步服務,則先需要輸入"yum install chrony -y"安裝服務。同時輸入"systemctl stop firewalld"關閉防火墻。
服務端的同步步驟:輸入"vim /etc/chrony.conf",如圖所示,用"#"注釋掉3-6行的"server",刪掉22行和28行的"#",并將22行的ip地址改為"0.0.0.0/0"。保存退出后輸入"systemctl restart chronyd"重啟服務。
客戶端的同步步驟:輸入"vim /etc/chrony.conf",如圖所示,刪除4-6行的"server",將第3行的"server 0.rhel.pool.ntp.org iburst"改為"server 客戶端ip ?iburst"。保存退出后重啟服務。
測試是否同步時在客戶端輸入命令"chronyc sources -v",雙橫線后出現下圖"^*172.24.254.202..."則代表時間同步成功。
3、時間信息
如下圖所示,輸入"timedatectl"或者"timedatectl status"可以查看當前的時間信息,如時間,時區,是否同步時間等。
"timedatectl set-time"命令可以設定當前時間,如圖,設置時間格式為"2017-1-1 12:30:30"。
"timedatectl set-timezone"可以設定當地時區,時區可以通過"timedatectl list-timezones"查看,如下圖所示,將當前時區設為"Asia/Shanghai"。
"timedatectl set-local-rtc 0|1"可以設定是否使用utc時間,如下圖。
4、日志分析工具
4.1、journal
日志分析的工具為"journal",直接輸入"journal"可以直接如圖所示查看日志。
加入參數"-n"可以顯示最新的幾條日志,如查看最新的5條日志需要輸入命令"journal -n 5"。
加入參數"-p err"可以顯示報錯日志信息。如下圖。
加入參數"-f",可以監控日志。
如果需要查看一定時間之后的日志,則需要加入參數"--since"。如輸入“journal --since "2017-7-26 14:50:00"”可以查看這個時間點之后的日志信息。
同理,如需要查看一定時間之前的日志,參數為"--until"。如下圖所示。也可以將"--since"和"--until"結合起來使用,查看一段時間之內的日志。
參數"-o verbose"可以顯示日志能夠使用的詳細進程參數。
4.2、journal管理
如下面的對比圖可以看出,journal工具會忽略系統重啟前的日志信息,所以在系統重啟后,看不到之前的日志信息。
如果需要保留系統重啟前的日志信息,則需要做下圖操作。
在做完以上操作之后,用"ls"命令可以發現出現了"system.journal"文件,用"file"命令可以看出,該文件為數據。然后在重啟之后,系統就不會再自動忽略重啟前的日志了。
值得注意的是,進行上述操作之后,系統只會保留在"system.journal"文件生成之后的日志,在做以上操作之前的日志無法保留下來。如圖所示,如果刪除建立的"journal"目錄,會導致"journalctl"查看不到日志,重啟后該目錄會重新出現,但是日志不會出現。
日志管理(一)和之前的日志管理(二)簡要介紹了在linux系統下日志管理的一些知識。
總結
以上是生活随笔為你收集整理的初学linux系统代码,linux初学者-系统日志(二)(示例代码)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux目录 文件 pdf,linux
- 下一篇: linux 音频文件播放文件管理,lin