FlossDoc: 請協力 GPLv3 的中文翻譯工作。

Syslog

FlossDoc,自由中文開源知識庫

Jump to: navigation, search

Syslog (system log) 是 UnixGNU/Linux 的標準日誌管理程式。包括 BIND、OpenSSH 和 Postfix 大部 Unix/Linux 上的應用程式都使用 syslog 作為收集和處理事件日誌的中心。而不少如 Apache 和 Snort 等自行管理日誌的應用程式亦容許話定把日誌傳給 syslog 處理。

目录

歷史

Syslog 原本是 Sendmail 的原作者 Eric Allman 在二十世紀 80 年代為 Sendmail 編寫作處理日誌的工具。在 4.2 BSD 和一些自舊 Unix 系統上,儲存日誌的檔案是在 Sendmail 的序列目錄 (/usr/spool/mqueue) 中的 syslog (/var/spool/mqueue/syslog)。然而,syslog 令處理包括 sendmail 和其以外日誌都很方便,所以 syslog 後來被獨立出來放入 BSD 基本系統中並成為各 Unix 系統的標準日誌管理程式,而有關支援函數亦被放入 Unix 的標準 C 函數庫中 (libc.a)[1]

機制

大部份 syslog 伺服器 (一般稱作 syslogd) 使用 socket 或 streams 來收集來自各本地軟件的日誌訊息並傳入適當的日誌檔案中。[2]

平台 Socket/Stream 檔案 方法
GNU/Linux /dev/log SOCK_STREAM unix socket,有些 distro 使用 SOCK_DGRAM
BSD /var/run/log SOCK_STREAM unix socket
Solaris (2.5 或以前) /dev/log SVR4 式 STREAMS 裝置
Solaris (2.6 或以後) /etc/.syslog_door 稱為 door 的多線程 IPC 方法
HP-UX 11 或以後 /dev/log 填滿 2048 位元組的 named pipe
AIX 5.2 和 5.3 /dev/log SOCK_STREAM 或 SOCK_DGRAM unix socket

Syslog 協定

實作

參考資料

  1. Frederick M. Avolio, Paul A. Vixie (1995). Sendmail: Theory and Practice. Digital Press. ISBN 1555581277
  2. Scheidler, Balázs (2009), Chapter 3.3. Sources and source drivers, The syslog-ng v3.0 Administrator Guide, 9th revision. BalaBit IT Security Ltd. Available from: <http://www.balabit.com/dl/html/syslog-ng-v3.0-guide-admin-en.html/ch03s03.html>.

相關連結

Personal tools