Linux作業系統之日誌管理

2021-10-23 10:29:15 字數 3158 閱讀 5238

1、處理日誌的程序

第一類:rsyslogd: 系統專職日誌程式。絕大部分日誌記錄,系統操作有關的資訊,如登入資訊,程式啟動關閉資訊,錯誤資訊。

第二類:httpd/nginx/mysql: 各類應用程式,可以以自己的方式記錄日誌。

2、常見的日誌檔案(系統、程序、應用程式)

# tail -f /var/log/messages  //動態檢視日誌檔案的尾部

# tailf /var/log/secure    //認證、安全

# tailf /var/log/yum.log   //yum

# tailf /var/log/maillog    //跟郵件postfix相關

# tailf /var/log/cron    //crond、at程序產生的日誌

# tailf  /var/log/dmesg    //和系統啟動相關     

tail -f 可以簡寫為tailf

3、rsyslog配置

相關程式

yum -y install rsyslog  logrotate     (預設已安裝)

啟動程式

systemctl  start  rsyslog

觀察日誌的配置檔案

rpm  -qc   rsyslog     (可以看到一下三個檔案)

/etc/rsyslog.confrsyslogd的主配置檔案

/etc/sysconfig/rsyslog      rsyslogd相關檔案,定義級別

etc/logrotate.d/syslog      和日誌輪轉(切割)相關

4、主配置檔案

告訴rsyslogd程序什麼日誌,應該存到**。

開啟主配置檔案:

vim /etc/rsyslog.conf

開啟主配置檔案,找到裡面的rules那一條,rules:即規則,是一套生成日誌,以及儲存日誌的策略。

rules即規則,有三部分組成(由裝置+級別+存放位置)  rules由facility+level+file組成。下面是rules裡包含的一些規則,在.的左側是裝置名稱,右側是級別(一般都是*『所有級別』) 最右側就是日誌檔案的位置。

authpriv.*         /var/log/secure(ssh資訊)

mail.*-/var/log/maillog(發郵件) 這裡有乙個-符號, 表示是使用非同步的方式記錄, 因為日誌一般會比較大

cron.*             /var/log/cron(建立任務)

*.info;mail.none;authpriv.none;cron.none                /var/log/messages   系統日誌排除了郵件,認證,計畫日誌。

下面的圖可以清晰的反映三者之間的關係:

1、簡介

日誌  記錄了程式執行時各種資訊。通過日誌可以分析使用者行為,記錄執行軌跡,查詢程式問題。可惜磁碟的空間是有限的。日誌輪轉就像飛機裡的黑匣子,記錄的資訊再重要也只能記錄最後一段時間發生的事。為了節省空間和整理方便,日誌檔案經常需要按時間或大小等維度分成多份,刪除時間久遠的日誌檔案。

2、工作原理

按照配置進行輪轉

配置檔案種類

① 主配置檔案

/etc/logrotate.conf     (決定每個日誌檔案如何輪轉)

vim /etc/logrotate.conf   //檢視logrotate主配置檔案中的資訊

# 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 //是否壓縮

# rpm packages drop log rotation information into this directory

include /etc/logrotate.d //包含子配置檔案

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

/var/log/wtmp

/var/log/btmp

# system-specific logs may be also be configured here.

②  子配置資料夾

/etc/logrotate.d/*

使用者自定義配置,方便管理。在這裡設定的輪轉規則只適用於設定的乙個或幾個程式。如果沒有單獨設定,則程式遵循主配置檔案的輪轉規則。

③ yum日誌輪轉示例

輪轉的目標檔案

/var/log/yum.log   在這裡檢視輪轉的資訊

vim /etc/logrotate.d/yum    //配置yum的輪轉規則

/var/log/yum.log

linux基礎之日誌管理

分為兩類 1.rsyslog 系統日誌管理 2.logrotate 日誌輪轉 一 處理日誌的程序 rsyslogd 系統專職日誌程式。處理絕大部分日誌記錄,系統操作有關的資訊,如登陸資訊,程式啟動關閉資訊,錯誤資訊 二 常見的日誌檔案 tail 10 var log messages 系統主日誌檔案...

Ubuntn 作業系統學習筆記之日誌介紹

儲存相關程式的執行狀態 錯誤資訊等 對系統進行分析 儲存歷史記錄 在出現錯誤的時候,能發現錯誤 並對錯誤進行分析 核心資訊 一些底層的資訊,如安裝乙個硬體裝置 服務資訊 應用程式資訊 linux系統中用來實現日誌功能的服務,rsyslog是sysylog的增強版 在centos5 rhel5版本 以...

Linux作業系統管理 日誌管理和分析

水平集 日誌管理 這部分包括一些開源技術,這些技術基本上是針對基於主機的日誌記載,日誌檔案轉儲和日誌檔案分析。很多任務具都是免費的 開源軟體,在很多主要的linux系統中都有整合,包括主流的rethat和novell。logrotate logrotate是在大量linux系統中非常流行的應用程式工...