機械翻訳について

Autonomous Databaseメトリックを使用したパフォーマンスの監視

メトリック、アラームおよび通知を使用して、データベースのヘルス、容量およびパフォーマンスを監視できます。 Oracle Cloud InfrastructureコンソールまたはモニタリングAPIを使用して、メトリックを表示できます。

Autonomous Databaseインスタンスのメトリックの表示

Autonomous Databaseメトリックを表示するステップを示します。

メトリックを表示するには、Oracle Cloud Infrastructureポリシーで指定されている必要なアクセス権を持っている必要があります(コンソール、REST APIまたは別のツールを使用しているかどうか)。 ポリシーの詳細は、「ポリシーのスタート・ガイド」を参照してください。

必要に応じて次のステップを実行します:

  • Oracle Cloudの横にあるナビゲーション・アイコンをクリックして、Oracle Cloud Infrastructureコンソールを開きます。

  • Oracle Cloud Infrastructure左側のナビゲーション・メニューからOracle Databaseをクリックし、ワークロードに応じて次のいずれかをクリック: Autonomous Data Warehouse , 自律型JSONデータベース ,またはAutonomous Transaction Processing
  • Autonomous Databasesページで、「表示名」列の下のリンクからAutonomous Databaseを選択します。

Autonomous Databaseインスタンスのメトリックを表示するには、次のようにします:

  1. 詳細ページの「リソース」の下で、「メトリック」をクリックします。
  2. メトリックごとにチャートがあります。 各チャートで、「間隔」「統計」を選択するか、デフォルト値を使用できます。

ノート:

次の表に、Oracle Cloud Infrastructureコンソールに表示されるデフォルトのメトリックを示します。

すべてのデータベース・メトリックおよびディメンションのリストは、「使用可能なメトリック: oci_autonomous_database」を参照してください。

メトリック名 説明

CPU使用率

すべてのコンシューマ・グループで集計された、パーセントで表されたCPU使用率。 使用率は、データベースが使用できるCPUの数(ECPUの数)に関してレポートされます。

データベースでOCPUを使用する場合、許可されるCPU数はOCPU数の2倍です。

ストレージの使用状況

現在使用中のプロビジョニングされたストレージ容量の割合。 すべての表領域の割当て済領域の合計を表します。

セッション

データベース内のセッション数。

実行数

選択した間隔中にSQL文を実行したユーザー・コールおよび再帰コールの数。

実行中の文

選択した間隔の間に、すべてのコンシューマ・グループで集計された実行中のSQL文の数です。

キュー済のステートメント

選択した間隔内で、すべてのコンシューマ・グループをまたいで集計された、キューに入っているSQL文の数。

データベース可用性

データベースは、選択した時間間隔(このメトリック・ラグのデータは5分間)の接続に使用できます。 このメトリックの値:

  • 1 =データベースが使用可能
  • 0 =データベースは使用できません

データベースが使用できない(値0)場合にトリガーされるアラームを設定できます。

ノート:

可用性は、「配信ポリシー」「Oracle PaaSおよびIaaS Public Cloud Servicesの補遺」ドキュメントに記載されている「月次稼働時間率」に基づいて計算されます(Autonomous Database可用性サービス・レベル契約を参照)。

失敗した接続

選択した間隔におけるデータベースへの失敗した接続の合計数が表示されます。

接続試行がデータベースに到達し、次のいずれかのエラーを記録すると、接続は失敗としてカウントされます: ORA-12514ORA-12519またはORA-12529

メトリックにアラームを作成するには、メトリック・チャートまたは表で「オプション」をクリックし、「この問合せに対するアラームの作成」を選択します。 アラームの設定および使用方法の詳細は、「アラームの管理」を参照してください。

メトリックの詳細は、「使用可能なメトリック: oci_autonomous_database」を参照してください。

また、モニタリングAPIを使用してメトリックを表示することもできます。 詳細については、「モニタリングAPI」を参照してください。

ログおよび監査証跡の表示

Autonomous Databaseログおよび監査証跡を表示するステップを示します。

ノート:

ログおよび監査試行を表示するには、(コンソール、REST APIまたはその他のツールのいずれを使用しているかにかかわらず) Oracle Cloud Infrastructureポリシーで指定された必要なアクセス権が必要です。 ポリシーの詳細は、「ポリシーのスタート・ガイド」を参照してください。

Autonomous Databaseインスタンスの監査証跡およびログを表示するには:

  1. 詳細ページの「リソース」の下で、「メトリック」をクリックします。
  2. メトリック領域で、「監査およびログの表示」をクリックします。
  3. ロギング領域で、「ログ」をクリックしてログ情報を表示します。
  4. ロギング領域で、「監査」をクリックして監査情報を表示します。

詳細については、「Autonomous Databaseの監査」「監査ログ」を参照してください。

コンパートメント内のAutonomous Databaseのメトリックの表示

コンパートメント内のAutonomous Databaseのメトリックを表示するステップを示します。

メトリックを表示するには、Oracle Cloud Infrastructureポリシーで指定されたように必要なアクセス権が必要です(コンソール、REST APIまたはその他のツールのいずれを使用している場合でも)。 ポリシーの詳細は、「ポリシーのスタート・ガイド」を参照してください。

  • Oracle Cloudの横にあるナビゲーション・アイコンをクリックして、Oracle Cloud Infrastructureコンソールを開きます。

  • 左側にあるナビゲーション・リストから、「可観測性&管理」をクリックします。 「モニタリング」で、「サービス・メトリック」をクリックします。

メトリック・サービスを使用してAutonomous Databaseメトリックを表示するには:

  1. 「サービス・メトリック」ページの「コンパートメント」の下で、コンパートメントを選択します。
  2. 「サービス・メトリック」ページの「メトリック・ネームスペース」の下で、oci_autonomous_databaseを選択します。
  3. コンパートメントに複数のAutonomous Databaseがある場合、「メトリック・ストリームの集計」を選択して、Autonomous Databases全体で集計したメトリックを表示できます。
  4. 表示されるメトリックを制限する場合は、「ディメンション」の横にある「追加」をクリックします(すでにディメンションを追加している場合は、「編集」をクリックします)。
    1. 「ディメンション名」フィールドで、ディメンションを選択します。
    2. 「ディメンション値」フィールドで、値を選択します。
    3. 「完了」をクリックします。

    ディメンションの編集ダイアログで、「+追加ディメンション」をクリックして追加のディメンションを追加します。 ディメンションを削除するには、xをクリックします。

特定のメトリックのアラームを作成するには、「オプション」をクリックして「この問合せにアラームを作成」を選択します。 アラームの設定および使用方法の詳細は、「アラームの管理」を参照してください。

Autonomous Databaseメトリックおよびディメンション

ディメンションを含むメトリックを表示するインスタンスを制限できます。 使用可能なディメンションは次のとおりです: ワークロード・タイプ、インスタンスの表示名、リージョンおよびインスタンスOCID。

ディメンションを使用するには、Oracle Cloud Infrastructure「コンソール・サービス・メトリック」ページで値を選択するか、APIでディメンション値を設定します。 メトリックの表示およびメトリック・ディメンションの選択については、「コンパートメント内のAutonomous Databasesのメトリックの表示」を参照してください。

Autonomous Databaseでのカスタム・メトリックの使用

Autonomous Databaseでカスタム・メトリックを作成および公開する方法について説明します。

Autonomous Databaseは、「OCIモニタリング」サービスを介して使用可能な多くのデータベース関連メトリックを提供します。 また、カスタム・メトリックを作成して、独自のメトリックを収集、公開および分析できます。 カスタム・メトリックは、Autonomous Databaseインスタンスから指定されたデータを収集し、OCI SDKによって提供されるREST APIを使用してデータを「OCIモニタリング」サービスにパブリッシュします。

前提条件

  1. Oracle Cloud Free Tierまたは有料のクラウド・アカウントを介してOracle Cloud Infrastructureアクセスを取得します。

    詳細については、「Oracle Cloudアカウントの取得」を参照してください。

  2. Autonomous Databaseインスタンスを作成するか、既存のAutonomous Databaseインスタンスにアクセスできます。

    詳細については、「Autonomous Databaseインスタンスのプロビジョニング」を参照してください。

  3. Autonomous Databaseインスタンスの管理資格証明を取得します。

  4. データベース・アクションまたはOracle Databaseクライアント(SQL DeveloperやSQL*Plusなど)を使用して、データベースに接続します。

    詳細については、「Autonomous Databaseに接続」を参照してください。

  5. 「OCIモニタリング」サービスおよびOCI Identity and Access Managementにアクセスする必要があります。

    詳細については、「APIを使用したカスタム・メトリックの公開」を参照してください。

「OCIモニタリング」サービスを使用したカスタム・メトリックの概要

次の図は、Autonomous Databaseでカスタム・メトリックを作成および公開するステップを示しています。 これは、Autonomous Databaseインスタンスで実行されているスクリプトを使用してメトリック・データを収集し、このデータを「OCIモニタリング」サービスに公開し、メトリック値のアラームおよび通知を作成する方法を示しています。



  • PL/SQLスクリプトを作成して、Autonomous Databaseインスタンスにデプロイします。 このスクリプトは、カスタム・メトリックをコンピュート、収集および「OCIモニタリング」サービスに公開するために定期的に実行されます。

  • Autonomous Databaseインスタンスは、パブリック・エンドポイントまたはプライベート・エンドポイントに配置できます。 Autonomous Databaseインスタンスと「OCIモニタリング」サービス間の通信は、Oracle Cloudネットワークで行われます。 つまり、「OCIモニタリング」サービスでメトリックを公開するために、サービス・ゲートウェイを作成する必要はありません。

カスタム・メトリックの作成および公開

カスタム・メトリックを作成して公開するには:

  1. OCI Identity and Access Managementで、Autonomous Databaseインスタンスの動的グループを作成し、「OCIモニタリング」サービスにメトリックをポストする権限を動的グループに付与するポリシーを作成します。

    たとえば:

    1. Oracle Cloud Infrastructureコンソールで、「アイデンティティ&セキュリティ」をクリックします。
    2. 「アイデンティティ」で、「ドメイン」をクリックし、アイデンティティ・ドメインを選択します(または、新しいアイデンティティ・ドメインを作成します)。
    3. 「アイデンティティ・ドメイン」の下で、「動的グループ」をクリックします。
    4. 「動的グループの作成」をクリックし、「名前」「説明」およびルールを入力します。

      たとえば、Autonomous Databaseインスタンスに対してadb_dgという名前の動的グループを作成し、ルールを作成します:

      ALL {resource.type = 'autonomousdatabase', resource.compartment.id = 'OCID_of_compartment'}

      または、コンパートメント内のすべてのインスタンスではなく、単一のAutonomous Databaseインスタンスを選択できます:

      ALL {resource.type = 'autonomousdatabase', resource.id = 'OCID_of_autonomousdatabase_instance'}


    5. 「作成」をクリックします。
    6. 動的グループを認可するOCI Identity and Access Management (IAM)ポリシーを作成します。

      たとえば、ポリシーadb_dg_policyを使用してメトリックをOCIモニタリングサービスにポストする権限を動的グループadb_dgに付与するポリシーを作成します:

      Allow dynamic-group adb_dg to use metrics in compartment OCID_of_compartment


    ポリシーを定義すると、定義adb_dgを持つ動的グループは、コンパートメントにメトリックを投稿する権限を持ちます。

    この時点で、Autonomous Databaseで実行されているPL/SQLルーチンは、「OCIモニタリング」サービスにメトリックを公開する権限のあるAutonomous Databaseユーザーがいないため、どのメトリックも「OCIモニタリング」サービスにポストできません。 次のステップ(ステップ2c)でリソース・プリンシパルを有効にすると、この機能が提供されます。

  2. Autonomous Databaseインスタンスで必要な権限を持つ新しいデータベース・ユーザーまたはスキーマを作成するか、必要な権限で既存のデータベース・ユーザーまたはスキーマを更新します。

    たとえば:

    1. データベース・ユーザーを作成するか、既存のユーザーを使用してメトリックを公開します。

      たとえば、Autonomous Databaseインスタンスに新規ユーザーECOMMERCE_USERを作成します:

      CREATE USER ECOMMERCE_USER IDENTIFIED BY "password";

      これで、新しいユーザーECOMMERCE_USERができました。 次のステップは、このユーザーまたは指定したユーザーと同じです。 ただし、別の名前でユーザーを作成する場合は、ECOMMERCE_USERを代替ユーザー名に置き換える必要があります。

    2. 必要なOracle Database関連権限をユーザーに付与します。
      GRANT CREATE TABLE, ALTER ANY INDEX, CREATE PROCEDURE, 
             CREATE JOB, SELECT ANY TABLE, EXECUTE ANY PROCEDURE, UPDATE ANY TABLE, 
             CREATE SESSION, UNLIMITED TABLESPACE, CONNECT, RESOURCE 
             TO ECOMMERCE_USER;
      GRANT  SELECT ON "SYS"."V_$PDBS" TO ECOMMERCE_USER;
      GRANT  EXECUTE ON "C##CLOUD$SERVICE"."DBMS_CLOUD" to ECOMMERCE_USER;
      GRANT  SELECT ON SYS.DBA_JOBS_RUNNING TO ECOMMERCE_USER;
    3. Oracle Cloudリソース・プリンシパルのOracle Database資格証明を有効にし、ユーザーにアクセス権を付与します。

      このステップでは、ステップ1で作成した動的グループadb_dgをデータベース・ユーザーECOMMERCE_USERに接続し、「OCIモニタリング」サービスにメトリックをポストする権限をユーザーに付与します。

      たとえば:

      EXEC DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL(username => 'ECOMMERCE_USER');

      詳細については、「リソース・プリンシパルを使用したOracle Cloud Infrastructureリソースへのアクセス」を参照してください。

      リソース・プリンシパル認証の代替として、認証にOCIネイティブ資格証明を使用できます。 詳細については、「CREATE_CREDENTIALプロシージャ」を参照してください。

    4. (オプション)前のステップで完了した操作を確認します。

      たとえば:

      SELECT OWNER, CREDENTIAL_NAME FROM DBA_CREDENTIALS WHERE CREDENTIAL_NAME = 'OCI$RESOURCE_PRINCIPAL'  AND OWNER =  'ADMIN';

      ADMIN以外のユーザーがOCIリソース・プリンシパルにアクセスできるかどうかを確認するには、たとえば、ECOMMERCE_USERがデータベース資格証明にアクセスできるかどうかをチェックするには、DBA_TAB_PRIVSビューを使用します:

      SELECT * FROM DBA_TAB_PRIVS WHERE DBA_TAB_PRIVS.GRANTEE='ECOMMERCE_USER';
  3. メトリック・データを公開するPL/SQLスクリプトを作成し、スクリプトをAutonomous Databaseインスタンスで実行するようにスケジュールします。
    1. たとえば、Star Schema Benchmarkサンプル・データの行をカウントし、OCIモニタリング・サービスにパブリッシュするメトリックを含むPL/SQLスクリプトを作成します。
      CREATE OR REPLACE PROCEDURE publish_lineorder_metric (p_sql_statement IN VARCHAR2)
      IS
      l_result NUMBER;
      l_compartment_ocid VARCHAR2(255);
      l_db_name VARCHAR2(255);
      l_region VARCHAR2(255);
      l_json_payload CLOB;
      l_cloud_identity CLOB;
      BEGIN
      
      -- 1. Execute the SQL statement and get the result
      EXECUTE IMMEDIATE p_sql_statement INTO l_result;
       
       -- 2. Get compartment OCID, DB name, and region from cloud identity
       SELECT cloud_identity INTO l_cloud_identity FROM v$pdbs;
        
       l_compartment_ocid := JSON_VALUE(l_cloud_identity, '$.COMPARTMENT_OCID');
       l_db_name := JSON_VALUE(l_cloud_identity, '$.DATABASE_NAME');
       l_region := JSON_VALUE(l_cloud_identity, '$.REGION');
       
      DBMS_OUTPUT.PUT_LINE(l_cloud_identity);
       
       -- 3. Construct the JSON payload for the metric
      
       l_json_payload :=
       '{' ||
       ' "metricData": [' ||
       ' {' ||
       ' "namespace": "custom_metrics",' ||
       ' "compartmentId": "' || l_compartment_ocid || '",' ||
       ' "name": "lineorder_metric",' ||
       ' "dimensions": {' ||
       ' "dbName": "' || l_db_name || '"' ||
       ' },' ||
       ' "datapoints": [' ||
       ' {' ||
       ' "timestamp": "' || TO_CHAR(SYSTIMESTAMP AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.FF3"Z"') || '",' ||
       ' "value": ' || l_result ||
       ' }' ||
       ' ]' ||
       ' }' ||
       ' ]' ||
       '}';
       
       -- 4. Publish the metric using DBMS_CLOUD.SEND_REQUEST
      
       DECLARE
       l_response DBMS_CLOUD_TYPES.resp;
       BEGIN
       l_response := DBMS_CLOUD.SEND_REQUEST(
       credential_name => 'OCI$RESOURCE_PRINCIPAL',
       uri => 'https://telemetry-ingestion.' || l_region || '.oraclecloud.com/20180401/metrics',
       method => 'POST',
       body => UTL_RAW.CAST_TO_RAW(l_json_payload)
       );
       
       –- 5. Check response status
      
       IF DBMS_CLOUD.GET_RESPONSE_STATUS_CODE(l_response) = 200 THEN
       DBMS_OUTPUT.PUT_LINE('Metric published successfully!');
       ELSE
       DBMS_OUTPUT.PUT_LINE('Error publishing metric: ' || DBMS_CLOUD.GET_RESPONSE_STATUS_CODE(l_response));
       DBMS_OUTPUT.PUT_LINE(DBMS_CLOUD.GET_RESPONSE_TEXT(l_response));
       END IF;
       
       EXCEPTION
       WHEN OTHERS THEN
       DBMS_OUTPUT.PUT_LINE('Error during SEND_REQUEST: ' || SQLERRM);
       END;
      EXCEPTION
       WHEN OTHERS THEN
       DBMS_OUTPUT.PUT_LINE('Error: ' || SQLERRM);
      END;
      /

      詳細については、PostMetricDataを参照してください。

    2. カスタム・メトリック・データ・ポイントをコールして公開するジョブを1分間に1回スケジュールします。 本番環境では、スケジュールはニーズに応じて実行するように構成されます。
      BEGIN
         DBMS_SCHEDULER.CREATE_JOB (
            job_name => 'publish_lineorder_count_job',
            job_type => 'STORED_PROCEDURE',
            job_action => 'ECOMMERCE_USER.publish_lineorder_metric',
            number_of_arguments => 1,
            start_date => SYSTIMESTAMP,
            repeat_interval => 'FREQ=MINUTELY;INTERVAL=1',
            enabled => FALSE,
            AUTO_DROP => FALSE,
            comments => 'Publishes the count of rows in SSB.LINEORDER every 1 minute'
      );
       
        DBMS_SCHEDULER.SET_JOB_ARGUMENT_VALUE (
             job_name => 'publish_lineorder_count_job',
             argument_position => 1,
             argument_value => 'SELECT COUNT(*) FROM SSB.LINEORDER'
       );
       
         DBMS_SCHEDULER.ENABLE('ECOMMERCE_USER.PUBLISH_LINEORDER_COUNT_JOB');
      END;
  4. メトリック・エクスプローラで公開されたカスタム・メトリックを確認します。
    1. Oracle Cloud Infrastructureコンソールのナビゲーション・メニューから、「可観測性&管理」をクリックします。
    2. 「可観測性&管理」の下で、「メトリック・エクスプローラ」をクリックします。
    3. メトリック・エクスプローラで、ネームスペースとしてcustom_metrics_from_adbresourceGroupとしてecommerece_adb、メトリック名としてlineorder_metric (PL/SQLスクリプトで作成したメトリックの名前)を選択します。

      カスタム・メトリックに設定したすべてのメタデータおよびディメンションを使用できます。 メトリック問合せ言語(MQL)問合せを作成して、ニーズおよびユース・ケースに応じてこれらのメトリックを分析できます。 メトリック・ストリームにOracle Cloudアラームを設定して、運用チームにアラートを送信することもできます。 これにより、選択したAutonomous Databaseメトリックの可観測性ループが自動化されます。 メトリック・エクスプローラでは、デフォルトでメトリック画面にグラフ・ビューが表示され、リスト・ビューを有効にしてデータ・ポイントを強調表示できるオプションがあることに注意してください。

カスタム・メトリックを作成した後、「OCIモニタリング」サービスの事前定義済メトリックと同様にメトリックを使用できます。 つまり、メトリック問合せ言語(MQL)を使用してカスタム・メトリックを分析し、対象イベントが発生するたびに通知するアラームおよび通知を設定できます。

詳細は、次を参照してください: