6.01.2014

Python: How to Log Message to SysLog

Python: SysLog にメッセージを書き込む方法

 

syslog パッケージを使う。

 

使用例

スクリプトファイル中での使用を想定。

syslog_test.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import sys
import os
import syslog
 
def log_syslog(priority, message):
    prefix = {
        syslog.LOG_ERR: 'ERROR',
        syslog.LOG_WARNING: 'WARN',
        syslog.LOG_INFO: 'INFO',
    }[priority]
    syslog.openlog(os.path.basename(sys.argv[0]))
    syslog.syslog(priority, '%-7s%s' % ('[%s]' % prefix, message))
 
def log_error(message):
    log_syslog(syslog.LOG_ERR, message)
 
def log_warn(message):
    log_syslog(syslog.LOG_WARNING, message)
 
def log_info(message):
    log_syslog(syslog.LOG_INFO, message)
 
log_error("error message")
log_warn("warn message")
log_info("info message")

SysLog の内容

May 31 15:11:34 xxxx syslog_test.py: [ERROR]error message
May 31 15:11:34 xxxx syslog_test.py: [WARN] warn message
May 31 15:11:34 xxxx syslog_test.py: [INFO] info message

0 件のコメント:

コメントを投稿