openlog
(PHP 4, PHP 5, PHP 7, PHP 8)
openlog — システムのロガーへの接続をオープンする
説明
openlog() は、プログラムによるシステムロガーへの接続をオープンします。
openlog() の使用は必須ではありません。この関数は、
必要に応じて syslog() により自動的に呼び出されます。
この場合、prefix
のデフォルト値は
false
となります。
パラメータ
prefix
-
文字列
prefix
が、各メッセージに追加されます。 flags
-
flags
引数は、 ログメッセージの生成時に使用されるロギング用オプションを指定します。openlog() のオプション 定数 説明 LOG_CONS
システムロガーにデータが送信される間にエラーが発生した場合、 直接、システムコンソールに書き込まれます。 LOG_NDELAY
直ちにロガーへの接続をオープンします。 LOG_ODELAY
(デフォルト) 最初のメッセージがロギングされるまで接続のオープンを遅延します。 LOG_PERROR
標準エラー出力にもログメッセージを出力します。 LOG_PID
各メッセージに PID も含めます。 LOG_CONS | LOG_NDELAY | LOG_PID
とします。 facility
-
引数
facility
には、 ロギングを行う際のメッセージ型を指定します。これにより、 (使用するシステムの syslog の設定に関して) 異なった facility を有するメッセージをどのように処理するかを指定できるようになります。openlog() の機能 定数 説明 LOG_AUTH
セキュリティ/認証用メッセージ (定数 LOG_AUTHPRIV
が定義されているシステムでは、代わりにそれを使用してください)LOG_AUTHPRIV
セキュリティ/認証 メッセージ (プライベート) LOG_CRON
クロックデーモン (cron や at) LOG_DAEMON
他のシステムデーモン LOG_KERN
カーネルメッセージ LOG_LOCAL0
...LOG_LOCAL7
ローカルでの使用のために確保されているもので、Windows では使用できません LOG_LPR
ラインプリンタサブシステム LOG_MAIL
メールサブシステム LOG_NEWS
USENET ニュース サブシステム LOG_SYSLOG
syslogd で内部的に生成されたメッセージ LOG_USER
一般的なユーザーレベルのメッセージ LOG_UUCP
UUCP サブシステム 注意:
Windows 環境で使用できるのは
LOG_USER
だけです。
戻り値
常に true
を返します。
+add a note
User Contributed Notes 1 note
Nimja ¶
11 years ago
To those curious; switching between different facilities is NOT an issue. There is no apparent memory overhead (nor slowdown) by calling openlog multiple(12 * 10000) times.
Shown by this example:
<?php
$facilities = array(
LOG_AUTH,
LOG_AUTHPRIV,
LOG_CRON,
LOG_DAEMON,
LOG_KERN,
LOG_LOCAL0,
LOG_LPR,
LOG_MAIL,
LOG_NEWS,
LOG_SYSLOG,
LOG_USER,
LOG_UUCP,
);
for ($i = 0; $i < 10000; $i++) {
foreach ($facilities as $facility) {
openlog('test', LOG_PID, $facility);
syslog(LOG_ERR, "This is a test: " . memory_get_usage(true));
}
}
?>