SYSLOG(3) FreeBSD ライブラリ関数マニュアル SYSLOG(3)
名称
syslog, vsyslog, openlog, closelog, setlogmask − システムログの制御 |
ライブラリ
標準 C ライブラリ (libc, −lc) |
書式
#include <syslog.h> void |
syslog(int priority, const char *message, ...); void |
vsyslog(int priority, const char *message, va_list args); void |
openlog(const char *ident, int logopt, int facility); void |
closelog(void); int |
setlogmask(int maskpri); |
解説 |
syslog() 関数は、システムのメッセージロガーにメッセージを書込みます。その メッセージは、次に状況に応じてシステムコンソール、ログファイル、ログイン したユーザなどに書込まれたり、他のマシンに転送されます ( syslogd(8) 参照) 。 メッセージは、 ‘%m’ が現在のエラーメッセージにより置き換えられることを除 けば、 printf(3) フォーマットストリングと同じものになります (グローバル変 数 errno によって示されるものと同じ。 strerror(3) 参照) 。何もない場合 は、末尾に改行が追加されます。 vsyslog() 関数は、 stdarg(3) の可変長引数機能を使ってすでに引数がキャプ チャされている場合の代替形式です。 メッセージには優先順位 ( priority ) のタグが付けられます。優先順位は、 facility と level にコード化されます。 facility は、メッセージを作成する システムの一部を記述します。 level は、順番になった (高い方から低い方へ) 次のような一覧から選択します: |
LOG_EMERG
パニック状態。これは、通常は全ユーザに送信されます。 LOG_ALERT LOG_CRIT LOG_ERR LOG_WARNING LOG_NOTICE LOG_INFO LOG_DEBUG openlog() 関数は、 syslog() および vsyslog() により送られたメッセージに対 して、より特殊な処理を施すためのものです。パラメータ ident は、すべての メッセージの前に付加されるストリングです。 logopt 引数は、ログ作成オプ ションを指定するビットフィールドで、次に示す値の 1 つ以上を OR 操作するこ とによって作成されます: LOG_CONS LOG_NDELAY LOG_PERROR LOG_PID facility パラメータは、明示的なファシリティがコード化されていないすべての メッセージに割り当てるデフォルトファシリティをコード化します: LOG_AUTH LOG_AUTHPRIV LOG_CONSOLE LOG_CRON LOG_DAEMON LOG_FTP LOG_KERN LOG_LPR LOG_MAIL LOG_NEWS LOG_SECURITY LOG_SYSLOG LOG_USER LOG_UUCP LOG_LOCAL0 closelog() 関数は、ログファイルを閉じるために使うことができます。 setlogmask() 関数は、ログ優先順位マスクを maskpri に設定し、以前のマスク を返します。 maskpri に設定されていない優先順位を持った syslog() への呼び 出しは拒絶されます。個別の優先順位 pri のためのマスクは、マクロ LOG_MASK(pri) によって計算されます。 toppri 自体を含む toppri までのすべ ての優先順位についてのマスクは、マクロ LOG_UPTO(toppri) によって与えられ ます。デフォルトでは、すべての優先順位をログすることを許可します。 戻り値 |
ルーチン closelog() 、 openlog() 、 syslog() 、および vsyslog() は、値を 返しません。 ルーチン setlogmask() は、常に前のログマスクレベルを返します。 |
例
syslog(LOG_ALERT, "who: internal error 23"); openlog("ftpd", LOG_PID | LOG_NDELAY, LOG_FTP); setlogmask(LOG_UPTO(LOG_ERR)); syslog(LOG_INFO, "Connection from host %d", CallingHost); syslog(LOG_INFO|LOG_LOCAL2, "foobar error: %m"); |
関連項目
歴史
これらの関数は 4.2BSD に現れました。 FreeBSD 10.0 June 4, 1993 FreeBSD 10.0 |