OSS探訪

HTTP・TCP・DNSなどを定期チェックし、条件判定と通知をStatus Pageにまとめる

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
12,211
主要言語
Go
ライセンス
Apache-2.0
リポジトリ最終更新
2026/09/30
ページ内ナビ

概要

Gatusはサービスへ能動的に接続し、status code、response time、response body、certificate expirationなどの条件を評価する外形監視ツールです。結果をStatus Pageへ表示し、SlackやPagerDutyなど多数のnotificationへ連携できます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

複数protocolのendpointを能動的に監視する

HTTPだけでなくICMP、TCP、DNS、gRPC、WebSocket、SSH、TLSなどのendpointを定期的に確認し、利用者trafficがなくてもavailabilityを検証できます。

出典:[2]

status・body・response timeなどを条件式で判定する

単なる200応答だけでなく、JSON/body内容、response time、IP、certificate expirationなど複数条件を組み合わせてhealthy/unhealthyを判定できます。

出典:[2]

Status Pageと多数のalert providerを同じ設定で管理する

dashboardでendpoint状態を表示し、Slack、PagerDuty、Discord、Twilio、Email、Webhook系など幅広いproviderへ通知できます。

出典:[2]

向いている用途

小規模な外形監視をYAMLとGitで管理したい場合に向く

監視対象と条件をconfig fileとして管理し、DockerやKubernetesに配置してサービスの到達性を継続確認したい開発・SREチームの候補になります。

出典:[2]

導入前の確認

config内のalert credentialをsecret管理する

設定ファイルはenvironment variable展開に対応しています。Webhook URLやtokenなどのcredentialをGitへ直接含めず、実行環境側のsecretから注入します。

出典:[2]

永続的な履歴が必要ならstorageを明示する

Gatusはstorage設定を持ち、監視履歴やinstance構成に応じたbackendを選べます。再起動後も履歴を保持したい運用では永続storageを設定します。

出典:[2]

公開Status PageではBasic Auth/OIDC/TLSを確認する

外部公開する場合はBasic AuthenticationやOIDCなどのsecurity設定、TLS、公開pathを要件に合わせて構成します。

出典:[2]

参考にした公式資料

  1. [1]TwiN/gatus repository(2026-10-01)
  2. [2]Gatus README(2026-10-01)
  3. [3]Gatus v5.37.0 release(2026-10-01)
  4. [4]Gatus Apache-2.0 license(2026-10-01)
編集部からの補足

既存trafficに依存するmetrics監視とは別に、サービスへ能動的にrequestを送り、status code・response time・body・証明書期限などを条件式で判定できます。設定をYAMLで管理できるため、小規模な外形監視をコード管理したい場合に扱いやすい構成です。

3ステップで試す

  1. 1

    最小監視設定を作成

    status codeとresponse timeを確認する最小のYAML設定を作成します。

    mkdir -p gatus/config && cd gatus && cat > config/config.yaml <<'YAML' endpoints: - name: example url: https://example.org interval: 60s conditions: - '[STATUS] == 200' - '[RESPONSE_TIME] < 1000' YAML
  2. 2

    Gatusを起動

    公式stable imageを起動し、作成したconfigをcontainerへmountします。

    docker run --rm -p 8080:8080 -v "$(pwd)/config:/config" ghcr.io/twin/gatus:stable
  3. 3

    Status Pageを確認

    endpointの状態とresponse timeをdashboardで確認し、必要に応じてalert providerやpersistent storageを追加します。

    Open http://localhost:8080
公式READMEで確認

成長

成長の推移 · 直近30日

12,211 Stars

推移データを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • alerting
  • container
  • dashboard
  • devops
  • docker
  • go
  • golang
  • health
  • monitor
  • monitoring
  • monitoring-tool
  • notifications
Stars
12,211
Forks
844
Watchers
44
Open Issues
394
所有者種別
User
主要言語
Go
ライセンス
Apache-2.0
リポジトリ最終更新
2026/09/30

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?