日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Centos8通過(guò)journalctl分析日志

journalctl命令是Systemd日志系統(tǒng)的一個(gè)命令,主要用途是用來(lái)查看通過(guò)Systemd日志系統(tǒng)記錄的日志,在Systemd出現(xiàn)之前,Linux系統(tǒng)及各應(yīng)用的日志都是分別管理的,Systemd取代了initd之后便開(kāi)始統(tǒng)一管理了所有Unit的啟動(dòng)日志,可以只用一個(gè)journalctl命令,查看所有內(nèi)核和應(yīng)用的日志。

什么是journald?

journald是systemd的守護(hù)進(jìn)程,它從系統(tǒng)、內(nèi)核和各種服務(wù)或守護(hù)進(jìn)程多個(gè)來(lái)源收集日志,并以二進(jìn)制格式存儲(chǔ)日志,以便于操作。

所有這些日志事件都由journald處理,它提供了一種集中處理日志的方法,而不管消息來(lái)自何處。

什么是journalctl?

journalctl是一個(gè)命令行工具,用于查看由journald收集的日志。

日志有很好的索引和結(jié)構(gòu),允許系統(tǒng)管理員根據(jù)各種參數(shù)輕松地分析和操作日志,例如,根據(jù)時(shí)間、引導(dǎo)順序、特定服務(wù)、嚴(yán)重性等過(guò)濾日志。

1) 如何使日志長(zhǎng)期保存在系統(tǒng)中?

默認(rèn)情況下,journal日志在大多數(shù) Linux 發(fā)行版中是啟用的,但它將日志數(shù)據(jù)存儲(chǔ)在/run/log/journal/中,重啟時(shí)會(huì)被刪除。如果要使日志永久保存,請(qǐng)執(zhí)行以下步驟,這些步驟將自動(dòng)創(chuàng)建/var/log/journal/目錄。

以 root 用戶身份打開(kāi)/etc/systemd/journald.conf文件并取消注釋“Storage=auto”的行并將其更改為“Storage=persistent”?;蛘撸梢允褂?sed 命令替換文件中的匹配字符串。

[root@server1 ~]# sed -i '/Storage/ c\Storage=persistent' /etc/systemd/journald.conf

重啟 systemd-journald 服務(wù):

[root@server1 ~]# systemctl restart systemd-journald

修改/var/log/journal權(quán)限:

[root@server1 ~]# chown -R root:systemd-journal /var/log/journal

下面可以從目錄中看到日志了。

2) journalctl 常用的選項(xiàng)

在使用 Journalctl 工具之前,可以了解一些常用的選項(xiàng):

  • -f : 實(shí)時(shí)顯示最近的10條日志。
  • -e : 跳轉(zhuǎn)到日志末尾以顯示最新事件。
  • -r : 按時(shí)間倒序打印日志消息
  • -k : 只顯示內(nèi)核日志。
  • -u : 只顯示指定systemd Unit的消息。
  • -b : 顯示來(lái)自特定引導(dǎo)的消息,如果不包括特定引導(dǎo)會(huì)話,則顯示當(dāng)前引導(dǎo)消息。
  • –list-boots : 顯示引導(dǎo)編號(hào)(相對(duì)于當(dāng)前引導(dǎo))、它的id以及與引導(dǎo)有關(guān)的第一個(gè)和最后一個(gè)消息的時(shí)間戳。
  • –utc : 以UTC時(shí)間表示。
  • -p, –priority= : 按消息優(yōu)先級(jí)過(guò)濾輸出。
  • -S, –since= : 根據(jù)開(kāi)始時(shí)間過(guò)濾日志
  • -U, –until= : 根據(jù)結(jié)束時(shí)間過(guò)濾日志
  • –disk-usage : 顯示所有日志文件的當(dāng)前磁盤使用情況。

3)如何使用journalctl讀取日志

3.a) 使用 journalctl 命令查看基本日志

當(dāng)journalctl不帶選項(xiàng)是,它會(huì)顯示日志的完整內(nèi)容,首先列出最舊的記錄。

它在后端使用less命令來(lái)顯示日志。

[root@server1 ~]# journalctl

3.b) 以相反的順序顯示日志

上面的輸出按時(shí)間順序顯示日志。如果想要將最新的日志放在最前面,需要添加-r選項(xiàng)。

[root@server1 ~]# journalctl -r

3.c) 顯示指定行數(shù)的日志

可以使用-n選項(xiàng)僅顯示日志中指定行數(shù)的日志,如下所示:

[root@server1 ~]# journalctl -n 20

3.d) 實(shí)時(shí)查看日志

可以使用-f選項(xiàng)查看實(shí)時(shí)日志,如下所示。這在對(duì)某些問(wèn)題進(jìn)行故障排除時(shí)很有用。

[root@server1 ~]# journalctl -f

3.e) 只顯示內(nèi)核日志

過(guò)濾器可以根據(jù)你的需要使用。要僅顯示內(nèi)核日志,可以使用-k選項(xiàng)。這相當(dāng)于字段匹配_TRANSPORT=kernel。

[root@server1 ~]# journalctl -k
或者
[root@server1 ~]# journalctl _TRANSPORT=kernel

3.f) 過(guò)濾出系統(tǒng)引導(dǎo)日志

每次引導(dǎo)系統(tǒng)時(shí),都會(huì)在日志中創(chuàng)建一個(gè)新的引導(dǎo)條目。要列出所有可用的引導(dǎo),運(yùn)行以下命令:

[root@server1 ~]# journalctl --list-boots
-1 5d845cc6c67746bdabd9b9a91c0d86ee Tue 2021-06-08 14:58:47 CST—Fri 2021-06-11 08:32:36 CST
0 5690a1c73db146bb8ceeaf3c8b1086f5 Wed 2021-06-16 15:40:42 CST—Wed 2021-06-16 15:41:20 CST

系統(tǒng)引導(dǎo)日志以一個(gè)數(shù)字作為前綴,該數(shù)字從0開(kāi)始?!?′ 指的是當(dāng)前啟動(dòng)。引導(dǎo)會(huì)話“-1”是上次引導(dǎo)的會(huì)話,依此類推。使用下面命令顯示本次系統(tǒng)引導(dǎo)的日志記錄:

[root@server1 ~]# journalctl -b 0

查看上一次系統(tǒng)引導(dǎo)的記錄,如下操作:

[root@server1 ~]# journalctl -b -1

3.g) 基于時(shí)間間隔的過(guò)濾

可以根據(jù)時(shí)間間隔過(guò)濾日志。多個(gè)參數(shù)可以與時(shí)間過(guò)濾器一起使用,如下所示。要使用時(shí)間過(guò)濾器,請(qǐng)使用“-S 或 –since”和“-U 或 –until”命令行開(kāi)關(guān)。

要過(guò)濾從昨天到目前的日志,請(qǐng)運(yùn)行以下命令:

[root@server1 ~]# journalctl -S yesterday

僅過(guò)濾今天的日志,請(qǐng)運(yùn)行以下命令:

[root@server1 ~]# journalctl -S today
或者
[root@server1 ~]# journalctl -S 00:00

如果僅過(guò)濾昨天的日志,不包括今天的,請(qǐng)運(yùn)行以下命令:

[root@server1 ~]# journalctl -S yesterday --until 00:00

要過(guò)濾自 3 月 12 日以來(lái)的日志,請(qǐng)運(yùn)行以下命令:

[root@server1 ~]# journalctl -S 2021-03-12

如要使用日期和時(shí)間過(guò)濾日志,請(qǐng)運(yùn)行以下命令。

注意:日期和時(shí)間的使用格式:year-month-day hour:minute:second

[root@server1 ~]# journalctl -S "2021-06-01 20:00:00" -U "2021-06-16"

要過(guò)濾過(guò)去一小時(shí)的消息,請(qǐng)使用以下命令:

[root@server1 ~]# journalctl -S -1h

3.h) 按優(yōu)先級(jí)過(guò)濾

過(guò)濾可以應(yīng)用于消息優(yōu)先級(jí),這在你想要過(guò)濾特定消息(如“Warn”或“Error”等)時(shí)非常有用。

下面列出了所有優(yōu)先級(jí):

Priority Code
0 emerg
1 alert
2 crit
3 err
4 warning
5 notice
6 info
7 debug

顯示詳細(xì)信息

[root@server1 ~]# journalctl -p 3 -b
或者
[root@server1 ~]# journalctl -p err -b

4) 基于字段的過(guò)濾

journal日志可以按特定字段過(guò)濾。要匹配的字段的語(yǔ)法是FIELD_NAME=MATCHED_VALUE,例如SYSTEMD_UNIT=httpd.service'。此外,可以在單個(gè)查詢中指定多個(gè)匹配項(xiàng),以更方便的方式過(guò)濾輸出消息。

4.a) 按Unit過(guò)濾

要顯示由指定服務(wù)生成的消息,請(qǐng)使用下面給出的命令。同樣可以過(guò)濾任何服務(wù)消息。

[root@server1 ~]# journalctl -u sshd.service
或者
[root@server1 ~]# journalctl _SYSTEMD_UNIT=sshd.service

Centos8 中如何使用journalctl分析日志Centos8 中如何使用journalctl分析日志

4.b) 按設(shè)備路徑過(guò)濾

要過(guò)濾與特定設(shè)備相關(guān)的消息,請(qǐng)運(yùn)行以下命令:

[root@server1 ~]# journalctl /dev/sda

5) 檢查日志文件的磁盤占用情況

當(dāng)你為journal日志啟用持久存儲(chǔ)時(shí),它最多使用/var/log/journal所在文件系統(tǒng)容量的“10%”。

當(dāng)您為日志日志啟用持久存儲(chǔ)時(shí),它最多使用“/var/log/journal”所在文件系統(tǒng)的“10%”。

[root@server1 ~]# journalctl --disk-usage
Archived and active journals take up 16.0M in the file system.


網(wǎng)頁(yè)題目:Centos8通過(guò)journalctl分析日志
鏈接URL:http://www.dlmjj.cn/article/dhpeede.html