説明
int
syslog ( int priority, string message)
syslog()はシステムログが出力するログメッセージを
生成します。priorityは、容易さ(facility)と
レベル(level)の組み合わせで、その値については、次節で説明します。
残りの引数は送信するメッセージです。ただし、文字%m
は、errnoの値に
対応するエラーメッセージ文字列(strerror)に置換されます。
表 1syslog()の優先順位 (降順)
定数 | 説明 |
---|
LOG_EMERG | システムは使用不可 |
LOG_ALERT | アクションを直ちにおこす必要がある |
LOG_CRIT | 致命的な条件 |
LOG_ERR | エラーを発生する条件 |
LOG_WARNING | 警告を発生する条件 |
LOG_NOTICE | 通常の動作だが、特徴的な条件 |
LOG_INFO | 情報を与えるメッセージ |
LOG_DEBUG | デバッグ用のメッセージ |
例 1syslog()の使用例 <?php
define_syslog_variables();
// syslogをオープンし、プロセスIDをインクルードし、標準エラー出力にも
// ログを出力します。そして、ユーザ定義のログ記録機構を使用します。
openlog("myScripLog", LOG_PID | LOG_PERROR, LOG_LOCAL0);
// 何らかのコード
if (authorized_client()) {
// 何かをする
} else {
// クライアントは未認証!
// ログを記録する
$access = date("Y/m/d H:i:s");
syslog(LOG_WARNING,"Unauthorized client: $access $REMOTE_ADDR ($HTTP_USER_AGENT)");
}
closelog();
?> |
|
ユーザ定義のログハンドラの設定に関する情報については、UNIXマニュ
アルの
syslog.conf(5)を参照下さい。
syslog の facility と option に関するより詳細な情報は、
UNIXマシンの
syslog(3)にあります。
Windows NTでは、syslog サービスはイベントログを使用してエミュレー
トされます。
define_syslog_variables(),
openlog(),
closelog()も参照下さい。