我的瞭解的rsyslog
是它是在Ubuntu機器上常見的syslog
服務器實現。Java到rsyslog:STDOUT或syslog?
Futhermore,我的理解是rsyslog
可以用來鉤/捕獲STDOUT
輸出以及標準syslog
消息。
最後,我瞭解是rsyslog
可以再往前任何捕捉消息(再次,無論是從STDOUT
未來或syslog
客戶端)到另一臺服務器,如日誌聚合,或其他rsyslog
服務器等。
所以第一關,如果什麼我上面已經指出不正確,請糾正我如何syslog
/rsyslog
工作的理解和他們彼此之間的關係開始了!
如果我的假設都或多或少正確的,那麼考慮到以下兩個選項:
- 選項#1:登錄到
STDOUT
和配置rsyslog
來捕獲流和轉發日誌消息發送到遠程進程(說一個日誌聚合器);或 - 選項#2:登錄到
syslog
和配置rsyslog
捕捉到它並轉發日誌消息相同的遠程過程
鑑於這兩個選項,我寧願#1,因爲:
- 當本地或從IDE運行時,
STDOUT
將打印到控制檯;和 - 任何非本地的環境中運行時,
STDOUT
只會得到「收集」的rsyslog
如果我選擇#2去,在本地運行,當我失去控制檯的知名度。
話雖如此,登錄到STDOUT
是否有任何安全/性能/其他問題/警告/陷阱,使選項#2更具吸引力/可取?如果是的話,他們是什麼?
Thanks @Will Hartung(+1) - 例如LogBack有一個'SyslogAppender',可以用來從Java進程登錄到'syslog'。我是否可以假設我需要配置'rsyslog'來捕獲這個'SyslogAppender'輸出並將其轉發到日誌聚合器?再次感謝! – DirtyMikeAndTheBoys 2014-08-27 20:37:22
您只需配置rsyslog,因爲它可以從各種來源獲取數據,然後將SyslogAppender配置爲指向您的rsyslog服務器。如果rsyslog也想轉發,那就這樣吧。 SyslogAppender不在乎,rsyslog也不知道它從SyslogAppender獲取數據,只是「某事」 – 2014-08-27 20:41:05