syslog-ngにログを送信する複数のf5デバイスがあるシステムがあります。 syslog-ng を次のように設定します。
/path/to/directory/$HOST.
/localが[ホスト名]フィールドにあるため、次に送信しようとすると問題が発生します。
/path/to/directory/local/ or /path/to/directory/slot1/.
ディレクトリを作成したくないので、エラーは次のようになります。
Directory does not exist.
syslog-ng書き換えルールを使用して、ホスト名の/ localと/ slot1をlocal-とSlot-に置き換えようとしましたが、うまくいかないようです。
書き換え規則は次のとおりです。
rewrite r_f5{
subst("slot1/", "slot1-", value("HOST"), flags("global"), flags("ignore-case"));
subst("slot1/", "slot1-", value("MESSAGE"), flags("global"), flags("ignore-case"));
subst("local/", "local-", value("HOST"), flags("global"), flags("ignore-case"));
subst("local/", "local-", value("MESSAGE"), flags("global"), flags("ignore-case"));
};
メッセージルールは、ホストルールが機能しないために発生します。
ロギングルールは次のとおりです。
log { source(s_network_f5); rewrite(r_f5); destination(d_network_f5);};
書き換えルールに問題がありますか?