【Hinemos】 HTTP監視を”コマンド監視”ライクに使う

この記事は10年以上前に書かれたものです。 情報が古い可能性があります。

先日リリースが発表されたHinemos 4.0に搭載予定のコマンド監視では、任意のコマンドの実行結果を閾値判定して監視を行うことができますが、実は現行バージョンのHinemosでも、これとある程度同じような監視を行うことができます。

現行バージョンのHinemosにも搭載されている”HTTP監視“は、任意のURIに対してリクエストを投げ、Webサーバから返却された値に対して、文字列の条件による監視を行うことができます。あらかじめWebサーバ上に、実行させたいコマンドをCGIとして配備しておけば、監視でポーリングを行う都度、WebサーバがCGIを実行してくれる、という寸法です。今回ご紹介する内容は、このように、Webサーバを”コマンド実行プロキシ“として利用するというものです。

それでは、実際の例をご紹介いたします。あまり実用性のない例で恐縮ですが、ここでは、行きつけのガソリンスタンドの”レギュラーガソリンの会員価格”を、インターネット上から取得して監視することにします。価格は今のところ130円台前半ですが、これが135円以上になったら警告、140円以上になったら危険を通知し、他のガソリンスタンドを検討する時期が来たことを知らせます。

まず、ガソリンの最新価格を表示しているインターネット上のWebページから、レギュラーガソリンの会員価格の箇所だけをスクレイピングするスクリプトを作成します。以下はPerlの実装例です(URIは架空のものに変えています)。

実装が完了したら、まずはコマンドラインから実行し、期待どおりの値が返却される事を確認します。

次に、このスクリプトをWebサーバ上の所定のディレクトリへ配置します。配置したら、Webブラウザから上記CGIを実行するためのURIへアクセスし、ブラウザの画面上に期待どおりの値が表示されることを確認します。

スクリプトの動作をブラウザ上で確認している様子

ここまでが順調にいけば、あとはHinemosへの登録のみです。HinemosのHTTP監視の設定ダイアログを開き、上記のURIや閾値などの情報を登録します。なお、文字列監視での監視となるため、正規表現に工夫が必要です。

HinemosでHTTP監視を設定している様子

監視項目を登録し、Hinemosで実際に監視が行われるかどうかを確認します。

うまくいったようです。なお、監視間隔は長くしたりカレンダで抑制する等して、ガソリン価格を公開しているWebサーバに過剰な負荷をかけないように注意する必要があります。

以上、HTTP監視を”コマンド監視”のように使用する方法についてご紹介しました。なお今回は、インターネット上から欲しい情報をスクレイピングして監視する例でしたが、この他にも様々な活用法が考えられると思いますので、いろいろと考えてみるのも楽しいと思います。


ご意見やお問い合わせについて

この記事へのご意見やお問い合わせについては、こちら(お問い合わせフォーム)もしくは
Hinemos営業担当【hsd-sales@atomitech.jp】までご連絡ください。

※お問い合わせフォームからご連絡の場合には、お問い合わせ内容で「Hinemosについて」を選択し、
 本文の冒頭に「Hinemos研究日記_【タイトル名】」とご記載ください。
※メールアドレスへご連絡の場合には、件名を「Hinemos研究日記_【タイトル名】」でご連絡ください。