web-dev-qa-db-ja.com

新しいsyslog機能を追加する

PHP=ベースのサイトからのメッセージをログに記録するためにsyslogを使用したいと思います。私の質問は-カスタム機能名を追加できますか?次のような事前定義された機能があることを知っています:

auth, authpriv, cron, dæmon, kern, lpr, mail, mark, news, syslog, user, UUCP and local0 through local7.

そして、私が理解しているように、これにはlocal0-local6機能を使用できます。

しかし、syslogに次のようなものを追加できた場合、

mySiteName.* /var/log/mySiteName.log

他の人にとっては視覚的に理解しやすいでしょう。残念ながら、上記の結果は次のようになります。

rsyslogd-3000: unknown facility name "mySiteName"

では、カスタム施設名を使用する方法はありますか?

27
Stann

syslog インターフェースは、/usr/include/sys/syslog.hの定数によって定義された固定の機能セットのみを許可します。カスタム機能の唯一の規定は、local0からlocal7までです。

さまざまなサーバーのログを分離するためにできることは、フィルターを使用して、各ログメッセージのオリジンまたはテキストを照合することです。 Rsyslogにはかなり強力な filters があります( マッチングに利用できるプロパティ を読んでください)。

質問に正確に当てはまるわけではありませんが、デーモンが独自の機能を提供していない場合の有用な例:

:programname, isequal, "uptimed" /var/log/uptimed.log
7
eMPee584