Zabbix Selenium Web監視 拡張機能

Selenium
Selenium(http://seleniumhq.org/)は、オープンソースのWeb Testing Toolです。

Zabbixの標準機能にもWeb監視機能は含まれており、簡単な監視であれば十分ですが、libcurlを使用しているため、最近のコンテンツでよく利用されている、Javascript,Ajax,XMLHttpRequest等は対応できません。
また、実際のブラウザを使用していませんので、サービスレベルでの監視としては若干の不安が残ります。

Seleniumは、IE,Firefox等のBrowserを使用して監視を行うため、ZabbixのWeb監視機能では実現できない、Javascript,Ajax,XMLHttpRequest等を前提として動作する、Web,http,URL監視,サイト(Site)の監視が可能になります。

ZabbixとSeleniumを接続する事により、Zabbixで一元監視をすることが可能になります。
Seleniumの機能そのままですので、Selenium自体で実現できないものは「対象外」です。
弊社でも、ZabbixとSeleniumを使用して、Webサイトの監視を行っています。
下記は、Zabbix Selenium間の処理の流れを図にしたものです。

Zabbix Selenium Web監視

Seleniumを利用する場合の、設定方法を簡単に記載します。
まず、Seleniumを利用するための準備です。
  • Firefoxに、Selenium IDEをアドオンインストールする。
  • Firefoxから、Selenium IDEを起動する。(Firefoxの[ツール]メニューの[Selenium IDE]を選択する)
これで、準備は終了です。
次に、チェックするURLへのWebブラウザの操作およびチェック内容を記録します。
  • テストするページ遷移と同様にFirefoxで表示したWebページのリンクやボタンをクリックするとSelenium IDEが操作を記録します。POSTデータだから、GETだから、次のURLは・・・などを考える必要はありません。
  • チェック内容をアサーションとして追加します。URLのチェックとか、表示データがあっているかなどアサーションとして追加します。
  • 操作を行い、テストケースを作成終了後、テストケースを保存します。
これで、監視内容も作成しました。
最後にITEMをZabbixに登録し、テストケースをSeleniumを稼動させるサーバに配置して終了です。