6.01.2014

Python: How to Log Message to SysLog

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

 

syslog パッケージを使う。

 

使用例

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

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 件のコメント:

コメントを投稿