Linux日志系統(tǒng)以及日志文件功能詳解

2016年11月10日11:30:08 發(fā)表評(píng)論 4,308 ℃

Linux上的日志系統(tǒng)

syslog

syslog-ng: 開源

日志系統(tǒng):syslog()

A:
B:
D:
syslog服務(wù):

sysload:系統(tǒng),非內(nèi)核產(chǎn)生的信息
klogd:內(nèi)核,專門負(fù)責(zé)記錄內(nèi)核產(chǎn)生的日志信息

kernel-->物理終端(/dev/console)-->/var/log/dmesg

dmesg命令:

cat /var/log/dmesg 內(nèi)核產(chǎn)生的引導(dǎo)信息

日志需要滾動(dòng)(日志切割):
/sbin/init

/var/log/messages:系統(tǒng)標(biāo)準(zhǔn)錯(cuò)誤日志信息:非內(nèi)核產(chǎn)生引導(dǎo)信息:各子系統(tǒng)產(chǎn)生的信息
/var/log/maillog:郵件系統(tǒng)產(chǎn)生的日志信息
/var/log/secure: 

syslog:

syslogd
klogd
配置文件:/etc/rsyslog.conf

信息詳細(xì)程序:日志級(jí)別


子系統(tǒng):facility,設(shè)施

/etc/rsyslog.conf配置文件定義格式為: facility.priority        action 

facility,可以理解為日志的來源或設(shè)備目前常用的facility有以下幾種: 

    auth       # 認(rèn)證相關(guān)的 

    authpriv    # 權(quán)限,授權(quán)相關(guān)的 

    cron       # 任務(wù)計(jì)劃相關(guān)的 

    daemon      # 守護(hù)進(jìn)程相關(guān)的 

    kern        # 內(nèi)核相關(guān)的 

    lpr        # 打印相關(guān)的 

    mail       # 郵件相關(guān)的 

    mark       # 標(biāo)記相關(guān)的 

    news       # 新聞相關(guān)的 

    security    # 安全相關(guān)的,與auth 類似  

    syslog      # syslog自己的 

    user       # 用戶相關(guān)的 

    uucp       # unix to unix cp 相關(guān)的 

    local0 到 local7  # 用戶自定義使用 

    *         # *表示所有的facility 

 

 priority(log level)日志的級(jí)別,一般有以下幾種級(jí)別(從低到高) 

    debug           # 程序或系統(tǒng)的調(diào)試信息 

    info            # 一般信息

    notice          # 不影響正常功能,需要注意的消息 

    warning/warn      # 可能影響系統(tǒng)功能,需要提醒用戶的重要事件 

    err/error        # 錯(cuò)誤信息 

    crit            # 比較嚴(yán)重的 

    alert           # 必須馬上處理的 

    emerg/panic       # 會(huì)導(dǎo)致系統(tǒng)不可用的 

    *              # 表示所有的日志級(jí)別 

    none            # 跟* 相反,表示啥也沒有 

     

 action(動(dòng)作)日志記錄的位置 

    系統(tǒng)上的絕對(duì)路徑      # 普通文件 如: /var/log/xxx 

    |                # 管道  通過管道送給其他的命令處理 

    終端              # 終端   如:/dev/console 

    @HOST             # 遠(yuǎn)程主機(jī) 如: @10.0.0.1      

    用戶              # 系統(tǒng)用戶 如: root 

    *                # 登錄到系統(tǒng)上的所有用戶,一般emerg級(jí)別的日志是這樣定義的 

定義格式例子: 

mail.info   /var/log/mail.log # 表示將mail相關(guān)的,級(jí)別為info及 

                      # info以上級(jí)別的信息記錄到/var/log/mail.log文件中 

auth.=info  @10.0.0.1         # 表示將auth相關(guān)的,基本為info的信息記錄到10.0.0.1主機(jī)上去 

                       # 前提是10.0.0.1要能接收其他主機(jī)發(fā)來的日志信息 

user.!=error                # 表示記錄user相關(guān)的,不包括error級(jí)別的信息 

user.!error                 # 與user.error相反 

*.info                    # 表示記錄所有的日志信息的info級(jí)別 

mail.*                    # 表示記錄mail相關(guān)的所有級(jí)別的信息 

*.*                      # 你懂的. 

cron.info;mail.info           # 多個(gè)日志來源可以用";" 隔開 

cron,mail.info              # 與cron.info;mail.info 是一個(gè)意思 

mail.*;mail.!=info           # 表示記錄mail相關(guān)的所有級(jí)別的信息,但是不包括info級(jí)別的

日志文件功能詳解

1./var/log/messages — 包括整體系統(tǒng)信息,其中也包含系統(tǒng)啟動(dòng)期間的日志。此外,mail,cron,daemon,kern和auth等內(nèi)容也記錄在var/log/messages日志中。

2./var/log/dmesg — 包含內(nèi)核緩沖信息(kernel ring buffer)。在系統(tǒng)啟動(dòng)時(shí),會(huì)在屏幕上顯示許多與硬件有關(guān)的信息。可以用dmesg查看它們。

3./var/log/auth.log — 包含系統(tǒng)授權(quán)信息,包括用戶登錄和使用的權(quán)限機(jī)制等。

4./var/log/boot.log — 包含系統(tǒng)啟動(dòng)時(shí)的日志。

5./var/log/daemon.log — 包含各種系統(tǒng)后臺(tái)守護(hù)進(jìn)程日志信息。

6./var/log/dpkg.log – 包括安裝或dpkg命令清除軟件包的日志。

7./var/log/kern.log – 包含內(nèi)核產(chǎn)生的日志,有助于在定制內(nèi)核時(shí)解決問題。

8./var/log/lastlog — 記錄所有用戶的最近信息。這不是一個(gè)ASCII文件,因此需要用lastlog命令查看內(nèi)容。

9./var/log/maillog /var/log/mail.log — 包含來著系統(tǒng)運(yùn)行電子郵件服務(wù)器的日志信息。例如,sendmail日志信息就全部送到這個(gè)文件中。

10./var/log/user.log — 記錄所有等級(jí)用戶信息的日志。

11./var/log/Xorg.x.log — 來自X的日志信息。

12./var/log/alternatives.log – 更新替代信息都記錄在這個(gè)文件中。

13./var/log/btmp – 記錄所有失敗登錄信息。使用last命令可以查看btmp文件。例如,”last -f /var/log/btmp | more“。

14./var/log/cups — 涉及所有打印信息的日志。

15./var/log/anaconda.log — 在安裝Linux時(shí),所有安裝信息都儲(chǔ)存在這個(gè)文件中。

16./var/log/yum.log — 包含使用yum安裝的軟件包信息。

17./var/log/cron — 每當(dāng)cron進(jìn)程開始一個(gè)工作時(shí),就會(huì)將相關(guān)信息記錄在這個(gè)文件中。

18./var/log/secure — 包含驗(yàn)證和授權(quán)方面信息。例如,sshd會(huì)將所有信息記錄(其中包括失敗登錄)在這里。

19./var/log/wtmp或/var/log/utmp — 包含登錄信息。使用wtmp可以找出誰正在登陸進(jìn)入系統(tǒng),誰使用命令顯示這個(gè)文件或信息等。

20./var/log/faillog – 包含用戶登錄失敗信息。此外,錯(cuò)誤登錄命令也會(huì)記錄在本文件中。

除了上述Log文件以外, /var/log還基于系統(tǒng)的具體應(yīng)用包含以下一些子目錄:

/var/log/httpd/或/var/log/apache2 — 包含服務(wù)器access_log和error_log信息。

/var/log/lighttpd/ — 包含light HTTPD的access_log和error_log。

/var/log/mail/ –  這個(gè)子目錄包含郵件服務(wù)器的額外日志。

/var/log/prelink/ — 包含.so文件被prelink修改的信息。

/var/log/audit/ — 包含被 Linux audit daemon儲(chǔ)存的信息。

/var/log/samba/ – 包含由samba存儲(chǔ)的信息。

/var/log/sa/ — 包含每日由sysstat軟件包收集的sar文件。

/var/log/sssd/ – 用于守護(hù)進(jìn)程安全服務(wù)。

除了手動(dòng)存檔和清除這些日志文件以外,還可以使用logrotate在文件達(dá)到一定大小后自動(dòng)刪除。可以嘗試用vim,tail,grep和less等命令查看這些日志文件。

【騰訊云】云服務(wù)器、云數(shù)據(jù)庫、COS、CDN、短信等云產(chǎn)品特惠熱賣中

發(fā)表評(píng)論

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: