2011-12-29 127 views
2

Syslog是一種網絡協議,如RFC 5424和RFC 3164中所述。syslog是日誌標準還是協議標準?

-AND-

Syslog是* nix世界的標準。這就是你如何做日誌。即使在本地機器上,也不會創建UDP數據包。 (對吧?)協議和RFC在這裏不適用。

什麼是Syslog主要是協議還是日誌記錄標準?爲什麼?

我在問這個問題,以便我可以用相關信息更新維基百科頁面。在編輯頁面時,我是關注協議還是標準。這兩種做法是不可能的。這個問題的答案將會被考慮到頁面是否需要分成[Syslog]和[Syslog協議]。

回答

3

系統日誌命名源自BSD UNIX的事件通知系統。有兩個標準的接口。

一個接口是in the UNIX standard。它由openlog(),setlogmask(),syslog()closelog()函數以及syslog.h中的定義組成。應用程序可以使用此界面來創建事件。事件可能會轉到文件,控制檯,用戶列表或遠程主機;這不是由標準決定的。在Linux中,事件的處置由syslogd進程處理,遵循文件/etc/syslog.conf中定義的本地策略。

其他接口描述爲RFC 3164並在RFC 5424更新。它由用於將事件傳輸到具有UDP的遠程主機的協議組成。應用程序可以使用此接口來創建事件,但當它將事件轉發到遠程主機時,系統日誌協議的更常見用戶本身就是syslogd

說UNIX系統日誌數據包從不由UNIX主機創建是錯誤的。當需要管理多個主機時,通常會將部分或全部事件分配給指定的主機,以便有一個錯誤日誌來監視而不是多個。

+0

如果沒有更好的答案在幾天內到達,將接受答案。好的複製/粘貼材料。如果有更多資源,這將是完美的 – 2011-12-30 10:37:27

+0

除了已經獲得的UNIX標準以及相關的RFC和Linux手冊頁之外,哪些來源會更好? – MetaEd 2011-12-30 15:24:40

+0

沿着系統日誌的歷史沿線。隨着時間的推移,syslog()函數如何轉換爲syslog協議。歷史中的重要事件。希望我不要問太多,但你問。 :) – 2011-12-30 18:29:20