Protocol
Overview(概要)
本プロトコルはODS-RAMにおけるモニタリング機能を定義する。 モニタリング機能はデータトランザクションの稼働ステータスを継続的に把握し、異常や障害を早期に検知する機能を提供する。本機能はロギング機能を利用して収集及び集約したデータに基づき、リアルタイムの状態把握、システムの可視化、及び異常の早期検知を可能にする。
Abstract Normative Specification(抽象仕様)
shall: ロギング機能で収集されたデータからメトリクスを算出する機能を提供しなければならない。
Rationale: 各種状況の適切な監視を可能にするため
should: メトリクスの可視化を目的としたダッシュボードを提供することを原則とする。
Rationale: 状態の把握と利便性を向上させるため
may: メトリクスがユーザ指定の条件を満たした際に、ユーザへの通知やシステムへの介入を行う機能を提供してもよい。
Concepts and Roles(概念および役割)
本プロトコルに必要な概念は以下である。
Data Provider(データ提供者)
データ利用者に対してデータストアに格納されたデータを送信する主体
Data Consumer(データ利用者)
データ提供者からデータを受信する主体
Scope(適用範囲)
モニタリングの対象はOpen Dataspacesを構成する各モジュールである。 本モニタリング機能の主な対象は以下である。Open Dataspacesが機微なデータを扱う点から、一般的なデータの永続化機能に加えて証跡及びトレース情報を対象とする。
連携サービス・APIの通信状況: システムを通過する通信データおよびその通信履歴に基づき、トラフィック量、エラー率、レスポンス時間などを監視する。また各連携サービスやAPIのリクエスト数、成功率、失敗の種別、処理時間などを管理する。
システムリソースの状況: CPU、メモリ、ディスク容量、ネットワーク帯域などのリソースを監視する。システムやサービスが設定した閾値を超えた場合には異常を検知しアラートを発報する。また収集したデータに基づき、定期的なレポートやトレンド予測を実施してシステム運用の改善活動に活用する。
セキュリティの状況と監査: ネットワークやプロセスのようなシステムの構成要素、また各機能の挙動の監視を通じて、セキュリティの観点から通常とは異なる振る舞いを早期に検知する。またシステムの監査など証跡のための機能を提供する。
Normative Requirements(規定要件)
should: 他の運用管理ツールやAIによる分析を前提に、サービスとの連携を念頭に、外部に提供するインタフェースはAPIを通じた連携とすることを原則とする。
should: メトリクスを可視化するダッシュボードを提供することを原則とする。またユーザがダッシュボードをカスタマイズできるようにしてもよい。
should: メトリクスを監視して異常を検知した場合にはシステム管理者に通知することを原則とする。異常検知の目的はサービスの稼働状況に加えて、システムのセキュリティ状況の監視を含む。異常を検知する手段として、各種メトリクスに閾値を設定してもよい。
メトリクスの例
サービスのダウンタイム
リクエストやサービス処理におけるレスポンスタイムやエラー率
システムリソース
特定IPアドレスからの通信量
通知手段の例
Eメール
インスタントメッセージング
Webhookを用いたシステム連携
may: 異常を検知した場合には、自動的にシステムに介入してシステムリソースやプロセスを操作する機能を提供してもよい。ただし、この機能は介入対象システムや介入の範囲が事前に定義されていなければならない。またシステム管理者によって設定されたセキュリティポリシーや許可範囲が遵守されなければならない。介入した内容は監査のためにログに記録され、対応履歴として追跡可能でなければならない。
Rationale: 異常検知時におけるサービスの継続を維持するためすると共に、不必要な介入や潜在的なセキュリティリスクを最小化するため。
may: ロギング機能のデータと分離してメトリクスを別途保存してもよい。その際には時刻情報やトレースIDを用いてロギング情報とのトレーサビリティを確保することを原則とする。
Rationale: メトリクスの管理を効率化してロギング情報との整合性を維持することでデータの追跡性と分析精度を向上させるため。
may: サービス独自のログの収集及び加工に基づく外部監査向けのレポート作成機能を提供してもよい。
最終更新