第十单元 系统日志
第十單元
系統(tǒng)日志
?
每個(gè)程序都會(huì)產(chǎn)生日志,采集管理日志的服務(wù)是rsyslog,采集來的日志會(huì)存放在/var/log/下的文件里
?
一 系統(tǒng)日志默認(rèn)分類
?
/var/log/messages:系統(tǒng)服務(wù)及日志,包括服務(wù)的信息,報(bào)錯(cuò)等等
/var/log/secure:系統(tǒng)認(rèn)證信息日志
/var/log/maillog:系統(tǒng)郵件服務(wù)信息
/var/log/cron:系統(tǒng)定時(shí)任務(wù)信息
/var/log/boot.log:系統(tǒng)啟動(dòng)信息
?
二 日志管理服務(wù) :rsyslog
?
1 rsyslog :負(fù)責(zé)采集日志和分類存放日志
2 rsyslog日志分類
vim /etc/rsyslog.conf????????????:主配置文件
服務(wù).日志級(jí)別????/存放文件
*.*(任何級(jí)別的任何日志) ?????/var/log/westos :將所有的日志信息存放到了/var/log/westos 下
?
systemctl restart rsyslog
?
三 格式
?
日志設(shè)備(類型).(連接符號(hào))日志級(jí)別 ????日志處理方式(action)
?
?
1 日志設(shè)備(可以理解為日志類型):
?
auth ???????:pam產(chǎn)生的日志
authpriv ???:ssh,ftp等登錄信息的驗(yàn)證信息
cron ???????:時(shí)間任務(wù)相關(guān)
kern ???????:內(nèi)核
lpr ????????:打印
mail ???????:郵件
mark(syslog)–rsyslog:服務(wù)內(nèi)部的信息,時(shí)間標(biāo)識(shí)
news ???????:新聞組
user ???????:用戶程序產(chǎn)生的相關(guān)信息
uucp ???????:unix to unix copy, unix主機(jī)之間相關(guān)的通訊
local 1~7 ??:自定義的日志設(shè)備
?
?
2 日志級(jí)別
?
?
debug ??????:有調(diào)式信息的,日志信息最多
info ???????:般信息的日志,最常用
notice ?????:最具有重要性的普通條件的信息
warning ????:警告級(jí)別
err ????????:錯(cuò)誤級(jí)別,阻止某個(gè)功能或者模塊不能正常工作的信息
crit ???????:嚴(yán)重級(jí)別,阻止整個(gè)系統(tǒng)或者整個(gè)軟件不能正常工作的信息
alert ??????:需要立刻修改的信息
emerg ??????:內(nèi)核崩潰等嚴(yán)重信息
none ???????:什么都不記錄
?
注意:從上到下,級(jí)別從低到高,記錄的信息越來越少
詳細(xì)的可以查看手冊(cè): man 3 syslog
?
3 連接符號(hào)
?
.xxx: 表示大于等于xxx級(jí)別的信息
.=xxx:表示等于xxx級(jí)別的信息
.!xxx:表示在xxx之外的等級(jí)的信息
?
?
四 實(shí)例
?
1. 記錄到普通文件或設(shè)備文件::
*.* ????/var/log/file.log ??:絕對(duì)路徑
*.* ????/dev/pts/0
測(cè)試: logger -p local3.info ‘KadeFor is testing the rsyslog and logger ‘ ??
logger 命令用于產(chǎn)生日志
?
2. 發(fā)送給用戶(需要在線才能收到)
*.* ??root
*.* ??root,kadefor,up01 ????# 使用,號(hào)分隔多個(gè)用戶
*.* ??* ????????# *號(hào)表示所有在線用戶
?
3. 忽略,丟棄
local3.* ??~ ???????# 忽略所有l(wèi)ocal3類型的所有級(jí)別的日志
?
4. 執(zhí)行腳本::
local3.* ???^/tmp/a.sh ?????# ^號(hào)后跟可執(zhí)行腳本或程序的絕對(duì)路徑
# 日志內(nèi)容可以作為腳本的第一個(gè)參數(shù).
# ?可用來觸發(fā)報(bào)警
五 日志同步
?
?
systemctl stop firewalld :關(guān)閉兩臺(tái)主機(jī)的火墻
?
配置日志發(fā)送方
*.* ????????????@172.25.254.12:通過udp協(xié)議把日志發(fā)送到12主機(jī),udp是一個(gè)@符,tcp是兩個(gè)@符
若是通過tcp協(xié)議,則: ??
*.* ????????????@@172.25.254.12
?
配置日志接受方
15 $ModLoad imudp ? ? ? ? ? ?日志接收插件
16 $UDPServerRun 514 ? ? ? ??日志接收插件使用端口
?
netstat -anulpe | grep rsyslog
netstat命令是在內(nèi)核中訪問網(wǎng)絡(luò)及相關(guān)信息的命令,能夠顯示協(xié)議統(tǒng)計(jì)和當(dāng)前tcp/ip的網(wǎng)絡(luò)連接
?
?
測(cè)試
> /var/log/messages:兩邊都清空原有日志
logger test message:日志發(fā)送方
tail -f /var/log/message:日志接收方
?
?
六 日志采集格式
?
$template WESTOS, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
$ActionfileDefaultTemplate WESTOS
WESTOS ?????????????????????????:模版名
%timegenerated%:顯示日志時(shí)間
%FROMHOST-IP%:顯示主機(jī)ip
%syslogtag%:日志記錄目標(biāo)
%msg%:日志內(nèi)容
\n:換行
若是不想要$ActionfileDefaultTemplate WESTOS,則要這樣使用模版:
在日志文件后添加模板名,且要用;分隔
*.info;mail.none;authpriv.none;cron.none ???????????????/var/log/messages;WESTOS
?
七 日志分析工具journal
?
日志信息直接從內(nèi)存中獲取,和rsyslog不同,不會(huì)將日志信息儲(chǔ)存在文件中,一旦關(guān)機(jī)重啟,日志信息就會(huì)消失,而rsyslog會(huì)將日志信息從內(nèi)存采集后存放在文件中,關(guān)機(jī)重啟,日志信息不會(huì)消失。
?
systemd-journald:進(jìn)程名稱
?
journalctl:直接執(zhí)行,瀏覽系統(tǒng)日志
-n 3:顯示最新3條
-p err:顯示報(bào)錯(cuò)
-f:監(jiān)控日志
- -since - -until: - -since "[YYYY-MM-DD] [hh:mm:ss]" 從什么時(shí)間到什么時(shí)間的日志
-o verbose:顯示日志能夠使用的詳細(xì)進(jìn)程參數(shù)
:_SYSTEMD_UNIT=sshd.service服務(wù)名稱
:_PID=83進(jìn)程pid
?
對(duì)systemd-journald管理:
要想關(guān)機(jī)重啟后日志信息還存在,則需要將日志信息存放在文件里,主要操作為:
mkdir ?????/var/log/journal ?????????????????????????:創(chuàng)建目錄
chown ????root:systemd-journal ????/var/log/journal ???:更改目錄所有人和所有組
chmod ?????2755 /var/log/journal ????????????????????:更改權(quán)限,使得在在此目錄下創(chuàng)建的文件均屬于該目錄
killall ???-1 ???systemd-journal ??????????????????????:在不關(guān)閉進(jìn)程的情況下重新加載配置
cd ?????/var/log/journal ?????????????????????:移到/var/log/journal
ls ???????????????????????????????????????????:查看/var/log/journal的目錄
cd ?????/var/log/journal/目錄 ?????????????????
里面存放的是數(shù)據(jù),不能用cat查看,cat只能查看純文本,所以要用file查看
?
?
八 時(shí)間同步
?
1 服務(wù)端
?
?
yum install chrony -y:安裝服務(wù)
?
vim /etc/chrony.conf:主配置文件
21 # Allow NTP client access from local network.
22 allow 172.25.0.0/24:允許誰去同步我的時(shí)間,以該服務(wù)器為時(shí)間同步服務(wù)器的網(wǎng)段
27 # Serve time even if not synchronized to any NTP server.
28 local stratum 10:不去同步任何人的時(shí)間,時(shí)間同步服務(wù)器級(jí)別,數(shù)字越大,級(jí)別越低
?
systemctl restart chronyd
systemctl stop firewalld
?
2.客戶端
vim /etc/chrony.conf
??3 server 0.rhel.pool.ntp.org iburst
??4 server 1.rhel.pool.ntp.org iburst====> server ntpserverip iburst
??5 server 2.rhel.pool.ntp.org iburst====>
??6 server 3.rhel.pool.ntp.org iburst
iburst:指立即同步
systemctl restart chronyd
?
?
?
?
?
九 timedatectl命令
?
EDT :時(shí)區(qū),美國(guó)東部夏令時(shí)間
地球分為24個(gè)時(shí)區(qū),每個(gè)時(shí)區(qū)都有自己的本地時(shí)間,為統(tǒng)一而普遍使用一個(gè)標(biāo)準(zhǔn)時(shí)間UTC(通用協(xié)調(diào)時(shí))。UTC與倫敦的本地時(shí)間相同
UTC + 時(shí)區(qū)差 = 本地時(shí)間
?
timedatectl ?status:顯示當(dāng)前時(shí)間信息
set-time:設(shè)定當(dāng)前時(shí)間
set-timezone:設(shè)定當(dāng)前時(shí)區(qū)
set-local-rtc 0|1:設(shè)定是否使用utc時(shí)間
其中rtc時(shí)間為硬件時(shí)間
?
/etc/adjtime ?????????:包含了調(diào)整硬件時(shí)鐘的數(shù)據(jù)
?
轉(zhuǎn)載于:https://blog.51cto.com/12774272/1915734
總結(jié)
- 上一篇: 明日方舟聚酸酯组哪里刷
- 下一篇: 王者冰心是什么