setlogmask - ライブラリコールの説明 - Linux コマンド集 一覧表
名前
setlogmask - ログの優先度マスクを設定する
書式
#include <syslog.h>
int setlogmask(int mask);
説明
プロセスにはログ優先度マスク(log priority mask)が用意されていて、 これを用いて syslog (3) が呼び出された場合にログ記録を行うかどうかを決定する。 他のすべての関数が呼び出された場合はログ記録が行われない。 mask の各ビットは優先度に対応しており、対応するビットが 1 にセットされている 優先度に対してログ収集(logging)が有効になる。 マスクの初期値は、すべての優先度に対してログ収集が有効になるような値である。
setlogmask ()関数は、現在のプロセスに対するログマスクを設定し、 変更前のマスクを返す。 mask 引き数が 0 ならば、現在のログマスクは変更されない。
以下の8レベルの優先度が定義されている(優先度の高い順): LOG_EMERG、LOG_ALERT、LOG_CRIT、LOG_ERR、 LOG_WARNING、LOG_NOTICE、LOG_INFO、LOG_DEBUG。 優先度 p に対応するビット列は LOG_MASK(p ) によって求められる。 優先度 p 以上のすべての優先度( p を含む)のマスクビットを 求めることができるマクロ LOG_UPTO(p ) を使用できるシステムもある。
返り値
変更前のログ優先度マスクの値を返す。
エラー
なし。
注意
glibc 2.1.1 より前のバージョンでは glibc のログマスクの扱いに不具合がある。
準拠
POSIX.1-2001. POSIX.1-2001 での説明には欠陥があることに注意すること。
関連項目
closelog
(3),
openlog
(3),
syslog
(3)