本文簡要介紹ruby語言中 Syslog::Logger類
的用法。
Syslog::Logger
是一個 Logger
work-alike,它通過係統日誌而不是文件記錄。您可以使用 Syslog::Logger
在多台機器之間聚合日誌。
默認情況下, Syslog::Logger
使用程序名稱 ‘ruby’,但這可以通過 Syslog::Logger.new
的第一個參數進行更改。
筆記!第一次初始化 Syslog::Logger
時隻能設置 Syslog::Logger
程序名。這是 Syslog::Logger
使用 syslog 方式的限製(在某些方麵,也是 syslog(3) 工作方式的限製)。在第一次初始化後嘗試更改 Syslog::Logger
的程序名稱將被忽略。
示例
以下將記錄到本地計算機上的 syslogd:
require 'syslog/logger'
log = Syslog::Logger.new 'my_program'
log.info 'this line will be logged via syslog(3)'
還可以設置設施以指定將使用的設施級別:
log.info 'this line will be logged using Syslog default facility level'
log_local1 = Syslog::Logger.new 'my_program', Syslog::LOG_LOCAL1
log_local1.info 'this line will be logged using local1 facility level'
您可能需要先執行一些syslog.conf 設置。對於 BSD 機器,將以下行添加到 /etc/syslog.conf:
!my_program *.* /var/log/my_program.log
然後觸摸 /var/log/my_program.log 並使用 HUP(killall -HUP syslogd,在 FreeBSD 上)向 syslogd 發出信號。
如果您希望日誌自動翻轉和存檔,請參閱 newsyslog.conf(5) 和 newsyslog(8) 手冊頁。
相關用法
- Ruby Logger類用法及代碼示例
- Ruby Logger.info用法及代碼示例
- Ruby LoadError類用法及代碼示例
- Ruby Location.lineno用法及代碼示例
- Ruby Location.label用法及代碼示例
- Ruby Location.path用法及代碼示例
- Ruby Location類用法及代碼示例
- Ruby LocalJumpError類用法及代碼示例
- Ruby Lazy.collect用法及代碼示例
- Ruby Lazy.collect_concat用法及代碼示例
- Ruby Lazy.flat_map用法及代碼示例
- Ruby List.append用法及代碼示例
- Ruby Lazy._enumerable_map用法及代碼示例
- Ruby Lazy.enum_for用法及代碼示例
- Ruby List.prepend用法及代碼示例
- Ruby LDAP.build用法及代碼示例
- Ruby Lazy._enumerable_flat_map用法及代碼示例
- Ruby Lazy.new用法及代碼示例
- Ruby Lazy._enumerable_filter_map用法及代碼示例
- Ruby Lazy._enumerable_collect用法及代碼示例
- Ruby Lazy.filter_map用法及代碼示例
- Ruby Lazy.to_enum用法及代碼示例
- Ruby Lazy._enumerable_collect_concat用法及代碼示例
- Ruby Lazy.map用法及代碼示例
- Ruby LDAP.new用法及代碼示例
注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Logger類。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。