你有沒有遇過這種狀況:滑手機滑到一半突然打不開 Instagram,第一時間會先想「是不是我的網路有問題」,還是「該不會是全世界的人都連不上」。這時候如果一個一個打開 Facebook、Instagram、GitHub 的官方狀態頁去查,實際上滿浪費時間的,對忙碌的上班族或工程師來說更是如此。這次要介紹的 isUpMap,就是專門解決這個困擾的一頁式工具。
根據官網(isupmap.com)的介紹,isUpMap 是一個即時的上線/異常/停機狀態熱力圖,用色塊搭配品牌 Logo,一次呈現 GitHub、AWS、Facebook、Instagram、Netflix 等上百個常見網路服務目前的健康狀態。對需要隨時掌握多項服務是否正常的人來說,這種一頁式的呈現方式,比起分別查詢每個服務的官方狀態頁,效率高出不少。
isUpMap 是什麼?
isUpMap 是一款以熱力圖形式呈現多項網路服務即時狀態的免費工具,目前收錄超過100個服務,分成開發者雲端、AI、社群媒體、生產力與媒體、遊戲娛樂、通訊、金流支付等類別。這款工具的概念,其實類似股票市場常見的熱力圖,只是把股票代號換成了服務名稱,把漲跌幅換成了「正常運作」「效能異常」「服務中斷」三種狀態。開發者是 Jaironlanda,這個專案最初在開發者社群 Hacker News 上發布後引起不少討論,不少人留言表示自己也做過類似的服務多年。isUpMap 完全開源,原始碼公開在 GitHub 上,任何人都能自行部署到自己的 Cloudflare 帳號使用。
isUpMap 有哪些功能?
isUpMap 最大的特色,是把上百個服務的狀態濃縮進一張可以隨時互動的熱力圖裡,點擊任何一個色塊,就能看到該服務的詳細狀態。每個色塊會依照服務目前狀態顯示不同顏色,綠色代表正常運作,橘色或黃色代表效能異常,紅色則代表服務中斷或無法連線,一眼掃過去就能知道有沒有東西出問題。點進單一服務,還能看到過去24小時和7天的正常運行時間百分比,以及過去的事件紀錄,對於想確認「這個問題是不是已經發生一段時間了」的人來說相當實用。網站也提供指令面板功能,只要按下鍵盤上的Cmd加K(Mac)或Ctrl加K(Windows),就能快速搜尋想查詢的服務,不用在滿版的色塊裡慢慢找。
對這款工具來說,另一個貼心的地方是深連結設計,例如直接輸入isupmap.com/status/github這個網址,就會直接跳轉到GitHub專屬的狀態頁面,標題也會直接寫成「Is GitHub down?」這種一目了然的形式。網站同時支援淺色和深色兩種主題,手機版也做了適應,詳情會用底部彈出的卡片呈現,滑動操作起來算是順手。此外,使用者還能自訂要顯示哪些服務或分類,也能切換成「只顯示有問題的服務」這種篩選模式,對只想關心特定產業的人來說,能省下不少滑動畫面的時間。
isUpMap 背後的技術是怎麼運作的?
isUpMap 建構在Cloudflare Workers加D1資料庫這套架構上,透過排程任務每5分鐘輪詢一次各服務的官方狀態來源,前端頁面則是每45秒向後端要一次最新資料。資料來源主要分成三種方式,一種是讀取類似Statuspage這種平台提供的JSON摘要,一種是解析RSS或Atom格式的狀態訂閱,另一種則是直接對服務網址發送連線測試,判斷是否能正常連上。對這套系統來說,為了避免單次連線逾時就誤判成停機,還設計了一套機制,要求異常狀態連續出現兩次輪詢才會正式記錄成事件,恢復正常則是立即更新,這樣能減少誤報的情況。
值得一提的是,isUpMap完全開源,程式碼公開在GitHub上,採用MIT授權,任何有Cloudflare帳號的人都能照著說明文件自行部署一套。想加入新服務的話,只要在設定檔裡新增一筆資料,包含分類、權重和資料來源型態就能完成,對熟悉開發的讀者來說,門檻並不算高。事件紀錄會保留90天,超過的舊資料則會定期清除,整體設計偏向輕量,不會佔用太多後端資源。
isUpMap 適合哪些人使用?
isUpMap 主要鎖定同時仰賴多項雲端或社群服務的使用者,包含工程師、客服人員、社群小編,以及單純想確認「是不是只有我連不上」的一般網路使用者。對工程師或維運人員來說,遇到系統異常時,第一步通常要先排除是不是上游服務出問題,這時候打開isUpMap掃一眼相關服務的狀態,能省下不少來回查證的時間。對社群小編或新聞編輯來說,遇到讀者反映App打不開時,也能快速確認是官方問題還是使用者端的個別狀況,避免發布錯誤資訊。
如何使用?
1.開啟 isUpMap 網站後,首頁的熱圖就能看到所有服務的即時狀態,大多標記為綠色,代表正常運作,有少部分標記黃色或紅色代表可能發生異常或是無法連線等問題。
2.點選右上角「Problems only」按鈕會顯示目前發生問題的服務。
3.也可以透過上方的搜尋功能輸入指令或搜尋,最簡單的用法就是輸入服務名稱,就會在網頁上顯示這項服務目前有沒有出現異常。
4.每個服務都有自己的頁面,可以在「Service status directory」進行檢索。
isUpMap 有哪些實際使用情境?
isUpMap 最常見的使用情境,是在服務發生大規模異常的當下,快速確認問題範圍,而不是憑感覺猜測。舉例來說,如果Instagram突然打不開,先到isUpMap看一眼,如果Facebook、WhatsApp這些同屬Meta體系的服務也同步顯示異常,大概就能猜到是Meta那邊出了問題,而不是自己手機或網路的狀況。同樣地,遊戲玩家如果發現PlayStation Network連不上,也能透過isUpMap確認是官方伺服器的問題,還是自己家裡網路的異常。開發者在部署專案時,若同時依賴GitHub、Cloudflare、npm這幾項服務,也能一次掃過去,確認不是上游拖累了自己的專案進度。
另一種常見情境,則是媒體或內容創作者要查證網路上流傳的「某某服務又掛了」消息是否屬實。與其只憑社群上的抱怨文判斷,不如直接查isUpMap上的即時狀態,再搭配官方狀態頁做交叉比對,寫出來的報導或貼文會更站得住腳。以下整理isUpMap與另外兩種常見的服務狀態查詢方式,做個簡單比較。
| 比較項目 |
isUpMap |
單一服務官方狀態頁 |
Downdetector類使用者回報平台 |
| 資料來源 |
彙整各服務官方狀態頁與連線測試 |
該服務自家團隊發布 |
使用者自行回報 |
| 一次查詢的服務數量 |
100個以上,一頁呈現 |
僅限單一服務 |
通常也是單一服務為主 |
| 更新頻率 |
每5分鐘輪詢一次 |
依各服務團隊發布時間而定 |
依使用者回報量即時變動 |
| 是否需要註冊或付費 |
免費,不需註冊 |
通常免費,但要分別造訪 |
多數免費,進階功能可能收費 |
| 適合對象 |
同時關注多項服務的使用者 |
只在意特定單一服務的使用者 |
想看其他人是否也遇到同樣狀況的使用者 |
看得出來,isUpMap的優勢在於「一次看完」這件事,對需要同時掌握多項服務的人來說,能省下不少來回切換分頁的力氣。不過要注意的是,isUpMap的資料終究是彙整自各服務自家發布的狀態,如果官方本身延遲公布問題,isUpMap顯示的狀態也會跟著有落差,這點在使用時要有心理準備。
使用isUpMap時有哪些地方需要注意?
使用isUpMap最需要留意的地方,是首頁的即時熱力圖必須啟用JavaScript才能正常顯示,如果瀏覽器停用了JavaScript,畫面可能只會剩下陽春的純文字清單。另外,由於系統是每5分鐘輪詢一次上游狀態,實際更新會比官方狀態頁稍有延遲,如果遇到突發狀況,建議還是搭配官方公告一起確認,不要單靠一個工具下判斷。isUpMap本身聲明自己是唯讀的彙整工具,跟這些服務並沒有合作關係,單純是把公開資訊整理成好讀的畫面而已。
常見問題有哪些?
isUpMap是免費的嗎?
是的,isUpMap完全免費使用,不需要註冊帳號就能直接查看所有服務的狀態。
isUpMap跟Downdetector有什麼差別?
isUpMap主要彙整各服務官方發布的狀態資料,呈現方式是一頁式熱力圖;Downdetector則偏向使用者自行回報異常,兩者可以互相搭配參考。
isUpMap支援台灣讀者常用的哪些服務?
目前收錄的服務中,包含Facebook、Instagram、Threads、LinkedIn、YouTube、TikTok、WhatsApp、Telegram等台灣讀者常用的社群與通訊軟體。
isUpMap的資料多久更新一次?
後端每5分鐘輪詢一次各服務的官方狀態來源,前端網頁則每45秒向伺服器要一次最新資料,整體算是接近即時。
isUpMap顯示異常,是不是代表服務一定壞了?
不一定,建議同時參考該服務的官方狀態頁做確認,因為isUpMap的資料本身就是從官方來源彙整而來,如果官方延遲公布,顯示狀態也會跟著延遲。
可以自己部署一套isUpMap嗎?
可以,isUpMap完全開源,原始碼公開在GitHub上,只要有Cloudflare帳號,照著說明文件操作就能自行架設一套。
結語
對經常需要同時盯著好幾個服務狀態的人來說,isUpMap把原本要開十幾個分頁才能拼湊出的資訊,濃縮成一張隨時能掃一眼的熱力圖。這種一頁式的設計思路,雖然不能完全取代官方狀態頁的權威性,但在第一時間判斷問題範圍這件事情上,確實比單獨查詢每個服務要有效率得多。如果你也常常在網路服務出狀況時手忙腳亂,不妨把isUpMap加進書籤,下次遇到問題先掃一眼,說不定就能省下不少猜測的時間。