日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

LINUX学习基础篇(三十五)日志管理

發(fā)布時間:2024/1/1 linux 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 LINUX学习基础篇(三十五)日志管理 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

LINUX學(xué)習(xí)基礎(chǔ)篇(三十五)日志管理

  • 日志管理
    • 系統(tǒng)中常見的日志文件
    • 日志文件格式
    • rsyslogd服務(wù)的配置文件
  • 日志輪替
    • logrotate配置文件
    • 配置文件夾 /etc/logrotate.d
    • 把自己日志加入輪替

日志管理

現(xiàn)在centos中使用的是rsyslogd日志管理服務(wù),是之前syslogd的升級版。
Linux中的日志文件一般保存在/var/log目錄下。

[root@localhost log]# ls anaconda cron-20220206 kdump.log private vmware-network.2.log audit cron-20220221 lastlog secure vmware-network.3.log boot.log cron-20220227 mail secure-20220206 vmware-network.4.log boot.log-20220204 cron-20220306 maillog secure-20220221 vmware-network.5.log boot.log-20220206 dnf.librepo.log maillog-20220206 secure-20220227 vmware-network.6.log boot.log-20220221 dnf.log maillog-20220221 secure-20220306 vmware-network.7.log boot.log-20220307 dnf.rpm.log maillog-20220227 spooler vmware-network.8.log boot.log-20220308 firewalld maillog-20220306 spooler-20220206 vmware-network.9.log boot.log-20220309 hawkey.log messages spooler-20220221 vmware-network.log boot.log-20220311 hawkey.log-20220206 messages-20220206 spooler-20220227 vmware-vgauthsvc.log.0 btmp hawkey.log-20220221 messages-20220221 spooler-20220306 vmware-vmsvc-root.log btmp-20220304 hawkey.log-20220227 messages-20220227 sssd vmware-vmtoolsd-root.log chrony hawkey.log-20220306 messages-20220306 tuned wtmp cron httpd pcp vmware-network.1.lo

系統(tǒng)中常見的日志文件

日志文件說明
/var/log/cron記錄了系統(tǒng)定時任務(wù)相關(guān)的日志。
/var/logs/dmesg記錄了系統(tǒng)在開機時內(nèi)核自檢的信息,也可以使用dmesg命令直接查看內(nèi)核自檢信息。
/var/log/btmp記錄錯誤登錄的日志,這個文件是二進制文件,需要用lastb命令查看。
/var/log/lastlog記錄所有用戶最后一次登錄時間的日志,需要用lastlog明令查看。
/var/log/mailog記錄郵件信息。
/var/log/message記錄系統(tǒng)中重要信息的日志,如果系統(tǒng)出了問題,首先要檢查的就應(yīng)該是這個日志。
/var/log/wtmp永久記錄所有用戶的登錄,需要用last命令來查看。
/var/log/secure記錄驗證和授權(quán)方面的信息,只要設(shè)計賬戶和密碼的程序都會記錄。

rpm包安裝的服務(wù)記錄的日志才會/var/log目錄下,源碼包安裝服務(wù)的日志則是在源碼包指定目錄中。

日志文件格式

只要是由日志服務(wù)rsyslogd記錄的日志文件,格式都是一樣的,基本日志格式有以下四列:

  • 事件產(chǎn)生的事件
  • 發(fā)生事件的服務(wù)器的主機名
  • 產(chǎn)生事件的服務(wù)名或程序名
  • 事件的具體信息

rsyslogd服務(wù)的配置文件

/etc/rsyslog.conf配置文件格式

[root@localhost log]# vim /etc/rsyslog.conf ... mail.* -/var/log/maillog #mail服務(wù)名 .連接符 *日志登記 -是指先存在內(nèi)存中,存滿后存在磁盤里 /var/log/maillog存放位置 *.emerg :omusrmsg:* #如果情況比emerg嚴重的,通知給所有用戶 ...

日志服務(wù)連接符號

  • “.”:代表只要比后面等級高,就記錄。
  • “.=”:代表只記錄所需等級的日志。
  • “.!”:除了該等級的日志,都記錄。

日志等級

等級名稱說明
debug一般的調(diào)試說明信息
info基本的通知信息
notice普通信息,但有一定的重要性
warning警告信息,但是還不會影響到服務(wù)或系統(tǒng)的運行
err錯誤信息,一般達到err等級的信息以及可以影響到服務(wù)或系統(tǒng)的運行
crit臨界狀況信息,比err嚴重
alert警告狀態(tài)信息,比crit嚴重,必須立即采取行動
emerg疼痛等級信息,系統(tǒng)已經(jīng)無法使用了
*所有日志等級

/etc/rsyslog.d/

# Include all config files in /etc/rsyslog.d/include(file="/etc/rsyslog.d/*.conf" mode="optional")

這一行的意思是所有/etc/syslog.d/*.conf的文件都會被包括進來,所以要想給指定的服務(wù)添加日志管理,可以寫入/etc/rsyslog.conf,也可以在/etc/rsyslog.d/文件中添加日志管理文件。

日志輪替

在工作中,我們需要保存一定時間范圍內(nèi)的日志文件,以分析和預(yù)防系統(tǒng)中可能出現(xiàn)的問題,這個時候,logrotate服務(wù)就很重要了,它是Linux提供的日志輪替服務(wù)。
日志輪替的功能就是把舊的日志文件改名,同時建立新的日志文件,把超過保存范圍時間的日志文件給刪除。如果配置文件中有"dateext"參數(shù),那么logrotate將會用日期來作為舊日志的后綴。

logrotate配置文件

[root@localhost log]# vim /etc/logrotate.conf # see "man logrotate" for details # rotate log files weekly weekly #輪替時間,一周輪替一次# keep 4 weeks worth of backlogs rotate 4 #會保存4個舊文件# create new (empty) log files after rotating old ones create# use date as a suffix of the rotated file dateext #舊日志會用日期作為后綴# uncomment this if you want your log files compressed #compress #輪替日志是否要壓縮,默認是關(guān)閉的# RPM packages drop log rotation information into this directory include /etc/logrotate.d #/etc/logrotate.d中的文件被包括進來,也是logrotate的配置文件# system-specific logs may be also be configured here.

英文是官方注釋,中文是解釋了一下。

配置文件夾 /etc/logrotate.d

[root@localhost logrotate.d]# ls bootlog btmp chrony dnf firewalld httpd kvm_stat sssd syslog wtmp [root@localhost logrotate.d]# vim /etc/logrotate.d/httpd /var/log/httpd/*log {missingoknotifemptysharedscriptsdelaycompresspostrotate/bin/systemctl reload httpd.service > /dev/null 2>/dev/null || trueendscript }

logrotate配置文件的參數(shù)解釋

參數(shù)解釋
daily每天輪替
weekly每周輪替
mouthly每月輪替
rotate 數(shù)字保留的日志個數(shù)
create mode owner group新建日志,并規(guī)定日志文件的權(quán)限、所有者、所屬組,如create 0600 root utmp
mail address當(dāng)日志輪替是,輸出內(nèi)容通過郵件地址發(fā)送到指定的郵件地址
missingok當(dāng)日止文件不存在時,忽略該日志文件的警告信息。
notifempty如果日志為空文件,則不進行日志輪替
minsize日志輪替的最小值,也就是日志一定要達到這個最小值才會輪替,否則就斷時間達到也不輪替
size日志只有達到指定大小才輪替,不按照時間輪替
dateext使用日期作為輪替文件后綴
sharedscripts該關(guān)鍵字后的腳本只執(zhí)行一次
prerotate/endscript在日志輪替之前執(zhí)行腳本命令
postrotate/endscript在日志輪替之后執(zhí)行腳本命令


被輪替日志的服務(wù)和rsyslogd需要在輪替后重啟一次,否則無法正常運行。

把自己日志加入輪替

  • 直接寫在/etc/logrotate.conf配置文件中。
  • 直接在/etc/logrotate.d/目錄中加入配置文件。

模板:

/date/logs/nginx/access/access.log /date/logs/nginx/access/default.log{dailyrotate 15sharedscriptspostrotate/bin/kill -HUP $(/bin/cat /var/run/syslog.pid) &>/dev/null#重啟rsyslogd服務(wù),平滑重啟/bin/kill -HUP $(/bin/cat /usr/local/nginx/logs/nginx.pid) &>/dev/null#重啟Nginx服務(wù)endscript }

ps:尚硅谷linux視頻課程學(xué)習(xí)筆記

總結(jié)

以上是生活随笔為你收集整理的LINUX学习基础篇(三十五)日志管理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。