
上週因機房的網路連線異常,導致免費資源網路社群網站有幾分鐘無法連線時間,預先設定的網站監控服務也陸續傳送警報通知,例如我介紹過的 Uptime Robot 就有手機應用程式可推送通知;或是另一個 Better Uptime 在監測網站變化上也相當即時快速(可惜它的免費方案不能推送應用程式通知)。如果你是使用 WordPress 架站的話,官方的 Jetpack 外掛提供相當多模組功能,其中就有一項監測服務 Jetpack Monitor 也很有用,完全不用額外設定,網站異常時會以 Email 通知。
其實 Cloudflare 去年也有推出一個監測伺服器的獨立工具「Health Checks」,中文名稱為「健康情況檢查」,簡單來說,除了提供被動式原始伺服器監測(Passive Origin Monitoring),使用者不用額外設定通知,透過健康情況檢查還可以追蹤特定的網頁或伺服器,和一般網站監測服務一樣,當回傳的代碼或回應本文與設定條件不同,它就會發出警報通知。
這項服務是在 Cloudflare 全球的邊緣網路(Edge Network)執行,可指定要檢查的地理位置,大家都知道 Cloudflare 全球節點涵蓋一百個國家、兩百個城市,在測試準確性上更高。不過比較可惜的是此功能不提供免費方案用戶使用,如果是付費 Pro、Business 和 Enterprise 方案可以有不同的限制,包括檢查地區、檢查數量和間隔時間。
接下來會教使用者如何在 Cloudflare 設定一個健康檢查,讓你可以監控特定的網站或伺服器,一旦無法連線或發生錯誤,就會依照預設條件發送通知。
Cloudflare
https://www.cloudflare.com/zh-tw/
使用教學
STEP 1
開啟 Cloudflare 控制台後點選「Traffic」就能找到「健康情況檢查」功能,如果是免費方案會看到要求升級至 Pro 方案按鈕,這項功能必須要是付費方案才能使用。

當你是 Cloudflare 付費方案,就會看到「建立」健康情況檢查按鈕,依照說明,Pro 版可建立 10 個、Business 是 50 個,而 Enterprise 可建立最多 1000 個檢查。

STEP 2
在設定新的健康情況檢查時別被畫面嚇到,除了中文翻譯看起來不太懂意思以外(畢竟很多專有名詞還是看英文比較習慣),其實只有幾個欄位需要設定,包括名稱、原點(就是要監測的網址或伺服器 IP 位址)、監測類型可設定 HTTP、HTTPS 或 TCP,方式則有 GET 或 HEAD,另外也能指定連接埠和路徑,如果設定過網站監測工具的話應該不會太難理解。

STEP 3
預期的代碼部分可指定監測時要取得的回應值,正常來說 200 就是成功回應,這裡可設為 200。
另外,在「回應本文」部分可監測是否有回傳特定字串,對於要知道網頁有沒有正常開啟或回應來說會很有用,當接收到的字串與設定本文不同,也會觸發警報通知功能,當然這個功能可設定也可跳過不用,我只有指定接收到 200 代碼。

要注意的是在「監測間隔」是以秒為單位,三個方案分別可設定為最少 60、15 和 10 秒,或許不需這麼短暫的間隔時間,建議可設定較長秒數。
下方有「檢查地區」欄位指定要監測的地區,包括北美洲、歐洲、南美洲、大洋洲、中東、非洲、東北亞和東南亞等地的節點,在 Business 及 Enterprise 方案才能指定所有地區。

STEP 4
記得在通知的「收件者」項目設定指定 Email 地址,Cloudflare 也有支援 PagerDuty,可在行動裝置的應用程式收取推送通知,這部分可以再寫另一篇教學說明,這裡就以 Email 為主要通知。

STEP 5
設定完成後 Cloudflare 健康情況檢查就會開始進行,從控制台會看到過去 24 小時失敗數。

進入「健康情況檢查分析」功能會看到最近 24 小時的分析數據,因為我剛加入檢查,看到的資料記錄會少一些,預設情況下 Cloudflare 會顯示網站或伺服器的運作時間、等待時間。

往下拖曳捲動會看到更多的事件記錄檔,也就是 Cloudflare Health Checks 偵測取得的記錄,包括每個時間點的反應時間、失敗原因、回應狀態碼、來回時間和發生地區,下方也有一個圖表能夠呈現瀑布平均值,對於要檢測伺服器或網站健康度來說會很有用。

值得一試的三個理由:
- Cloudflare 提供 Health Checks 和被動式原始伺服器監測功能
- 可指定監測目標網址或 IP 位址,異常時以 Email 發送通知
- 設定預期的回傳代碼或本文內容,亦可遵循重新導向或指定標頭
探索更多來自 免費資源網路社群 的內容
訂閱即可透過電子郵件收到最新文章。