1. 程式人生 > 其它 >日誌服務管理

日誌服務管理

日誌服務管理

目錄

系統日誌管理

系統日誌介紹

日誌檔案用於記錄linux系統的各種執行資訊的檔案,相當於linux主機的日記,不同的日誌檔案記載了不同型別的資訊,如Linux核心訊息、使用者登入事件、程式錯誤等。.
日誌檔案對於診斷和解決問題很有幫助,因為linux執行的程式通常把系統的訊息和錯誤寫入對應的日誌檔案,這樣系統可以有據可查, 此外,當主機遭受攻擊時,日誌檔案還可以幫助尋找攻擊者留下的痕跡。

日誌記錄的內容包括:

  • 歷史事件:時間,地點,人物,事件
  • 日誌級別:事件的關鍵性程度,Loglevel

sysklogd 系統日誌服務

CentOS 5 之前版本採用的日誌管理系統服務

  • syslogd: system application 記錄應用日誌
  • klogd: linux kernel 記錄核心日誌

事件記錄格式:

日期時間 主機 程序[pid]: 事件內容

C/S架構:通過TCP或UDP協議的服務完成日誌記錄傳送,將分佈在不同主機的日誌實現集中管理

rsyslog 系統日誌服務

rsyslog是CentOS 6以後版本的系統管理服務:它提供了高效能,出色的安全性和模組化設計。儘管rsyslog最初是常規的syslogd,但發展成為一種瑞士軍刀式的記錄工具,能夠接受來自各種來源的輸入,並將其轉換,然後輸出到不同的目的地。

當應用有限的處理時,RSYSLOG每秒可以將超過一百萬的訊息傳遞到本地目的地。即使在遠端的目的地和更精細的處理中,效能通常也被認為是驚人的”。

rsyslog 特性

  • 多執行緒
  • UDP, TCP, SSL, TLS, RELP
  • MySQL, PGSQL, Oracle實現日誌儲存
  • 強大的過濾器,可實現過濾記錄日誌資訊中任意部分
  • 自定義輸出格式
  • 適用於企業級中繼

ELK

ELK:由Elasticsearch, Logstash, Kibana三個軟體組成

  • 非關係型分散式資料庫基於apache軟體基金會jakarta專案組的專案lucene
  • Elasticsearch是個開源分散式搜尋引擎,可以處理大規模日誌資料,比如:Nginx、Tomcat、系統日誌等功能
  • Logstash對日誌進行收集、分析,過濾,並將其儲存供以後使用
  • Kibana 可以提供的日誌分析友好的 Web 介面

rsyslog管理

系統日誌術語

facility:設施,從功能或程式上對日誌進行歸類

auth:密碼認證相關日誌

authpriv: 授權相關的日誌

cron:定時任務相關日誌

daemon: 系統服務相關的日誌

ftp:ftp守護程序產生的曰志

kern: 核心相關的日誌

lpr: 列印相關的日誌

mail: 郵件相關的日誌

news: 新聞相關的日誌

security: 安全相關的日誌

user: 使用者相關的日誌

uucp: 檔案copy相關的日誌

syslog:系統日誌

自定議的分類
local 0-7

日誌等級

等級名稱 說 明
debug (LOG_DEBUG) 一般的除錯資訊說明
info (LOG_INFO) 基本的通知資訊
notice (LOG_NOTICE) 普通訊息,但是有一定的重要性
warning(LOG_WARNING) 警吿資訊,但是還不會影響到服務或系統的執行
error(LOG_ERR) 錯誤資訊, 一般達到err等級的資訊已經可以影響到服務成系統的運行了
crit (LOG_CRIT) 臨界狀況信思,比err等級還要嚴®
alert (LOG_ALERT) 狀態資訊,比crit等級還要嚴重,必須立即採取行動
emerg (LOG_EMERG) 疼痛等級資訊,系統已經無法使用了
* 代表所有日誌等級。比如,“authpriv.*”代表amhpriv認證資訊服務產生的日誌,所有的日誌等級都記錄

rsyslog 配置檔案

檔案位置:/etc/rsyslog.conf

實際操作

將ssh服務的日誌單獨設定

網路日誌(遠端日誌功能)

作用:將多臺伺服器的日誌檔案傳輸到一臺伺服器

示例(一臺對一臺)

伺服器1

切換伺服器2

這裡注意:如果是用udp傳輸則ip地址前方加一個@即可tcp為兩個

切換伺服器1