新しいsyslog機能を追加します


27

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

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

syslogのインターフェイスは、唯一の定数で定義された施設の固定セットを、ことができます/usr/include/sys/syslog.h。カスタムファシリティの唯一のプロビジョニングはlocal0を介していlocal7ます。

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


7

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

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

2
どのsyslog実装を参照していますか?(またはこの標準ですか?)
sr_

1
この行を/etc/rsyslog.confに追加すると、rsyslogd 8.4.2で動作しました
ztk
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.