Nagios は、Windows、Linux、Unix のホストのステータス、スイッチやルーター、プリンターなどのネットワーク設定を効果的に監視できる、オープンソースの無料ネットワーク監視ツールです。システムやサービスの状態に異常が発生した場合には、直ちにWebサイトの運用・保守担当者にメールまたはSMSアラームで通知し、復旧後は通常のメールまたはSMS通知を送信します。
Nagios は、WeChat パブリック プラットフォームの API インターフェイスを呼び出して、アラーム メールを送信します。正式な運用の前に、いくつかの準備を行う必要があります。まず nagios をインストールします。私が提供した nagios ワンクリック インストール スクリプトを使用できます。次に、WeChat パブリック プラットフォームにアクセスして、企業アカウントを申請しました。認証なしで使用できる組織名を入力しました。最後に、パブリック プラットフォームにログインしてアドレス帳を追加し、後で使用できるように新しいアプリケーション (nagios など) を作成します。ユーザー権限は自分で設定します。
WeChat スクリプト
nagios と WeChat プラットフォームの準備ができたら、WeChat コマンド スクリプトをダウンロードします。 「ダウンロードして保存」を右クリックします。次に、それを nagios サーバー (/usr/local/nagios/python/weixin ディレクトリなど) にアップロードし、ファイルのアクセス許可を実行可能に設定します。 /usr/local/nagios/python/weixin ディレクトリに新しい config.py ファイルを作成し、次の構成を追加します。
#coding:utf-8 CorpID='xxxxx' Secret='xxxxxxxxxxxxxxxxx' DEBUG=0 ToUser='sijitao.net' AgentId=1
CorpID と Secret は、WeChat パブリック プラットフォームにログインし、追加されたアプリケーション (nagios など) を開くことで取得できます。
WeChat スクリプト コマンドによって渡されるパラメーターは、「-@@-」記号で区切られています。詳細な手順については、私の github アドレスを参照してください: https://github.com/zhangnq/nagios/tree/master/weixin
Nagiosの設定
以下はnagiosの一般的な設定です。
weixinコマンドをcommands.cfgコマンドファイルに追加します:
define command{ command_name notify-host-by-weixin command_line /usr/local/nagios/python/weixin/NotifyByWeixin.py "host-@@-$NOTIFICATIONTYPE$-@@-$HOSTNAME$-@@-$HOSTSTATE$-@@-$HOSTADDRESS$-@@-$HOSTOUTPUT$-@@-$CONTACTALIAS$" } define command{ command_name notify-service-by-weixin command_line /usr/local/nagios/python/weixin/NotifyByWeixin.py "service-@@-$NOTIFICATIONTYPE$-@@-$SERVICEDESC$-@@-$HOSTALIAS$-@@-$HOSTADDRESS$-@@-$SERVICESTATE$-@@-$SERVICEOUTPUT$-@@-$CONTACTALIAS$" }
templates.cfg 連絡先テンプレートをテンプレートファイルに追加します:
define contact{ name weixin-contact service_notification_period 24x7 host_notification_period 24x7 service_notification_options w,u,c,r,f,s host_notification_options d,u,r,f,s service_notification_commands notify-service-by-weixin host_notification_commands notify-host-by-weixin register 0 }
contacts.cfg WeChat通知連絡先を連絡先に追加します。ここではエイリアス名です。正常に送信するには、WeChat パブリック プラットフォームのアドレス帳のアカウント名と同じである必要があります。
define contact{ contact_name zhangnq-weixin use weixin-contact alias zhangnq email admin@sijitao.net }
最後に、サービスの設定時に連絡先 zhangnq-weixin を追加すると、WeChat を通じてアラームメールを送信できるようになります。
Nagios を使用して WeChat アラーム通知を追加する方法について編集者が共有した Python 関数については以上です。お役に立てば幸いです。
Nagios を使用して WeChat アラーム通知機能を追加する Python に関するその他の関連記事については、PHP 中国語 Web サイトに注目してください。