0

私は何かを書いていて、ロギングに Linux API を利用したいと思っていました。アプリのログを別のファイルに入れたかったので、それらの行を rsyslog.conf に追加しました。

if $programname == 'RearWindowDaemon' then /var/log/RearWindowDaemon.log 
if $programname == 'RearWindow' then /var/log/RearWindow.log

しかし、この単純なコードでも何かが機能していません:

int main()
{
openlog("RearWindow",0,LOG_LOCAL0);
syslog(LOG_ERR,"some err");
syslog(LOG_ERR,"other err");
return;
}

ログを に取得し、 に取得し/var/log/syslogません/var/log/RearWindow

もっと何かするべきですか?問題があれば、XUbuntu 11.10 を使用しています。

4

1 に答える 1

0

多分ちょっと遅いです。しかし、私が理解できることは、「RearWindow」という名前のバイナリを生成するようにコードをコンパイルする必要があるということです。$programname は、ログに文字列 'RearWindow' が含まれているのではなく、指定された名前のプロセスからログが送信されているかどうかを確認します。うまくいけば、これが役に立ちます。

于 2013-03-25T07:40:42.447 に答える