メトリック拡張
概要
メトリック拡張では、スタック・モニタリングによって監視される任意のリソース・タイプに対してフルファンド・メトリックを作成できます。メトリック拡張を使用すると、IT環境に固有の条件をモニターするカスタム・メトリックを作成できます。これにより、環境の包括的な情報を把握できます。
メトリック拡張を作成すると、他のモニタリング・ツールを使用してこの補足的なモニタリングを提供するかわりに、スタック・モニタリングを環境全体の単一の集中モニタリング・ツールとして使用することで、IT組織の運用プロセスを簡略化できます。
メトリック拡張のライフサイクル
メトリック拡張の開発は、プログラミングによるカスタマイズで必要となるものと同じフェーズに従います。
メトリック拡張の作成には、次のフェーズが含まれます。
-
- 作成
- テスト
- 編集
- クローン
- エクスポートとインポート
このフェーズでは、メトリック拡張の作成後、メトリック拡張はドラフト・ステータスになり、リソースに対してテストし、それに応じて編集できます。
-
メトリック拡張を公開すると、一般に使用できるようになりますが、編集はできなくなります。
-
メトリック拡張を公開すると、リソースにデプロイして有効にできます。
メトリック拡張の使用
メトリック拡張の開発
メトリック拡張の作成
- 「スタック・モニタリング」メニューから、「メトリック拡張」を選択します。
- 「メトリック拡張の作成」をクリックします。「メトリック拡張の作成」UIパネルが表示されます。
-
メトリック拡張のプロパティ:
- メトリック拡張の「名前」を入力します。メトリック拡張名には、常にME_接頭辞が付きます。
ノート
メトリック拡張名は、リソース・タイプ全体で一意である必要があります。 - メトリック拡張の表示名を入力します。
- メトリック拡張の「説明」を入力します。
- メトリック拡張の「名前」を入力します。メトリック拡張名には、常にME_接頭辞が付きます。
-
収集メソッドのプロパティでは、作成するメトリック拡張のリソース・タイプおよびその他の収集プロパティを指定します。
- リソース・タイプ: メトリック拡張を作成するリソース・タイプ(ホスト、コンテナDBなど)。サポートされているリソース・タイプおよびサポートされているインスタンス・プロパティの詳細は、サポートされているリソース・タイプとサポートされているインスタンス・プロパティを参照してください。
- 収集頻度: メトリック拡張を収集する頻度を指定します。
- 収集方法: メトリック拡張の収集に必要な収集方法のタイプを指定します。次の収集メソッドがサポートされています。各収集メソッドおよび例の詳細は、「収集メソッドのプロパティ」を参照してください。
- OSコマンド: このメソッドは、指定されたOSコマンドまたはスクリプトを実行し、各コマンドライン(ユーザー指定文字で区切られた)を複数値に解析します。メトリックの結果は、複数の行と複数の列で構成される表です。
- SQL: このメソッドは、データベースに対してカスタムSQL問合せ、ファンクションまたはSQLスクリプトを実行し、結果としてメトリック表を返します。
- JMX: (Java Management Extensions) : このメソッドは、JMX対応サーバーからJMX属性を取得し、これらの属性をメトリック表として返します。
- HTTP: このメソッドは、特定のHTTP(S)エンドポイント(URL)を起動し、指定されたJavaScriptファイルを使用してレスポンスをメトリック表として変換します。
-
メトリック/ディメンション:
メトリック拡張の実行によって返される各値について、値がメトリックまたはディメンションであるかどうか、および関連するプロパティを識別します。
ノート
- カスタム・スクリプトによって返される値は、複数行の複数列表になることが予想されます。
- 各列の出力は、関連する属性とともにメトリックまたはディメンションとして識別する必要があります。
- メトリック・データ・ポイントは数値にする必要があります。
メトリック・ディメンションには、次の属性を含める必要があります。
- 名前: PascalCaseに英語のアルファベットのみを含むメトリックまたはディメンションの名前を指定します。つまり、単語の最初の文字はすべて、OCI監視要件に従ってスペースまたは数字を含まない大文字にする必要があります。適切なメトリック名の例として、CpuUtilization、TotalDatabaseSize、FileSystemUsageなどがあります。
ノート
ドラフト・メトリックは、同じリソース・タイプに対して同じ名前を持つことができますが、公開されたメトリックの場合には使用できません。リソース・タイプの特定のメトリック名がすでに取得され、公開されたメトリック拡張で使用されている場合、同じリソース・タイプに対する他の公開済メトリック拡張の名前の一部である別のメトリックで同じメトリックを使用することはできません。
たとえば、リソース・タイプ
host_linux
に対して公開されたメトリック拡張ME_FirstMetricExtensionがあり、MetricFirst
という名前のメトリックがある場合、MetricFirst
という名前のメトリックを持つ同じリソース・タイプhost_linux
に対して別のメトリック拡張ME_SecondMetricExtensionを公開することはできません。この制約は、非表示のメトリックおよびディメンションには適用できません。
- 表示名(オプション): 名前と異なる場合は、表示名を指定します。表示名にはスペースや数字も使用できます。
- ディメンションですか。: メトリックを定義する場合は「いいえ」を選択し、メトリック・ディメンションを定義する場合は「はい」を選択します。
ディメンションはメトリックの修飾子であり、メトリック収集結果の行ごとに一意の値である必要があります。たとえば、メトリックは「ファイルシステムの使用率」で、ディメンションは「ファイルシステム名」です。
- 非表示ですか?(拡張): メトリックがコンピュート式でのみ使用される場合、つまり、メトリックが別のメトリックを計算する値としてのみ使用される場合、またはOCIモニタリングに送信する必要がない場合は、「はい」を選択します。そうでない場合、「いいえ」を選択します。
- 値タイプ: 非表示のメトリックはすべて数値である必要があります。非表示のメトリックまたはディメンションは、
String
またはNumber
です。 - ユニット: メトリックに関連付けられたユニット。可能な単位は、メトリックに応じて、待機時間(秒、ミリ秒、マイクロ秒、分、またはHertzの頻度またはパーセンテージ)です。
- カテゴリ: メトリックが収集するメトリック・データのタイプ(可用性、容量、ロード、使用率)を識別します
-
コンピュート式: コンピュート式を使用して、同じメトリック拡張内の他のメトリックまたはディメンションに対して実行される数学的または論理的な操作に基づいてメトリックの値を計算します。コンピュート式では、最初に他のメトリックを少なくとも1つ定義する必要があり、メトリック拡張ですでに定義されている他のメトリックのみを含めることができます。詳細は、コンピュート式を参照してください。
-
メトリック拡張の作成およびテストまたは作成
-
作成およびテストでは、メトリック拡張を1つ以上のリソースに対してテストし、返される値が正しいことを確認できます。返された値に基づいて、反復的な方法で編集およびテストを続行できます。
ノート
メトリック拡張をテストすると、管理エージェントが再起動されます。その結果、非本番リソースでメトリック拡張をテストすることをお薦めします。ノート
列が適切でないことが判明した場合は、「メトリック/ディメンションの順序変更」ボタンを使用して修正します。 -
「作成」では、メトリック拡張の定義を保存し、後でリソースに対してテストできます。
-
メトリック拡張のテストおよび編集
- メトリック拡張の作成後、「ドラフト」ステータスになります。「ドラフト」ステータスの場合、引き続きメトリック拡張定義を編集し、リソースに対してメトリック拡張をテストできます。
- テストでは、メトリックをテストできるリソースを選択します。このプロセスには、メトリック拡張がリソースのエージェントにデプロイされ、リソースに対してメトリック収集が実行されるため、数分かかる場合があります。
ノート
メトリック拡張をテストして後で有効化できるリソースは、Stack Monitoring Enterprise Editionで有効にする必要があります。詳細は、ライセンスの構成を参照してください。ノート
メトリック拡張をテストする場合は、次のガイドラインに従ってください:- 本番環境でテストしないでください。
- テスト専用の独自の管理エージェントを使用して、テスト・リソース・インスタンスを割り当てます。メトリック拡張でテストされている問合せ/スクリプトのパフォーマンスが低下し、他の管理エージェント機能に影響する可能性があります。
- テストで障害が発生した場合は、ステップを繰り返してメトリック拡張を作成します。
- テストが成功した場合は、返されるメトリック値が正しいことを確認します。
列が適切でないことが判明した場合は、「メトリック/ディメンションの順序変更」ボタンを使用して修正します。
メトリック拡張のクローン
メトリック拡張をクローニングすると、既存のメトリック拡張から新しいメトリック拡張を開発できます。
「ドラフト」または「公開済」ステータスのメトリック拡張の場合、行レベル・メニューから「クローン」を選択し、「メトリック拡張の作成」UIパネルを開きます。元のメトリック拡張からのすべての情報が入力されますが、「名前」は、元のメトリック拡張の名前の後にClone
が続きます。必要に応じてパラメータを編集し、メトリック拡張の作成の残りのプロセスに従ってファイナライズします。
メトリック拡張のエクスポートおよびインポート
メトリック拡張のインポートとエクスポートにより、コンパートメント間でメトリック拡張を共有したり、メトリック拡張をローカルに格納するなど、メトリック拡張での作業をより柔軟に行うことができます。
-
メトリック拡張をエクスポートするには:
- 「ドラフト」または「公開済」ステータスのメトリック拡張の場合、行レベル・メニューから「エクスポート」を選択して、メトリック拡張をローカルに保存します。
- ファイルのデフォルト名には、タイムスタンプと
MetricExtensions-Export
接頭辞が含まれます。必要に応じてエクスポート・ファイルの名前を編集し、「保存」をクリックします。
- メトリック拡張をインポートするには、「メトリック拡張のインポート」をクリックし、インポートするメトリック拡張ファイルを選択します。
ノート
メトリック拡張をインポートする場合は、ファイルが1.0.0
以上のschemeVersion
を使用していることを確認してください。
メトリック拡張の公開
メトリック拡張は、公開されるまで一般に使用できません。メトリック拡張の結果をテストおよび検証した後、公開できます。メトリック拡張が公開されると、リソースで有効にできます。
メトリック拡張が公開されると、編集もテストもできなくなります。
リソースのメトリック拡張の有効化
メトリック拡張が公開されると、それを有効化して、目的のリソースにデプロイできます。メトリック拡張を有効にすると、リソースを監視しているエージェントにデプロイされ、リソースに対するメトリック収集が開始されます。
リソースでメトリック拡張を有効にするには:
- メトリック拡張のリストから、公開されたメトリック拡張を選択します。
- 行レベルのアクション・メニューから「有効化」を選択します。
- メトリック収集を開始するリソースを選択します。
- メトリック拡張をエージェントにデプロイし、選択したリソースでメトリック収集を開始するなど、リソースでメトリック拡張を有効にするプロセスには数分かかる場合があります。有効化リクエストのステータスを追跡するには、ページに留まるようにしてください。
ノート
メトリック拡張をエージェントに初めてデプロイする場合(リソースでのメトリック拡張の有効化の一部として)、デプロイメントには最大2分かかる場合があります。これにより、エージェントが再起動される可能性があるため、2分間そのエージェントがモニターしているすべてのリソースのステータスがエージェントに報告されない場合があります。
メトリック拡張の表示
メトリック拡張は、リソースで有効にすると、そのホームページのパフォーマンス・チャートに自動的に表示されます。メトリック拡張を識別するには、メトリック名の横にある*記号を見つけます。
メトリック拡張のメトリック・データは、ネームスペースoracle_metric_extensions_appmgmt
で有効になっているリソースと同じコンパートメントに格納されます。

「エンタープライズ・ヘルスおよびアラーム」で、任意のチャートにメトリック拡張を表示します:
- 鉛筆アイコンをクリックして、チャートをカスタマイズします。
- 表示される編集ダイアログで、次を選択します。
- ネームスペース:
oracle_metric_extensions_appmgmt
- リソース・タイプ: メトリック拡張が作成されたリソースのタイプ。
- メトリック名: メトリック拡張のメトリック。
- ネームスペース:
メトリック拡張パラメータ
サポートされているリソース・タイプとそのサポートされているインスタンス・プロパティ
リソース・タイプの表示名 | リソースの種類 | プラグインの所属先 | サポートされるコレクション・メソッド | インスタンス・プロパティ・リスト |
---|---|---|---|---|
Apache HTTP Server | apache_http_server | appmgmt | OS_COMMAND、HTTP | compartmentId、metric_endpoint、httpd_conf_path、httpd_bin_path、httpd_pid_path、プロトコル、listen_port、os_type |
Apache Tomcat | apache_tomcat | appmgmt | OS_COMMAND、JMX | compartmentId,service_url |
ASM | oci_oracle_asm | dbaas | OS_COMMAND、SQL | |
クラスタ・インスタンス | oci_oracle_cluster_instance | dbaas | OS_COMMAND | oracleHome |
コンテナDB | oci_oracle_cdb | dbaas | OS_COMMAND、SQL | |
EBS | ebs_instance | appmgmt | OS_COMMAND、SQL | ホスト名、db_port、db_sid、db_host、db_service、allowed_logon_version、app_schema、long_running_request_threshold_in_minutes |
EBSアプリケーション・リスナー | oracle_ebs_app_lsnr | appmgmt | OS_COMMAND | listener_ora_directory,oracle_home,tns_control |
EBSコンカレント処理 | oracle_ebs_conc_mgmt_service | appmgmt | OS_COMMAND、SQL | db_host,db_port,db_sid,app_schema,service_name,allowed_logon_version,long_running_request_threshold_in_minutes |
EBSコンカレント処理 - 特殊 | oracle_ebs_conc_mgmt_service_specialized | appmgmt | OS_COMMAND、SQL | db_host,db_port,db_sid,app_schema,service_name,allowed_logon_version |
EBS Formsシステム | oracle_ebs_forms_system | appmgmt | OS_COMMAND、SQL | db_host,db_port,db_sid,app_schema,service_name,allowed_logon_version |
EBSワークフロー・エージェント・リスナー | oracle_ebs_wf_agent_lsnr | appmgmt | OS_COMMAND、SQL | db_host,db_port,db_sid,app_schema,service_name,allowed_logon_version |
EBSワークフロー・バックグラウンド・エンジン | oracle_ebs_wf_bkgd_engine | appmgmt | OS_COMMAND、SQL | db_host,db_port,db_sid,app_schema,service_name,allowed_logon_version |
EBSワークフロー通知メーラー | oracle_ebs_wf_notification_mailer | appmgmt | OS_COMMAND、SQL | db_host,db_port,db_sid,app_schema,service_name,allowed_logon_version |
Elasticsearch | elastic_search | appmgmt | OS_COMMAND、HTTP | es_base_url |
GoldenGate | oracle_goldengate | appmgmt | OS_COMMAND、HTTP | ogg_url,compartmentId |
GoldenGate管理サービス | oracle_goldengate_admin_server | appmgmt | OS_COMMAND、HTTP | compartmentId,process_name,api_process_name,pm_server_url,deployment_path |
GoldenGateデプロイメント | oracle_goldengate_deployment | appmgmt | OS_COMMAND、HTTP | compartmentId,ogg_url,ogg_hostname,ogg_port |
GoldenGate分散パス | oracle_goldengate_distribution_path | appmgmt | OS_COMMAND、HTTP | compartmentId,distribution_server_url,path_name,deployment_path |
GoldenGate分散サービス | oracle_goldengate_distribution_server | appmgmt | OS_COMMAND、HTTP | compartmentId,process_name,api_process_name,pm_server_url,deployment_path |
GoldenGate Extract | oracle_goldengate_extract | appmgmt | OS_COMMAND、HTTP | pm_server_url,process_name,api_process_name,compartmentId,deployment_path |
GoldenGateパフォーマンス・メトリック・サービス | oracle_goldengate_pm_server | appmgmt | OS_COMMAND、HTTP | compartmentId,pm_server_url,process_name,api_process_name,deployment_path |
GoldenGate受信パス | oracle_goldengate_receiver_path | appmgmt | OS_COMMAND、HTTP | receiver_server_url,path_name,compartmentId,deployment_path |
GoldenGateレシーバ・サービス | oracle_goldengate_receiver_server | appmgmt | OS_COMMAND、HTTP | compartmentId、process_name、api_process_name、バージョン、pm_server_url、deployment_path |
GoldenGate Replicat | oracle_goldengate_replicat | appmgmt | OS_COMMAND、HTTP | compartmentId,pm_server_url,api_process_name,process_name,deployment_path |
GoldenGateサービス・マネージャ | oracle_goldengate_service_manager | appmgmt | OS_COMMAND、HTTP | ogg_url,ogg_hostname,ogg_port,compartmentId,service_manager_url |
GPU | gpu | appmgmt | OS_COMMAND | pciId |
ホスト- Linux | host_linux | appmgmt | OS_COMMAND | compartmentId,hostType,osType |
ホスト- Solaris | host_solaris | appmgmt | OS_COMMAND | compartmentId,hostType,osType |
ホスト - Windows | host_windows | appmgmt | OS_COMMAND | compartmentId,hostType,osType |
Listener | oci_oracle_lsnr | dbaas | OS_COMMAND | oracleHome、lsnrType、別名 |
Microsoft Internet Information Services | microsoft_iis | appmgmt | OS_COMMAND | compartmentId、ホスト名、total_cpus、total_memory |
Microsoft Internet Information Services Webサイト | microsoft_iis_website | appmgmt | OS_COMMAND | compartmentId、ホスト名、ID、website_name |
Microsoft SQL Server | sql_server | appmgmt | OS_COMMAND、SQL | compartmentId、inst_name、ホスト名、ポート、root_dir、os_platform、os_distro、os_release、time_zone、バージョン |
非コンテナDB | oci_oracle_db | dbaas | OS_COMMAND、SQL | |
OpenSearch | open_search | appmgmt | OSコマンド、HTTP | os_base_url |
Oracle Access Management Cluster** | oracle_oam_cluster | appmgmt | OS_COMMAND、JMX | app_name,server_names,service_url |
Oracle Access Management** | oracle_oam | appmgmt | OS_COMMAND、JMX | app_name,server_names,service_url,weblogic_home |
Oracle HTTP Server | oracle_http_server | appmgmt | OS_COMMAND | compartmentId,service_url,name,version,domain_name,node_manager_hostname,node_manager_port,ohs_home_path,type,owner_credentials |
Oracle Identity Managerクラスタ** | oracle_oim_cluster | appmgmt | OS_COMMAND、JMX | service_url、app_name、server_names、バージョン |
Oracle Identity Manager** | oracle_oim | appmgmt | OS_COMMAND、JMX | ホスト名、service_url、app_name、server_names、バージョン、weblogic_home |
Oracle JVMランタイム | oracle_jvm | appmgmt | OS_COMMAND、JMX | compartmentId,service_url |
Oracle Managed File Transfer** | oracle_mft | appmgmt | OS_COMMAND、SQL | server_name,service_url,db_schema_name,db_port,db_sid,db_host,db_service_name |
Oracle Service Bus (OSB)** | oracle_servicebus | appmgmt | OS_COMMAND、JMX | compartmentId,name,server_name,oracle_home,version,service_url |
Oracle WebLogic Cluster** | weblogic_cluster | appmgmt | OS_COMMAND、JMX | compartmentId、service_url、server_names、name、version、dms_spy |
Oracle WebLogic Domain** | weblogic_domain | appmgmt | OS_COMMAND、JMX | admin_server_host,admin_server_port,admin_server_protocol,admin_service,admin_service_url |
Oracle WebLogic Server** | weblogic_j2eeserver | appmgmt | OS_COMMAND、JMX | compartmentId、service_url、name、version、dms_spy |
プラガブルDB | oci_oracle_pdb | dbaas | OS_COMMAND、SQL | |
PSFTアプリケーション | oracle_psft | appmgmt | OS_COMMAND、SQL | ホスト名、db_port、db_sid、db_host、db_service_name、peoplesoft_json_file、allowed_logon_version |
PSFTアプリケーション・サーバー・ドメイン | oracle_psft_appserv | appmgmt | OS_COMMAND、JMX | ホスト名、jmx_url、ps_cfg_home、app_server_domain |
PSFTアプリケーション・サーバー・グループ | oracle_psft_appserv_group | appmgmt | OS_COMMAND | ホスト名、db_port、db_host、db_service |
PSFT PIA | oracle_psft_pia | appmgmt | OS_COMMAND、JMX | ostname、jmx_url、ps_cfg_home、pia_domain |
PSFT PIAグループ | oracle_psft_pia_group | appmgmt | OS_COMMAND | ホスト名、db_port、db_host、db_service |
PSFTプロセス・モニター | oracle_psft_prcm | appmgmt | OS_COMMAND、SQL | db_host,db_port,db_service_name |
PSFT Process Schedulerドメイン | oracle_psft_prcs | appmgmt | OS_COMMAND、JMX | ホスト名、jmx_url、ps_cfg_home、prcs_domain |
PSFT Process Schedulerグループ | oracle_psft_prcs_group | appmgmt | OS_COMMAND | ホスト名、db_port、db_host、db_service |
SOAインフラストラクチャ** | oracle_soainfra | appmgmt | OS_COMMAND、JMX | compartmentId,name,server_name,version,service_url |
**一部のリソースタイプでは、リモートモニタリングもサポートされます。ただし、ローカル監視もサポートしているため、OSコマンドは、それぞれの管理エージェントによってローカルに監視されているリソース・インスタンスでのみ使用できます。
コレクション・メソッドのプロパティ
OSコマンド収集メソッド- コマンド: 実行するコマンド。たとえば:
/bin/bash
- Linuxの場合cmd.exe
- Windowsの場合
完全なコマンドラインは
Command + Script + Arguments
として構成されます。スクリプトを使用する前に、呼び出されるコマンド/スクリプトが破壊的ではないことを確認してください。
ノート
シェル・コマンドは、コマンド値の一部として直接使用できないため、スクリプト・コンテンツ内で使用します。 - 出力のデリミタ: コマンド出力をデリミタするために使用する文字列。デリミタの例は、
|
です。 - 引数: スペースで区切られたスクリプトまたはコマンドの引数。
ノート
リソース・タイプのインスタンス・プロパティは、2つの%
記号内に配置することで引数として渡すことができます。たとえば、host_linux
リソース・タイプの場合、osType
は適用可能なインスタンス・プロパティです。このインスタンス・プロパティの値を引数としてスクリプトに渡す必要がある場合、引数プロパティを%osType%
に設定できます。使用可能なインスタンス・プロパティのリストは、サポートされているリソース・タイプとそのサポートされているインスタンス・プロパティ表に示されています。 - 出力の接頭辞: メトリックの結果行の開始文字列。
たとえば、コマンド出力が
sm_result= 3454 | abc | def
の場合、Prefix for output = sm_result
は、sm_result
で始まる行のみを使用してメトリック・データを収集することを指定します。 - スクリプト・ファイル: メトリック・データを生成するために実行されるカスタム・スクリプト。
OSコマンド収集方法を使用するすべてのサービスのハンドラ・ロード、maxload、確立済、拒否済、ハンドラIDおよび接続レートを取得するリスナー・リソース・タイプに対するメトリック拡張の作成パラメータについて、次に説明します。
-
メトリック拡張のプロパティ:
プロパティ名 プロパティ値 名前 ME_GetListenerDetails 表示名 リスナー詳細の取得 内容 すべてのサービスのハンドラ・ロード、最大ロード、確立済、拒否済、ハンドラIDおよび接続レートを取得するリスナー・リソース・タイプのメトリック拡張
-
収集方法のプロパティ:
oracleHome、aliasおよびlsnrTypeは、
%
記号内の「引数」プロパティで使用されるリスナー・リソース・タイプのインスタンス・プロパティです。ここで、%
記号は、インスタンス・プロパティ参照を保持するために使用されますプロパティ名 UIのプロパティ値 APIのプロパティ値(UIと異なる場合のみ) リソース・タイプ Listener oci_oracle_lsnr コレクション・メソッド OSコマンド OS_COMMAND 収集頻度 15分 頻度= 分; 間隔=15 コマンド /bin/bash Delimiter | 引数 %oracleHome% %alias% %lsnrType% 出力の接頭辞 result= スクリプト・ファイル services.sh
-
"content" - services.shのbase64でエンコードされたコンテンツを格納する必要があります
- 名前: services.sh
-
-
メトリック/ディメンション:
メトリック/ディメンション メトリック/ディメンションのプロパティ TotalRefusedConnections -
値タイプ: 数値
-
ディメンションですか。: いいえ
-
非表示: いいえ
TotalEstablishedConnections -
値タイプ: 数値
-
ディメンションですか。: いいえ
-
非表示: いいえ
MaxConnections -
値タイプ: 数値
-
ディメンションですか。: いいえ
-
非表示: いいえ
-
単位: 接続
HandlerId -
値タイプ: String
-
ディメンションですか。: はい
-
非表示: いいえ
EstablishedConnectionsRate -
値タイプ: 数値
-
ディメンションですか。: いいえ
-
非表示: いいえ
- 計算式:
(TotalEstablishedConnections > _TotalEstablishedConnections) ? ((TotalEstablishedConnections - _TotalEstablishedConnections) / __interval) : 0
-
ユニット: 接続数/秒
- __intervalを使用してレート・メトリックを導出できます。__intervalは常に「収集頻度」フィールドの「秒」表現と等しくなります。たとえば、収集頻度が15分の場合、__intervalは15x60 (900秒)です。
- メトリック名に接頭辞を付ける場合は「_」に特別な意味があります。コンピュート式でのそのような表現は、メトリック拡張の最後の収集で計算されたメトリックの値を参照するために使用できます。これは、計算式で使用して、最後に収集された値と比較して特定のメトリックの値の変化を導出できます。この特殊な接頭辞を使用すると、デルタ・メトリックを導出できます。
ActiveConnections -
値タイプ: 数値
-
ディメンションですか。: いいえ
-
非表示: いいえ
-
単位: 接続
-
SQL収集メソッド
- SQL問合せ: 実行するSQL問合せ。たとえば、
select a.ename, (select count(*) from emp p where p.mgr=a.empno) directs from emp a
です。PL/SQL文もサポートされており、「アウト・パラメータの位置」および「アウト・パラメータのタイプ」プロパティを移入する必要があります。バインド変数は、In parameterプロパティを使用してSQL問合せに渡すことができます。
- SQLスクリプト: 実行するSQLスクリプトをアップロードし、関連するINパラメータとOUTパラメータのプロパティを指定します。SQL問合せまたはSQLスクリプトのいずれかを使用できます。
- パラメータ内(オプション) - SQL問合せケースのバインド変数またはSQLスクリプト・ケースのパラメータに使用できます。
ノート
このプロパティは、インスタンス・プロパティ・プレースホルダの使用をサポートしています。このプレースホルダは、メトリックが収集されるリソースのインスタンス・プロパティの実際の値でプレースホルダを置換するために使用できます。たとえば、oracle_psft
の場合、db_service_name
はインスタンス・プロパティです。これは、%db_service_name%
などの%
(パーセンテージ)記号のペア内でInパラメータ値の内部に渡すことができます。 - アウト・パラメータの位置(オプション) - これはアウト・パラメータのポジション番号です
- 出力パラメータ・タイプ(オプション) - これは出力パラメータのタイプです。
SQL収集メソッドを使用して様々な待機クラスの待機時間を取得する非コンテナDBリソース・タイプのメトリック拡張の作成パラメータを次に説明します。
-
メトリック拡張のプロパティ:
プロパティ名 プロパティ値 名前 ME_GetWaitTime 表示名 取得待機時間 Description 非コンテナDBリソース・タイプのメトリック拡張。
異なる待機クラスの待機時間
-
収集方法のプロパティ:
プロパティ名 UIのプロパティ値 APIのプロパティ値(UIと異なる場合のみ) 収集頻度 1時間 頻度= 時間; 間隔=1 収集方法 SQL リソースの種類 非コンテナDB oci_oracle_db SQL問合せ WITH wait_stats AS ( SELECT inst_id, wait_class, time_waited_fg FROM TABLE ( gv$(CURSOR( SELECT to_number(userenv('INSTANCE')) AS inst_id, wait_class, time_waited_fg / 100 AS time_waited_fg FROM v$system_wait_class WHERE wait_class <> 'Idle' )) ) ), inst_list AS ( SELECT instance_number, instance_name, host_name FROM TABLE ( gv$(CURSOR( SELECT instance_number, instance_name, host_name FROM v$instance )) ) ) SELECT inst.instance_number instance_number, inst.instance_name instance_name, inst.host_name host_name, ws.wait_class wait_class, ws.time_waited_fg time_waited_fg FROM wait_stats ws, inst_list inst WHERE inst.instance_number = ws.inst_id
-
"content" - base64でエンコードされたSQL文を含む必要があります
- sqlType : 文
-
-
メトリック/ディメンション:
メトリック/ディメンション メトリック/ディメンションのプロパティ InstanceNumber -
値タイプ: 数値
-
ディメンションですか。: はい
-
非表示: いいえ
InstanceName -
値タイプ: String
-
ディメンションですか。: はい
-
非表示: いいえ
HostName -
値タイプ: String
-
ディメンションですか。: はい
-
非表示: いいえ
WaitClass -
値タイプ: String
-
ディメンションですか。: はい
-
非表示: いいえ
TimeWaitedSeconds -
値タイプ: 数値
-
ディメンションですか。: いいえ
-
非表示: いいえ
-
単位: 秒
-
JMX収集メソッド
- MBean name - JMX MBean ObjectNameまたはメトリック・サービスの表名
ノート
このプロパティは、メトリックが収集されるリソースのインスタンス・プロパティの実際の値でプレースホルダを置換するために使用できるインスタンス・プロパティ・プレースホルダの使用をサポートしています。たとえば、
weblogic_j2eeserver
の場合、service_url
はインスタンス・プロパティです。これは、%service_url%
などの%
記号内のMBean名前値文字列内で渡すことができます。JMX属性およびアイデンティティ列では、インスタンス・プロパティ・プレースホルダの使用もサポートされています。
- JMX属性- Java Management Extensions (JMX)属性。JMX属性またはメトリック・サービス列の、セミコロン区切りのリスト
- アイデンティティ列(オプション) - キー・メトリックとして使用される、Managed Bean ObjectNameのキー・プロパティのセミコロン区切りのリスト。
- 自動行接頭辞(オプション) - これは、キー・メトリックとして自動生成された行に使用される接頭辞です。たとえば、ShipItem- に設定されている場合、値はShipItem-0、ShipItem-1のように設定されます。
- サーバー・ドメインでメトリック・サービス使用可能? (オプション) - サーバー・ドメインでメトリック・サービスが有効かどうかを示します。trueに設定されている場合、基本プロパティ
MBean name
はMetric Service
表名になり、基本プロパティJMX attributes
はMetricService
表の列名のセミコロン区切りリストになります。ノート
このオプションは、リソース・タイプに適用可能でサーバー・ドメインで有効になっているメトリック・サービスがある場合にのみ選択します。
JMX収集方法を使用してガベージ・コレクタの収集時間を取得するoracle weblogicサーバー・リソース・タイプのメトリック拡張の作成パラメータ。
-
メトリック拡張のプロパティ:
プロパティ名 プロパティ値 Name* ME_TotalGcExecutionTime 名前の表示* ガベージ・コレクション合計時間の取得 内容 oracle weblogicサーバー・リソース・タイプのメトリック拡張。
合計ガベージ・コレクション実行時間
-
収集方法のプロパティ:
ここで、nameはOracle Weblogic Serverのインスタンス・プロパティで、JMXタイプ・メトリック拡張定義の
Mbean name
属性内の%
インスタンス・プロパティ・プレースホルダ内で使用されています。プロパティ名 UIのプロパティ値 APIのプロパティ値(UIと異なる場合のみ) リソース・タイプ Oracle WebLogic Server weblogic_j2eeserver 収集方法 JMX 収集頻度 1日 頻度= 日次; 間隔=1 MBean名 java.lang:Location=%name%,type=GarbageCollector,* JMX属性 CollectionTime ID列 名前; 場所 -
メトリック/ディメンション:
メトリック/ディメンション メトリック/ディメンションのプロパティ ServerName -
値タイプ: String
-
ディメンションですか。: はい
-
非表示: いいえ
ServerRuntime -
値タイプ: String
-
ディメンションですか。: はい
-
非表示: いいえ
TotalGCExecTime -
値タイプ: 数値
-
ディメンションですか。: いいえ
-
非表示: いいえ
-
単位: ミリ秒
-
HTTP収集メソッド
- URL: rawメトリック・データを取得するために起動する必要があるhttp(s)エンドポイント。たとえば:
%metric_endpoint%?auto=dummy
ノート
このプロパティは、インスタンス・プロパティ・プレースホルダの使用をサポートしています。このプレースホルダは、メトリックが収集されるリソースのインスタンス・プロパティの実際の値でプレースホルダを置換するために使用できます。前述の例では、metric_endpoint
はApache HTTP Serverリソース・タイプのインスタンス・プロパティであり、%
(パーセンテージ)シンボルのペア内で記述されています。メトリック拡張を実行すると、%metric_endpoint%
の実際の値が、それぞれのリソースのインスタンス・プロパティ値に置き換えられます。 - レスポンス・タイプ: http(s)エンドポイントによって返されるレスポンスのタイプ。次のタイプのレスポンスがサポートされています。
text/plain
text/html
application/json
application/xml
- プロトコル(オプション): これは、Apache HTTP Serverの場合にのみ適用でき、Apache HTTP Serverリソースの検出時に使用されるプロトコルに従って設定する必要があります。
http
またはhttps
は、2つの可能な値です。他のすべてのリソース・タイプの場合、このプロパティは、デフォルト値であるhttps
にのみ設定できます。ノート
プロトコル値http
で定義されたHTTPメトリック拡張は、対応するプロトコル値http
またはhttps
で検出されたApache HTTP Serverリソースに対してのみ有効にできます。 - スクリプト・ファイル: URLレスポンスを意味のあるメトリック・データに変換するJavaScriptファイル。このファイルには、
runMethod
というファンクションが事前定義済のシグネチャを持つ必要があります。このファンクションは、常に2次元配列を戻す必要があります。この配列には、メトリック拡張で定義されたメトリックおよびディメンションに正確にマップされる変換済データが格納されます。runMethod(metricObservation, sourceProps)
のパラメータ:パラメータ Description metricObservation
メトリック・データの生成に必要なURLからのレスポンス。 sourceProps
キーと値のペアのリストであり、メトリック拡張が実行されるリソースのインスタンス・プロパティを保持します。 runMethod
の機能要件:- パラメータ
metricObservation
に含まれるURLからのレスポンスを解析します。 - 必要なメトリック/ディメンション・データを生成し、2次元配列で返します。
- 必要に応じて、
sourceProps
を使用して、機能ロジックを実装します。
- パラメータ
次に例を示します:
HTTP収集メソッドを使用してヒットおよびミスのケースのCacheRetrievesCount
を取得するApache HTTP Serverリソース・タイプ用のメトリック拡張の作成パラメータを次に説明します。
- メトリック拡張のプロパティ:
プロパティ名 プロパティ値 名前 ME_GetCacheRetrievesCount 表示名 キャッシュ取得数の取得 内容 ヒットおよびミス・ケースのCacheRetrievesCountを取得するApache HTTP Serverリソース・タイプのメトリック拡張
- 収集方法のプロパティ:
プロパティ名 UIのプロパティ値 APIのプロパティ値(UIと異なる場合のみ) 収集頻度 1時間 頻度= 時間; 間隔=1 収集方法 http リソースの種類 Apache HTTP Server apache_http_server URL %metric_endpoint%?auto= ダミー レスポンス・タイプ text/plain TEXT_PLAIN プロトコル・タイプ HTTP スクリプト・ファイル const METRIC_NAMES = ["CacheRetrieveMissCount", "CacheRetrieveHitCount"];
関数runMethod(metricObservation、sourceProps)
{
constメトリック= {};
const metricOutput = metricObservation;
/*
解析URLレスポンスはmetricObservationにあります
サンプル・レスポンスの一部を次に示します:
************************
TLSSessionCacheStatus
CacheType: SHMCB
CacheSharedMemory: 512000
CacheCurrentEntries: 0
CacheSubcaches: 32
CacheIndexesPerSubcaches: 88
CacheIndexUsage: 0%
CacheUsage: 0%
CacheStoreCount: 5
CacheReplaceCount: 0
CacheExpireCount: 5
CacheDiscardCount: 0
CacheRetrieveHitCount: 0
CacheRetrieveMissCount: 104
CacheRemoveHitCount: 0
CacheRemoveMissCount: 0
************************
*/
const lines = metricOutput.trim().split("\n");
for (行列) {
const lineParts = line.trim().split(": ");
if (lineParts.length === 2 && METRIC_NAMES.includes(lineParts[0])) {
Metrics[lineParts[0]] = parseFloat(lineParts[1]);
}
}
/*
ディメンションCacheRetrievesTypeおよびメトリックCacheRetrievesCountの値を持つ2次元配列を生成します
*/
[['Hit'、 metric["CacheRetrieveHitCount"]]を返します。
['Miss', metric["CacheRetrieveMissCount"]];
}
- "content" - JavaScriptファイルのbase64でエンコードされたコンテンツを格納する必要があります
- 名前: ahs_cacheRetrieves.js
- メトリック/ディメンション:
メトリック/ディメンション メトリック/ディメンションのプロパティ CacheRetrievesType - 値タイプ: 文字列
- ディメンションですか。: はい
- 非表示: いいえ
CacheRetrievesCount - 値タイプ: 数値
- ディメンションですか。: いいえ
- 非表示: いいえ
計算式
有効な計算式を作成するには、演算子とオペランド/メトリック名の間に空白を指定する必要があります。
例:
((MetricA * MetricB) / MetricC)
MetricA
と*
記号の間でのspace
の使用に注意してください。同様に、閉じカッコと/
記号、/
記号とMetricC
の間には、*
とMetricB
の間にスペースが重要です。
次の表に、計算式の定義中に使用できる演算子を示します。
演算子 | 例 | 説明 |
---|---|---|
!= | MetricA != 1 | MetricAの値が1の場合はfalseを返し、それ以外の場合はtrueを返します。 |
% | MetricA % MetricB | MetricAの値をMetricBで割った場合に剰余を返します |
() ? : | (MetricA == 'UP') ? 1: 0 | この演算子は、if then else文と同等です。この式は、MetricA値が'UP'の場合は1を返し、それ以外の場合は0を返します。 |
* | (MetricA * MetricB) + MetricC | 最初にMetricAとMetricBの値を乗算してから、MetricC値を追加し、結果を返します。 |
+ | MetricA + MetricB | MetricAおよびMetricBの値の合計を戻します。 |
- | (MetricA + MetricB) - MetricC | 最初にMetricAおよびMetricB値を追加し、次にMetricC値を減算して結果を返します。 |
/ | (MetricA + MetricB)/2 | MetricAおよびMetricB値の平均を返します。 |
< | MetricA < MetricB | MetricAの値がMetricBより小さい場合はtrueを返し、それ以外の場合はfalseを返します。 |
<= | MetricA <= MetricB | MetricAの値がMetricB以下の場合はtrueを返し、それ以外の場合はfalseを返します。 |
== | MetricA == 1 | MetricAの値が1の場合はtrueを返し、それ以外の場合はfalseを返します。 |
> | MetricA > MetricB | MetricAの値がMetricBより大きい場合はtrueを返し、それ以外の場合はfalseを返します。 |
>= | MetricA >= MetricB | MetricAの値がMetricB以上である場合はtrueを返し、それ以外の場合はfalseを返します。 |
__beginswith | MetricA __'ORA-'で始まる | MetricAの値が文字列'ORA-'で始まる場合はtrueを返し、それ以外の場合はfalseを返します。 |
__ceil | __ceil MetricA | 最大の整数に丸められたMetricAの値を返します。 |
__含む | MetricA __'ORA-'を含む | MetricAの値に文字列'ORA-'が含まれている場合はtrueを返し、それ以外の場合はfalseを返します。 |
__delta | __デルタ MetricA | MetricAの現在の値と以前の値の差異を返します。 |
__floor | __フロア MetricA | 最小の整数に丸められたMetricAの値を返します。 |
__間隔 | MetricA/__間隔 | MetricA値を収集間隔で除算した値を返します。 |
__is_null | __is_null MetricA | MetricAの値がNULLの場合はtrueを返し、それ以外の場合はfalseを返します。 |
__長さ | __長さ MetricA | MetricAの文字列値の長さを返します。 |
__が次と一致する | MetricA __matches 'UP' | MetricAの値が'UP'と等しい場合はtrueを返し、それ以外の場合はfalseを返します。 |
__ラウンド | __ラウンド MetricA | この式は、MetricAの値を最も近い整数に端数処理します。 |
__下限 | __to_lower MetricA | MetricAの文字列値の小文字を返します。 |
__上へ | __to_upper MetricA | MetricAの文字列値の大文字を返します |
演算子の使用:
この属性は、メトリックの値を計算するための式を指定します。メトリック拡張で以前に定義したメトリックは、計算に参加できます。
式の文法および使用方法の詳細は、例を参照してください。
事前定義済の特別な値:
特定の演算子に必要な文字列式入力の場合は、入力値を一重引用符( '
)で囲んで指定します。
- __interval: 収集間隔。収集頻度は秒単位で表されます。
- __sysdate: 現在のシステム時間。
- _metricName: 以前の収集時のメトリックの値を参照します。
metricName
は実際のメトリックの名前に置き換える必要があります。 - __GMTdate: 現在のGMT時間。
- __contains: 特定の文字列式に文字列式が存在するかどうかをテストします。
- __beginswith: 特定の文字列式が、指定された文字列式で始まるかどうかをテストします。
- __endswith: 特定の文字列式が、指定された文字列式で終わるかどうかをテストします。
- __matches: 特定の文字列式が指定の文字列式と一致するかどうかをテストします。
- __delta: 現在の値と前の値の差異を計算します。
- __leadingchars: 指定された文字列の先頭の文字を戻します。
- __trailingchars: 指定した文字列の末尾の文字を戻します。
- __substringpos: 指定された文字列内でそのパターンが発生する位置を返します。
- __is_null: 式がNULLかどうかをテストします。
- __is_notnull : 式がNOT NULLかどうかをテストします
- __length: 文字列式の長さを戻します。
- __to_upper: 文字列を大文字に変換します。
- __to_lower: 文字列を小文字に変換します。
- __ceil: 識別子未満でない最小の整数値を戻します。
- __floor: 識別子以下の最大の整数値を戻します。
- __round: ゼロを境にして最も近い整数に丸めます。
例:
NAME="Average" COMPUTE_EXPR="(MetricA + MetricB )/ 2"
メトリックの値は、他の2つのメトリックMetricAおよびMetricBの平均です。
-
NAME="Version" COMPUTE_EXPR="(MetricA __contains 'NetApp Release 7.') ? 7.0 : 6.0"
メトリックMetricAに文字列NetAppリリース7が含まれている場合、メトリック・バージョンの値は7.0として計算されます。
-
NAME="MetricA" COMPUTE_EXPR="(MetricB - MetricC)"
メトリックMetricAの値は、MetricB列とMetricC列の差です。
-
NAME="Status" COMPUTE_EXPR="State __matches 'STARTED'"
「状態」列の値が文字列STARTEDと一致する場合は「ステータス」メトリックの値が1、それ以外の場合は0です。
-
NAME="MetricA" COMPUTE_EXPR="(__is_null MetricB)?'yes':'no'"
列MetricAの値は、Metric2の値がNULLの場合は「はい」で、それ以外の場合は「いいえ」です。
-
NAME="Source" COMPUTE_EXPR="((__length result) == 0) ? 'empty' : result"
メトリック結果の文字列値の長さが0の場合、メトリック・ソースの値は文字列空です。それ以外の場合は、メトリック結果自体の値です。
-
NAME="Rate" COMPUTE_EXPR="(__ceil (MetricA/__interval))"
メトリックRateの値は、メトリックMetricAの値を収集間隔で割って、最大の整数に切り上げた値です。
-
NAME="MetricA" COMPUTE_EXPR="((MetricB == 0) ? 0 : ((MetricC / (MetricB / 8)) * 100.0))"
MetricBが0の場合、MetricAの値は0になります。それ以外の場合、MetricAの値は、MetricBに基づいて計算されたMetricBの1/8で除算された100* MetricCで、MetricBが0でない場合、MetricCは前述の式を使用します。それ以外の場合、0です。
-
NAME="PERCENTAGE_VALUE" COMPUTE_EXPR="(Metric1 != 0) ? 100.0*(Metric2/Metric1) : 0"
列の値は、使用可能なディスクの合計割合です。Metric1およびMetric2は、メトリック拡張の既存のメトリックです。
-
NAME="RATE_OF_CHANGE" COMPUTE_EXPR="((MetricA - _MetricA) / __interval)"
メトリックのデルタとレートは、以前に収集した値を現在の収集値から減算してデルタを取得し、デルタを__intervalで除算してレートを取得することで、計算式内で生成できます。
メトリック拡張でのアラームの作成
メトリック拡張のメトリック値がしきい値を超えた場合にアラームをトリガーするアラーム・ルールを作成できます。リソースの組込みメトリックのアラーム・ルールを作成するのと同じ一般的なワークフローを使用します。主な違いは、「メトリックの説明」セクションにあります。
アラーム・ルールの「メトリックの説明」セクションで:
- コンパートメント: メトリック拡張が有効化されたリソースのコンパートメントを選択します
- メトリック・ネームスペース:
oracle_metric_extensions_appmgmt
を選択します - リソース・グループ: メトリック拡張が有効になっているリソースのリソース・タイプ。
次のイメージに、ホストのメトリック拡張に対するアラーム・ルールの作成を示します:
