<em id="0a85b"><option id="0a85b"></option></em>

<abbr id="0a85b"></abbr>

      <nobr id="0a85b"></nobr>
        <tr id="0a85b"></tr>
        9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
        學習啦 > 學習電腦 > 操作系統 > Linux教程 > Linux操作系統中的日志功能詳解

        Linux操作系統中的日志功能詳解

        時間: 春健736 分享

        Linux操作系統中的日志功能詳解

          日志系統將我們系統運行的每一個狀況信息都使用文字記錄下來,這些信息有助我們觀察系統運行過程中正常狀態和系統運行錯誤時快速定位錯誤位置的途徑等;下面學習啦小編主要概述一下Linux操作系統中的日志功能。

          Linux操作系統中的日志功能詳解

          大部分Linux發行版默認的日志守護進程為 syslog,位于 /etc/syslog 或 /etc/syslogd,默認配置文件為 /etc/syslog.conf,任何希望生成日志的程序都可以向 syslog 發送信息。

          Linux系統內核和許多程序會產生各種錯誤信息、警告信息和其他的提示信息,這些信息對管理員了解系統的運行狀態是非常有用的,所以應該把它們寫到日志文件中去。完成這個過程的程序就是syslog。syslog可以根據日志的類別和優先級將日志保存到不同的文件中。例如,為了方便查閱,可以把內核信息與其他信息分開,單獨保存到一個獨立的日志文件中。默認配置下,日志文件通常都保存在“/var/log”目錄下。

          日志類型

          下面是常見的日志類型,但并不是所有的Linux發行版都包含這些類型:

          日志優先級

          常見的日志優先級請見下標:

        優先級 說明
        emerg 緊急情況,系統不可用(例如系統崩潰),一般會通知所有用戶。
        alert 需要立即修復,例如系統數據庫損壞。
        crit 危險情況,例如硬盤錯誤,可能會阻礙程序的部分功能。
        err 一般錯誤消息。
        warning 警告。
        notice 不是錯誤,但是可能需要處理。
        info 通用性消息,一般用來提供有用信息。
        debug 調試程序產生的信息。
        none 沒有優先級,不記錄任何日志消息。

          常見日志文件

          所有的系統應用都會在 /var/log 目錄下創建日志文件,或創建子目錄再創建日志文件。例如:

          /etc/syslog.conf 文件

          /etc/syslog.conf 是 syslog 的配置文件,會根據日志類型和優先級來決定將日志保存到何處。典型的 syslog.conf 文件格式如下所示:

          *.err;kern.debug;auth.notice /dev/console

          daemon,auth.notice /var/log/messages

          lpr.info /var/log/lpr.log

          mail.* /var/log/mail.log

          ftp.* /var/log/ftp.log

          auth.* @see.xidian.edu.cn

          auth.* root,amrood

          netinfo.err /var/log/netinfo.log

          install.* /var/log/install.log

          *.emerg *

          *.alert |program_name

          mark.* /dev/console

          第一列為日志類型和日志優先級的組合,每個類型和優先級的組合稱為一個選擇器;后面一列為保存日志的文件、服務器,或輸出日志的終端。syslog 進程根據選擇器決定如何操作日志。

          對配置文件的幾點說明:

          日志類型和優先級由點號(.)分開,例如 kern.debug 表示由內核產生的調試信息。

          kern.debug 的優先級大于 debug。

          星號(*)表示所有,例如 *.debug 表示所有類型的調試信息,kern.* 表示由內核產生的所有消息。

          可以使用逗號(,)分隔多個日志類型,使用分號(;)分隔多個選擇器。

          對日志的操作包括:

          將日志輸出到文件,例如 /var/log/maillog 或 /dev/console。

          將消息發送給用戶,多個用戶用逗號(,)分隔,例如 root, amrood。

          通過管道將消息發送給用戶程序,注意程序要放在管道符(|)后面。

          將消息發送給其他主機上的 syslog 進程,這時 /etc/syslog.conf 文件后面一列為以@開頭的主機名,例如@see.xidian.edu.cn。

          logger 命令

          logger 是Shell命令,可以通過該命令使用 syslog 的系統日志模塊,還可以從命令行直接向系統日志文件寫入一行信息。

          logger命令的語法為:

          logger [-i] [-f filename] [-p priority] [-t tag] [message...]

          每個選項的含義如下:

          例如,將ping命令的結果寫入日志:

          $ ping 192.168.0.1 | logger -it logger_test -p local3.notice&

          $ tail -f /var/log/userlog

          Oct 6 12:48:43 kevein logger_test[22484]: PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.

          Oct 6 12:48:43 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=1 ttl=253 time=49.7 ms

          Oct 6 12:48:44 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=2 ttl=253 time=68.4 ms

          Oct 6 12:48:45 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=3 ttl=253 time=315 ms

          Oct 6 12:48:46 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=4 ttl=253 time=279 ms

          Oct 6 12:48:47 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=5 ttl=253 time=347 ms

          Oct 6 12:48:49 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=6 ttl=253 time=701 ms

          Oct 6 12:48:50 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=7 ttl=253 time=591 ms

          Oct 6 12:48:51 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=8 ttl=253 time=592 ms

          Oct 6 12:48:52 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=9 ttl=253 time=611 ms

          Oct 6 12:48:53 kevein logger_test[22484]: 64 bytes from 192.168.0.1: icmp_seq=10 ttl=253 time=931 ms

          ping命令的結果成功輸出到 /var/log/userlog 文件。

          命令 logger -it logger_test -p local3.notice 各選項的含義:

          -i:在每行都記錄進程ID;

          -t logger_test:每行記錄都加上“logger_test”這個標簽;

          -p local3.notice:設置日志類型和優先級。

          日志轉儲

          日志轉儲也叫日志回卷或日志輪轉。Linux中的日志通常增長很快,會占用大量硬盤空間,需要在日志文件達到指定大小時分開存儲。

          syslog 只負責接收日志并保存到相應的文件,但不會對日志文件進行管理,因此經常會造成日志文件過大,尤其是WEB服務器,輕易就能超過1G,給檢索帶來困難。

          大多數Linux發行版使用 logrotate 或 newsyslog 對日志進行管理。logrotate 程序不但可以壓縮日志文件,減少存儲空間,還可以將日志發送到指定 E-mail,方便管理員及時查看日志。

          例如,規定郵件日志 /var/log/maillog 超過1G時轉儲,每周一次,那么每隔一周 logrotate 進程就會檢查 /var/log/maillog 文件的大小:

          如果沒有超過1G,不進行任何操作。

          如果在1G~2G之間,就會創建新文件 /var/log/maillog.1,并將多出的1G日志轉移到該文件,以給 /var/log/maillog 文件瘦身。

          如果在2G~3G之間,會繼續創建新文件 /var/log/maillog.2,并將 /var/log/maillog.1 的內容轉移到該文件,將 /var/log/maillog 的內容轉移到 /var/log/maillog.1,以保持 /var/log/maillog 文件不超過1G。

          可以看到,每次轉存都會創建一個新文件(如果不存在),命名格式為日志文件名加一個數字(從1開始自動增長),以保持當前日志文件和轉存后的日志文件不超過指定大小。

          logrotate 的主要配置文件是 /etc/logrotate.conf,/etc/logrotate.d 目錄是對 /etc/logrotate.conf 的補充,或者說為了不使 /etc/logrotate.conf 過大而設置。

          可以通過 cat 命令查看它的內容:

          $cat /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 //當轉儲后文件不存儲時創建它

          # uncomment this if you want your log files compressed

          #compress //以壓縮方式轉儲

          # RPM packages drop log rotation information into this directory

          include /etc/logrotate.d //其他日志文件的轉儲方式,包含在該目錄下

          # no packages own wtmp -- we'll rotate them here

          /var/log/wtmp { //設置/var/log/wtmp日志文件的轉儲參數

          monthly //每月轉儲

          create 0664 root utmp //轉儲后文件不存在時創建它,文件所有者為root,所屬組為utmp,對應的權限為0664

          rotate 1 //最多轉儲一次

          }

          注意:include 允許管理員把多個分散的文件集中到一個,類似于C語言的 #include,將其他文件的內容包含進當前文件。

          include 非常有用,一些程序會把轉儲日志的配置文件放在 /etc/logrotate.d 目錄,這些配置文件會覆蓋或增加 /etc/logrotate.conf 的配置項,如果沒有指定相關配置,那么采用 /etc/logrotate.conf 的默認配置。

          所以,建議將 /etc/logrotate.conf 作為默認配置文件,第三方程序在 /etc/logrotate.d 目錄下自定義配置文件。

          logrotate 也可以作為命令直接運行來修改配置文件。

        看過“ Linux操作系統中的日志功能詳解”的人還看了:

        1.Linux系統查看當前時間的命令

        2.Linux中如何使用find命令進行日志定期轉移

        3.linux怎么查看內存

        4.RedHat如何安裝log4cxx日志庫

        5.Tomcat怎么關閉日志輸出

        749404 主站蜘蛛池模板: 久久综合亚洲色一区二区三区| 不卡视频在线一区二区三区| 日韩在线视频线观看一区| 丁香花成人电影| 麻豆国产va免费精品高清在线| 中文字幕人妻日韩精品| 家庭乱码伦区中文字幕在线| 亚洲资源在线视频| 免费人妻精品一区二| 国产成人免费手机在线观看视频| 亚洲男人第一无码av网| 精品国产乱一区二区三区| 久久国产成人午夜av影院| 精品熟女少妇av免费观看| 亚洲超碰97无码中文字幕| 国产午夜在线观看视频播放| 精品久久一线二线三线区| 國产AV天堂| P尤物久久99国产综合精品| 天堂在线最新版av观看| 精品91精品91精品国产片| 90后极品粉嫩小泬20p| 好姑娘6电影在线观看| 欧美大bbbb流白水| 欧美不卡无线在线一二三区观| 日韩黄色网站| 精品亚洲国产成人av| 久久综合精品国产一区二区三区无 | 久久精品国产亚洲av麻| 99中文字幕精品国产| 麻豆一区二区中文字幕| 樱花草视频www日本韩国| 中文一级毛片| 五月丁香啪啪| 亚洲熟妇自偷自拍另类| 日韩中av免费在线观看| 俄罗斯性孕妇孕交| 激情久久av一区二区三区| 一本到综在合线伊人| 色综合久久综合久鬼色88| 日韩有码中文字幕国产|