Linux環境でrsyslogからスクリプト(シェル、Pythonなど)を実行したい

 rsyslogのコンフィグにて、次の設定を行うと、rsyslogで受け取ったログをシェルへ渡し、シェルで処理することが可能となります。

また、templateパラメータで受け渡すログをある程度整形することも可能です。ここでは、シェルの書き方、テンプレートの書き方は、ここでは記載しません。

rsyslogからのスクリプト起動ユーザは、syslogのため起動するスクリプトには、syslogユーザへの実行権、出力されるファイルも同様になるため権限付与に気を付ける必要があります。

 

記述例:

module(load=”omprog”)

action(

 type=”omprog”

 binary=”/usr/local/bin/xxxxxx.sh”

    template = “xxxxx”

)

 

この機能の利用事例として、

syslogを送信する機器から、zabbixサーバへsyslog送信するため、Syslogを転送する機器から、syslogサーバ(rsyslogサービス)でログを受け取り、rsyslogサービスからのスクリプトを起動する。

スクリプトでは、受け取ったログを送信先に合わせて整形し、整形後ログをzabbix_senderコマンドにて、Zabbixサーバへ送信までの処理を実施しています。

いいね (←参考になった場合はハートマークを押して評価お願いします)
読み込み中...

注意事項・免責事項

※技術情報につきましては投稿日時点の情報となります。投稿日以降に仕様等が変更されていることがありますのでご了承ください。

※公式な技術情報の紹介の他、当社による検証結果および経験に基づく独自の見解が含まれている場合がございます。

※これらの技術情報によって被ったいかなる損害についても、当社は一切責任を負わないものといたします。十分な確認・検証の上、ご活用お願いたします。

※当サイトはマイクロソフト社によるサポートページではございません。パーソルクロステクノロジー株式会社が運営しているサイトのため、マイクロソフト社によるサポートを希望される方は適切な問い合わせ先にご確認ください。
 【重要】マイクロソフト社のサポートをお求めの方は、問い合わせ窓口をご確認ください