NcStatusCheck
複数のNextcloudインスタンスの集中監視
NcStatusCheckは、単一のWebインターフェースから複数のNextcloudサーバーの健全性を追跡できる監視ツールです。NextcloudとPHPのバージョンをセキュリティフロア、ブランチのサポート終了、到達可能性、設定警告、インストール済みアプリ、Dockerコンテナ、既知の脆弱性と照合します。



🎯 機能
監視
- サーバーごとに3つのデータ収集モード: Basic (NCバージョンのみ)、Extended (serverinfo API経由の完全データ)、Push (リモートインスタンスから送信されるデータ)
- NextcloudとPHPのバージョン分析。cronが公式リリースと同期し続けるセキュリティフロアと照合し、猶予期間 (
nc_update_grace_days) により、パッチリリースから数日経過して初めてインスタンスがフラグされます
- ブランチライフサイクル: 各Nextcloudブランチのサポート終了 (公式スケジュール)、次回リリース日、各ブランチを実行しているサーバー数
- アップ/ダウン追跡: 現在の到達可能性と、確認済みの遷移の上限付きジャーナル。これが**30日間の可用性%**とインシデントリストを生成します
- SSL証明書の有効期限。既存のHTTPSプローブから読み取り (追加リクエストなし)
- 既知の脆弱性 (オプトイン): Nextcloud、Collabora、OnlyOfficeのアドバイザリを、フリートが実際に実行しているバージョンと照合
- インストール済みアプリの監査:
occ app:list をNextcloudアプリストアと照合 (アップグレードを妨げるアプリや非互換アプリ、利用可能な更新、成熟度とトラブル指標)
- Dockerコンテナ: 停止、再起動中、または異常なコンテナ、およびレジストリタグカタログと照合したイメージ更新 (ブランチ内のパッチ、より新しいブランチ)。監視対象の複数インスタンスが同じマシンを共有している場合、コンテナはそれぞれのインスタンスに帰属されます
- プロアクティブアラート (Webhookおよび/またはメール): アップ/ダウン状態の変化、および緩やかなシグナル (SSL有効期限、脆弱なバージョン、古いPushプローブ、重大な監査レポート、ブロッキングなアプリ検出、壊れた
occ)。新しい条件ごとに1件のアラート、リマインダーのスパムなし
- サーバーの一時停止 (移行、廃止): プローブとアラートは停止され、行は表示されたまま
- デスクトップクライアント監視: 現在のバージョン、進行中のリリース候補、測定されたリリースペース
ダッシュボード
- フリートテーブル (Server | Nextcloud | PHP | Health) とブランチライフサイクルテーブルがワイドスクリーンで並んで表示
- Health列は「沈黙 = すべて良好」に従う: 対応が必要な場合のみバッジを表示
- サマリーカード: 適用する更新、脆弱性、ブランチのサポート終了、今後のリリース、アクティブな警告、アプリ、Docker、デスクトップクライアント。各カードはウィンドウで詳細を開きます
- アプリとDockerイメージのフリート監視。対応が必要な順にソート: 確認が必要、対応が必要、計画が必要、および折りたたまれたコンテキストグループ
- フィルター: Nextcloudステータス、PHPステータス、総合ステータス (オフライン、メンテナンス、警告、プローブエラー、Docker更新…)、Dockerイメージ、テキスト検索
- 各サーバー名の下のタグ。クリックでフィルター (複数タグ = すべて同時に): 独自のタグ (
client:durand、lab…)、および監視対象の複数インスタンスが同じサーバー上で実行されている場合にマシンを表す🖥タグ (Push、スクリプトv12以降で検出)、マシンごとに1色。type:valueと書かれたタグはそのタイプの色を取るため、すべてのclient:…タグが1色を共有します
- FR / EN / DEインターフェース
詳細ページ
- タブの上の状態タイル: 到達可能性、30日間の可用性 (ウィンドウ内のインシデントリスト)、SSL証明書、各プローブの鮮度
- 概要: バージョンの判定、ミュートされたアラート (理由と有効期限付きの確認応答)、インスタンスサマリー (PHP、Webサーバー、データベース、キャッシュ、デプロイメント、およびアプリとコンテナから見たオフィススイート、Talk HPB、ホワイトボードなどのサテライトツール)、次に領域別にグループ化された問題
- タブ: 技術情報、アプリケーション、Dockerコンテナ、プローブ
- URLの下のタグ。その場で編集可能、同じマシンで実行されている他のインスタンスと共に表示
- すべての警告を確認応答可能 (理由 + オプションの有効期限)
- インスタンスが月次の
nc-audit.shレポートをプッシュした場合のサーバー監査レポート
管理
- サーバー: URLでサーバーを追加 (
https://はオプション)、その後カード上でプローブを設定 (serverinfoトークンとTestボタン、Pushトークンとすぐに使えるスクリプトジェネレーター)、タグ付け、一時停止、削除
- 共有ホスト: 監視対象の複数のNextcloudがマシンを共有している場合、どのDocker composeスタックがどのインスタンスに属するかを指定
- NC / PHPバージョン: セキュリティフロア、ステータスルール、公式リリースからの再同期
- アプリ警告: 手動の既知バグリスト
- 通知: 有効なアラート設定 (
config.phpで設定、読み取り専用で表示) とテストボタン
- IPフィルタリング: nginx / Apache / ufwの許可リストルールを生成
- サイレンス: フリート全体のすべての確認応答の監査、およびまだ何かを隠しているもの
- 収集モード: 3つのプローブのヘルプ
- ダッシュボードの**「Trigger Push」**ボタン: すべてのPushサーバーに次回のcron実行時にデータを送信するよう要求
🏗️ アーキテクチャ