ライブラリ・バージョン12.1.3.0

ストアの監視
前 | 第7章 管理手順 | 次

## ストアの監視

ストアのパフォーマンスと可用性に関する情報は、サーバー側とクライアント側の両方の観点から取得できます。

- Oracle NoSQL Databaseアプリケーションでは、`oracle.kv.KVStore.getStats()`クラスを使用してパフォーマンス統計を取得できます。これは、Oracle NoSQL Database操作の完全なラウンド・トリップのクライアント側のビューを提供します。

- Oracle NoSQL Databaseでは、レプリケーション・ノードのパフォーマンス統計がログ・ファイルに自動的に格納され、このログ・ファイルは簡単にスプレッドシート・ソフトウェアにインポートして分析できます。統計は、ユーザーが指定した間隔でEnvironmentディレクトリ内のCSVファイル(`je.stat.csv`)に追跡、記録および書込みが行われます。ロギングは、Environmentが読取り/書込みモードで開くときにEnvironment単位で行われます。

  構成パラメータは、使用される回転ログ・ファイルのサイズおよび数を制御します(これはjavaロギングに似ています。java.util.logging.FileHandlerを参照してください)。回転ファイル・セットの場合、各ファイルが指定されたサイズ制限に達すると、ファイルが閉じられて回転された後、新しいファイルが開かれます。古いファイルにはファイル名に"0"、"1"、"2"などを追加することで連続的に名前が付けられます。形式は`je.stat[version number].csv`です。

- Oracle NoSQL Database管理サービスでは、ストアで生成されたステータス情報、アラートおよびパフォーマンス統計コンポーネントを収集し、集計します。これは、Oracle NoSQL Databaseサーバーの動作とパフォーマンスのサーバー側の詳細なビューを提供します。

- 各Oracle NoSQL Databaseのストレージ・ノードには、そのノードに存在するサービスからのトレース情報の詳細なログが保持されます。管理サービスは、これらのコンポーネント・ログの集計された、ストア全体のビューを示しますが、管理サービスがなんらかの理由で使用不能な場合、または各ログを調べた方がよい場合は、ログは各ストレージ・ノードで使用できます。

- Oracle NoSQL Databaseでは、Java Management Extensions (JMX)またはSimple Network Management Protocol (SNMP)の各エージェントをオプションで監視に使用できます。SNMPおよびJMXの各インタフェースでは、ストレージ・ノードおよびストレージ・ノードでホストされるすべてのレプリケーション・ノードに関する情報のため、ストレージ・ノードをポーリングできます。詳細は、「標準化されたインタフェース監視」を参照してください。

前述のロギング・メカニズム以外に、管理コンソールを使用してストアの現在の状態を確認することもできます。この情報は、「Topology」ペインに表示されます。現在使用不能なサービスが表示されます。問題のあるサービスは、赤色で強調表示されます。ペインの上部の2行に、使用可能なサービスと使用不能なサービスの数が集計されます。

最後に、CLI内からの検証でストアのステータスを監視できます。詳細は、「ストアの検証」を参照してください。CLIを使用してイベントを調べることもできます。

### イベント

イベントは、システムの状態を知らせる特別なメッセージです。イベントが生成されると、監視システムを介して転送され、表示されます。ストアによってレポートされるイベントは4種類あります。

1. 状態変化イベントは、サービスの起動または停止時に発行されます。

2. パフォーマンス・イベントは、様々なサービスのパフォーマンスの統計をレポートします。

3. ログ・イベントは、様々なシステム・コンポーネントによって生成される、デバッグのトレース情報を示すレコードです。これらのレコードは、標準`java.util.logging`パッケージによって生成されます。

4. プランの変遷イベントは、プランの実行、中断、失敗または取消しの進捗を記録します。

一部のイベントはクリティカルとみなされることに注意してください。これらのイベントは、管理サービスのデータベースに記録され、CLIまたは管理コンソールを使用して取得または表示できます。

#### その他のイベント

プランの変遷イベントは、Oracle NoSQL Databaseの管理インタフェースを使用して直接表示することはできません。ただし、状態変化イベント、パフォーマンス・イベントおよびログ・イベントは、管理内部のEventRecorder機能を使用して記録されます。クリティカルとみなされるイベントのみが記録され、そのようにみなされる基準は、イベントの種類によって異なります。状態変化イベントはすべてクリティカルとみなされますが、ログ・イベントはSEVEREのみがクリティカルとみなされます。パフォーマンス・イベントは、レポートされるパフォーマンスが特定のしきい値を下回る場合にクリティカルとみなされます。

そのようなイベントはすべて、`show events`および`show event`コマンドを使用してCLIで表示できます。

データベース内の失効していないイベントをすべて表示するには、引数を指定せずにCLI `show events`コマンドを使用します。`-from`および`-to`引数を使用して、表示されるイベントの範囲を制限できます。`-type`または`-id`引数を使用して、それぞれタイプまたはIDでイベントをフィルタすることもできます。

たとえば、これは、`show events`コマンドからの出力です。

    gt0hgvkiS STAT 2011-09-25 16:30:54.162 UTC rg2-rn3 RUNNING sev1
    gt0hgvkjS STAT 2011-09-25 16:30:41.703 UTC rg1-rn1 RUNNING sev1
    gt0hgvkkS STAT 2011-09-25 16:30:51.540 UTC rg2-rn2 RUNNING sev1
    gt0hicphL LOG  2011-09-25 16:32:03.029 UTC SEVERE[admin1] Task StopAdmin
    failed: StopAdmin [INTERRUPTED] start=09-25-11 16:32:03 end=09-25-11
    16:32:03 Plan has been interrupted.: null: java.lang.InterruptedException

これは、3つの状態変化イベントと1つの重大なログ・イベントを示します。各行の先頭のタグは、各イベント・レコードの識別子です。特定のイベントの詳細な情報を表示する場合、イベント・レコード識別子を引数として"show event"コマンドを使用します。

    kv-> show event -id gt0hicphL
    gt0hicphL LOG  2011-09-25 16:32:03.029 UTC SEVERE[admin1] Task StopAdmin
    failed: StopAdmin [INTERRUPTED] start=09-25-11 16:32:03 end=09-25-11
    16:32:03 Plan has been interrupted.: null: java.lang.InterruptedException
                at java.util.concurrent.locks.AbstractQueuedSynchronizer.
    doAcquireSharedNanos(AbstractQueuedSynchronizer.java:1024)
                at java.util.concurrent.locks.AbstractQueuedSynchronizer.
    tryAcquireSharedNanos(AbstractQueuedSynchronizer.java:1303)
        ....

完全なスタック・トレースは、このようになります。

イベントは、設定された期間(デフォルトは30日)を過ぎると、システムから失効されます。

前 | 先頭へ | 次
ストアの検証 | ホーム | ストアのパラメータの設定