2011-05-05 56 views
3

我需要一個工具來監控我的web應用程序。問題是由於內存不足或數據庫問題,登錄後這些應用程序可能會失敗,但主網頁通常沒問題。那麼只需訪問一個url的簡單測試就不會檢測到問題。可編寫腳本的網站監控工具

衆所周知的免費託管解決方案對我來說是不可用的,因爲我需要使用用戶名和密碼登錄到每個網站,並且我無法將此信息提供給公司以外的任何人。

該工具應做到以下幾點:

  • 跑了幾步像登錄,執行簡單的查詢,註銷
  • 用簡單的正則表達式檢查HTTP響應
  • 應與工作HTTP和HTTPS
  • 在Linux上運行

有幾種功能測試工具可以完成像JM這樣的工作eter,Selenium,Canoo Webtest,但這些對我的要求來說似乎過分了。有一個更簡單的解決方案嗎?

+1

難道您不能使用零權限爲您的Web應用程序創建演示帳戶使用免費的託管解決方案? – 2011-05-05 08:17:55

+0

我不知道一個免費的網絡監控服務,它允許腳本(登錄,查詢,檢查結果,註銷)。除此之外,即使最小的特權也會泄露私人信息,因此組織外的任何第三方服務都不是一種選擇。 – nn4l 2011-05-06 07:34:28

回答

2

這聽起來像你只需要一些東西來ping你的服務器,並確保每個頁面都返回200.你可以看看一個簡單的服務器監視器(Nagios等),不需要登錄要求。

如果你想走功能工具的路線,我可以在每個系統上創建一個測試賬戶來使用免費的基於網絡的工具;或者使用Jmeter,因爲您可以創建一個快速登錄的蜘蛛,並通過網站(觸摸每個網址)或執行一些操作。

使用JMeter,您還可以輕鬆添加除http 200響應之外的斷言。

+0

電錶腳本+1 – 2011-05-06 08:29:08

0

著名的免費託管解決方案是不可用的我,因爲我需要登錄使用的用戶名和密碼,每個網站,

你嘗試AlertFox了嗎?他們的免費計劃包括基於瀏覽器的網站監控(「真正的瀏覽器監控」)。您可以使用iMacros來腳本進行多頁事務測試並在AlertFox上運行它們。這包括自動登錄和其他表單填寫。

http://www.alertfox.com/free-website-monitoring/

另外,您可以爲本地安裝使用Nagios結合硒或iMacros的(免費的瀏覽器插件)(check_selenium等)。

0

如果你真的想自己運行的一切,我會建議JMeter的,儘管它似乎矯枉過正,這是真的很完整,靈活的,如果您不需要複雜的事情,這也很容易安裝。一切都可以使用他們的GUI完成。 (如果您對正則表達式有所瞭解)

您的主要挑戰將是如何將JMeter與某種事情聯繫起來,以便在出現任何問題時提醒您,因此作爲監控服務的創建者,我偏向於涉及使用託管的工具,因此您可以利用通知,冗餘和報告。 我能想到的幾個解決方案,讓您的密碼等。同時仍然使用遠程監控服務:

  • 在您的網站上創建一個單獨的頁面,該頁面執行所有關鍵操作,但僅僅因爲不提供任何相關內容。例如只要它輸出一個關鍵字和每個操作的狀態,如果它成功。然後,您可以在頁面上使用遠程監控服務調用,並使用正則表達式解析出這些關鍵字,並將每個關鍵字的狀態作爲單獨數據進行收集。
  • 類似的是使用您構建網站的語言來調用它自己的URL並執行正則表達式部分並再次構建狀態概覽。然而這確實帶來了URL的本地調用的缺陷,所以防火牆規則等可能與真實用戶不同

另一種方式是隻運行調用您的網站的部分自己的VPS(或最好是多個),你可以保護你喜歡的方式。並將結果發送到我們這樣的監控服務的API(https://observu.com/docs/api)使用正則表達式進行實際讀取,查詢和測試的腳本可以使用您熟悉的任何語言。 (或者你可以直接調用JMeter的結果)

這裏的優點是你可以從多個遠程位置調用你的腳本,同時仍然保持對密碼的控制。 (鑑於您要麼遠程擁有自己的數據中心,要麼至少相信亞馬遜或任何其他提供商足以在小型虛擬實例中擁有您的密碼)