プライマリ・コンテンツに移動
Oracle® Enterprise Manager Cloud Control管理者ガイド
13cリリース1
E70363-03
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

8 メトリック拡張の使用

メトリック拡張を使用すると、Oracleの監視機能を拡張してIT環境に固有の条件を監視できるようになります。これにより、環境の包括的な情報を把握できます。さらに、メトリック拡張では、他のモニタリング・ツールを使用してこの補足的な監視を提供するかわりに、データセンター全体でEnterprise Managerを単一の集中モニタリング・ツールとして使用することによって、IT組織の運用プロセスを簡略化できます。

この章の内容は次のとおりです。

8.1 メトリック拡張とは

メトリック拡張によって、どのタイプのターゲットでもメトリックを作成できます。ユーザー定義メトリック(以前のEnterprise Managerリリースで監視を拡張するために使用された)とは異なり、メトリック拡張では、次のような多数のターゲット・タイプに対して本格的なメトリックを作成できます。

  • ホスト

  • データベース

  • Fusion Applications

  • IBM Websphere

  • Oracle Exadataデータベースおよびストレージ・サーバー

  • Siebelコンポーネント

  • Oracle Business Intelligenceコンポーネント

メトリック拡張は「メトリック拡張」ページで管理します。このページでは、すべてのメトリック拡張がリストされるだけでなく、メトリック拡張を作成、編集、インポート/エクスポートおよびデプロイできます。

図にメトリック拡張のホームページを示します。

メトリック拡張はOracle Integration Adapterに基づいています。アダプタは、特定のプロトコルを使用して、ターゲットに関するデータの収集手段を提供します。アダプタが使用できるかどうかは、メトリック拡張で監視するターゲットのタイプによって異なります。

メトリック拡張とユーザー定義メトリックの違い

Enterprise Managerの以前のリリースでは、ユーザー定義メトリックを使用して監視機能を拡張していましたが、制限がありました。OSスクリプトの実行によるポイント値の収集や、SQLによる少し複雑な値セット(オブジェクトごとに1つ)の収集を行うことができました。メトリック拡張とは異なり、ユーザー定義メトリックには次のような制限がありました。

  • 統合の制限: OSまたはSQLのユーザー定義メトリックが、カスタム・スクリプトまたは必須の追加依存ファイルを実行する場合、ユーザーはそれらのファイルをターゲットのファイル・システムに手動で転送する必要がありました。

  • 問合せプロトコルの適用制限: OSユーザー定義メトリックは、メトリックから複数の行を返して、サーバーの子オブジェクトをモデル化することができません(この機能はSQLユーザー定義メトリック専用です)。

  • データ収集の制限: 正規のEnterprise Managerメトリックは、1つの問合せで複数のデータを収集でき、関連するデータをアラート・コンテキストに反映することができます。ただし、ユーザー定義のメトリックの場合は、複数のユーザー定義メトリックを作成することによって、データの複数のピースを収集する必要があります。データは個別に収集されているため、アラートの生成時に関連付けられたデータを参照することはできません。

  • 問合せプロトコルの制限: ユーザー定義メトリックで使用できるのはOSプロトコルとSQLプロトコルのみです。メトリック拡張では、SNMPやJMXなど、その他のプロトコルも使用できます。

  • ターゲット・アプリケーションの制限: ユーザー定義メトリックで作成できるのは、ホスト・ターゲットにはOSユーザー定義メトリック、データベース・ターゲットにはSQLユーザー定義メトリックのみです。その他のターゲット・タイプには対応していません。たとえば、ご使用の環境でWebLogicインスタンスに対してユーザー定義メトリックをデプロイしようとしても、それはホスト・ターゲット・タイプでもデータベース・ターゲット・タイプでもないため、デプロイできません。

メトリック拡張とユーザー定義メトリックの最も重要な違いは、メトリック拡張はユーザー定義メトリックとは異なり、Enterprise Managerに用意されているメトリックと同じ本格的なメトリックであるということです。これらは、Enterprise Manager提供のメトリックと同じく、Enterprise Managerのすべての監視機能で操作および公開できます。また、導入されるすべての新機能に自動的に適用されます。

8.2 メトリック拡張のライフサイクル

メトリック拡張の開発は、プログラミングによるカスタマイズでは常に必要となる次の3つのフェーズで構成されます。

  • メトリック拡張の開発

  • メトリック拡張のテスト

  • メトリック拡張のデプロイおよび公開

図にメトリック拡張のライフサイクルを示します。

メトリック拡張の開発

最初の手順では、監視要件を定義します。ここで、ターゲット・タイプ、収集する必要があるデータ、そのデータを収集するために使用できるメカニズム(アダプタ)、さらに資格証明の昇格が必要かどうかを決定します。これらの決定を行うと、メトリック拡張を開発する準備が整います。Enterprise Managerでは、順を追って作成プロセスを進められる直観的なユーザー・インタフェースが提供されます。

図にメトリック拡張作成ウィザードの「一般」プロパティ・ページを示します。

メトリック拡張ウィザードでは、自由に編集できる形式で、メトリック拡張の開発と調整を行うことができます。また、選択したターゲットに対してメトリック拡張を対話的にテストできることが重要です。専用のテスト環境にメトリック拡張をあらかじめデプロイする必要はありません。「テスト」ページで、リアルタイムのメトリック評価を実行して、スクリプトまたはメトリック拡張定義に構文エラーがないことを確認できます。

メトリック拡張の作業が終了したら、「終了」をクリックしてウィザードを終了します。新たに作成されたメトリック拡張が、「メトリック拡張ライブラリ」に表示され、ここで、さらに編集するためにメトリック拡張にアクセスしたり、複数のターゲットに対してテストできるデプロイ可能な下書きとして保存できます。


注意:

メトリック拡張を編集できるのは、ステータスが「編集可能」の場合のみです。メトリック拡張をデプロイ可能な下書きとして一度保存すると、新たに編集を加えるには新しいバージョンを作成する必要があります。

メトリック拡張のテスト

リアルタイム・ターゲット・テストで、予期していたデータがメトリック拡張から返されたら、メトリック拡張をターゲットに対してデプロイし、データ収集を開始することで、Enterprise Managerで堅牢性と実際の動作をテストすることができます。この時点では、メトリック拡張はまだプライベート(開発者のみがターゲットにデプロイ可能)ですが、動作の点ではOracleの即時利用可能なメトリックと同じです。この手順には、ライブラリでの編集可能なメトリック拡張の選択とデプロイ可能ドラフトの生成が含まれます。

ここで、「ターゲットにデプロイ」の操作を進めて、メトリック拡張を実際のターゲットにデプロイできます。ターゲットにデプロイすると、返されるメトリック・データを確認し、アラート通知をテストできます。前に説明したように、デプロイ可能な下書きを作成するとメトリック拡張の編集はできなくなります。新しいバージョンのメトリック拡張を作成する必要があります。

メトリック拡張のデプロイ

複数のメトリック拡張バージョンやターゲット・デプロイメントを使用して綿密にテストした後で、メトリック拡張を本番環境にデプロイできるようになります。この時点まで、メトリック拡張は作成者にしか表示されません。Enterprise Managerのすべての管理者がアクセスできるようにするには、公開する必要があります。「アクション」メニューから、「メトリック拡張の公開」を選択します。

メトリック拡張を公開したら、予定していた本番ターゲットにデプロイすることができます。少数のターゲットを監視している場合は、「ターゲットにデプロイ」メニュー・オプションを選択し、一度に1つずつターゲットを追加します。ターゲット数が多い場合は、監視テンプレートを使用してメトリック拡張をターゲットにデプロイします。メトリック拡張は、正規のメトリックと同じ方法で監視テンプレートに追加します。その後、監視テンプレートをターゲットにデプロイします。


注意:

公開していないメトリック拡張を監視テンプレートに追加することはできません。追加しようとすると、監視テンプレートのページに警告が表示され、そのメトリック拡張を削除しないと操作を続けることができません。

メトリック拡張の更新

Enterprise Managerリリース12.1.0.4以上では、Enterprise Managerの自己更新機能を使用してメトリック拡張を更新できます。詳細は、第21章「Cloud Controlの更新」を参照してください。

8.3 メトリック拡張の使用

ほとんどのメトリック拡張操作は、「メトリック拡張」ホームページで実行できます。公開された拡張の操作をこのUIの外部から実行する必要がある場合、Enterprise MangerによってEM CLI動詞も提供されており、アーカイブ・ファイルに対するメトリック拡張のインポート/エクスポートや従来のユーザー定義メトリックのメトリック拡張への移行などの操作を行うことができます。ここでは、UIの外部で実行するメトリック拡張の操作について説明します。

8.3.1 管理者権限の要件

メトリック拡張の作成、編集、表示、デプロイまたはアンデプロイを行うには、要件となる管理者権限が必要です。Enterprise Manager管理者に必要な権限は次のとおりです。

  • メトリック拡張の作成: 次のシステム・レベルのアクセス件:

    管理者がメトリック拡張を表示およびデプロイできます。

    管理者が拡張を編集および削除できます。

  • メトリック拡張の編集: 「メトリック拡張の作成」権限を持つユーザーが、特定のメトリック拡張の次のバージョンを編集および作成できます。メトリック拡張の作成者にはデフォルトでこの権限があります。この権限はメトリック拡張ごとに付与される必要があります。

  • 完全なメトリック拡張: 「メトリック拡張の作成」権限を持つユーザーが、特定のメトリック拡張の新しいバージョンを編集および作成できます。

  • メトリックの管理: ユーザーがターゲットに対して拡張をデプロイおよびアンデプロイできます。

    注意: 「メトリックの管理」権限は、ターゲット単位で付与する必要があります。

8.3.2 「メトリック拡張の作成」権限の付与

「メトリック拡張の作成」権限を他の管理者に付与する手順:

  1. 「設定」メニューから、「セキュリティ」「管理者」の順に選択します。

  2. 権限を付与する管理者を選択します。

  3. 「編集」をクリックします。

  4. 「リソース権限」タブで、メトリック拡張リソース・タイプの「権限付与の管理」をクリックします。

  5. 「リソース・タイプ権限」の下の「メトリック拡張の作成」チェック・ボックスを選択します。

  6. 「続行」をクリックして変更内容を確認し、「確認」タブの「終了」をクリックします。

8.3.3 管理者権限の管理

別の管理者が作成したメトリック拡張を編集または削除するには、Enterprise Manager管理者に適切なアクセス権が付与されている必要があります。「編集」権限では、次のバージョンの拡張の編集および作成が可能です。「完全」権限では、前述の拡張の操作と削除が可能です。

既存のメトリック拡張に対する「編集」または「完全」アクセス権を、他の管理者に付与するには:

  1. 「設定」メニューから、「セキュリティ」「管理者」の順に選択します。

  2. アクセス権を付与する管理者を選択します。

  3. 「編集」をクリックします。

  4. 「リソース権限」に移動し、メトリック拡張リソース・タイプの「権限付与の管理」(鉛筆アイコン)をクリックします。

  5. 「リソース権限」の下で、既存のメトリック拡張を検索して追加できます。権限を付与する対象のメトリック拡張を追加します。これにより、ユーザーがメトリック拡張の次のバージョンを編集および作成できるようになります。

    このページで、管理者に「メトリック拡張の作成」権限を付与することもでき、それによりメトリック拡張のアクセスを管理できるようになります。詳細は、「メトリック拡張への管理者アクセスの管理」を参照してください。

  6. これに加えて削除操作も必要な場合は、「リソース権限付与の管理」列の鉛筆アイコンをクリックし、表示されるページで「完全なメトリック拡張」権限を選択します。

  7. 「続行」をクリックして変更内容を確認し、「確認」タブの「終了」をクリックします。

8.3.4 メトリック拡張への管理者アクセスの管理

一般に、管理者はIT環境内のターゲットの監視と管理の責任を共有します。そのため、メトリック拡張の作成と保守は、複数の管理者が関与する共同作業になります。メトリック拡張の管理者はメトリック拡張UIからアクセスを直接制御できます。

8.3.4.1 メトリック拡張の完全/編集権限の付与

メトリック拡張の所有者またはスーパー管理者は、次のアクションを実行し、メトリック拡張の完全/編集権限を別の管理者に割り当てます。

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. 更新が必要なメトリック拡張を選択します。

  3. 「アクション」メニューから、「アクセスの管理」を選択します。

  4. 「追加」をクリックします。管理者を選択するダイアログ・ボックスが表示されます。管理者、ロール、またはその両方でリストをフィルタできます。

  5. リストから1つ以上の管理者/ロールを選択します。

  6. 「選択」をクリックします。選択した管理者/ロールがアクセス・リストに表示されます。

    「権限」列にはデフォルトで「編集」が設定されています。ドロップダウン・メニューから「完全」を選択し、メトリック拡張の「完全」権限を割り当てます。

    「編集」権限: 管理者はメトリック拡張を変更できますが削除はできません。

    「完全」権限: 管理者はメトリック拡張を編集および削除もできます。ユーザーまたはロールに付与された権限は、メトリック拡張のすべてのバージョンに適用されます。

  7. 「OK」をクリックします。

8.3.4.2 メトリック拡張のアクセス権限の取消し

メトリック拡張の所有者またはスーパー管理者は、次のアクションを実行し、別の管理者に割り当てられたメトリック拡張の権限を取り消します。

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. 更新が必要なメトリック拡張を選択します。

  3. 「アクション」メニューから、「アクセスの管理」を選択します。

  4. リストから1つ以上の管理者/ロールを選択します。

  5. 「削除」をクリックします。選択した管理者/ロールがアクセス・リストから削除されます。

  6. 「OK」をクリックします。

Enterprise Managerは、メトリック拡張の所有権を、現在の所有者から、「メトリック拡張の作成」権限が付与されている別の管理者に転送することができます。


注意:

Enterprise Managerのスーパー管理者は、すべてのメトリック拡張に対する完全な管理上のアクセス権を持ちます(表示、編集および所有権の転送)。

前述のとおり、「アクセスの管理」は拡張の所有者またはEnterprise Managerのスーパー・ユーザーのみが可能です。所有権が転送されると、前の所有者は、所有権の転送前に明示的に付与されていないかぎり、メトリック拡張でのどんな管理権限もなくなります。「所有者の変更」オプションはユーザーにのみ使用可能で、ロールには使用できません。

「アクセスの管理」により、メトリック拡張の所有者またはスーパー管理者は別のEnterprise Managerユーザーまたはロールに、メトリック拡張の編集、変更、または削除の機能を付与できます。

8.3.4.3 メトリック拡張の所有権の転送

Enterprise Managerは、メトリック拡張の所有権を、現在の所有者から、「メトリック拡張の作成」権限が付与されている別の管理者に転送することができます。


注意:

Enterprise Managerのスーパー管理者は、すべてのメトリック拡張に対する完全な管理上のアクセス権を持ちます(表示、編集および所有権の転送)。

前述のとおり、「アクセスの管理」は拡張の所有者またはEnterprise Managerのスーパー・ユーザーのみが可能です。所有権が転送されると、前の所有者は、所有権の転送前に明示的に付与されていないかぎり、メトリック拡張でのどんな管理権限もなくなります。「所有者の変更」オプションはユーザーにのみ使用可能で、ロールには使用できません。

「アクセスの管理」により、メトリック拡張の所有者またはスーパー管理者は別のEnterprise Managerユーザーまたはロールに、メトリック拡張の編集、変更、または削除の機能を付与できます。

8.3.5 新しいメトリック拡張の作成

新しいメトリック拡張を作成するには:

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. 「作成」メニューから、「メトリック拡張」を選択します。メトリック拡張作成の権限があるかどうか確認され、作成プロセスが順を追って指示されます。

  3. メトリック拡張名を決めます。名前(および表示名)はターゲット・タイプにおいて一意にする必要があります。

  4. 汎用パラメータを入力します。

    選択したアダプタ・タイプにより、メトリック拡張ウィザードの次のステップで指定する必要があるプロパティが定義されます。使用可能なアダプタ・タイプは、次のとおりです。

    • OSコマンド・アダプタ - 単一列

      指定されたOSコマンドを実行し、コマンド出力を単一値として返します。メトリックの結果は、1つの行と1つの列で構成される表です。

    • OSコマンド・アダプタ - 複数値

      指定されたOSコマンドを実行し、各コマンド出力行を別の値として返します。メトリックの結果は、複数の行と1つの列で構成される表です。

    • OSコマンド・アダプタ - 複数列

      指定されたOSコマンドを実行し、各コマンド出力行(ユーザー指定の文字列で区切られた)を複数値に解析します。メトリックの結果は、複数の行と複数の列で構成される表です。

    • SQLアダプタ

      カスタムSQL問合せまたは関数コールを単一インスタンス・データベースおよびReal Application Clusters(RAC)上のインスタンスに対して実行します。

    • SNMP(Simple Network Management Protocol)アダプタ

      Enterprise Manager管理エージェントは、メトリック・データとして使用されるManagement Information Base(MIB)変数情報をSNMPエージェントに問い合せることができます。

    • JMX(Java Management Extensions)アダプタ

      JMX対応のサーバーからJMX属性を取得し、これらの属性をメトリック表として返します。

    ウィザードの「アダプタ」ページ(ステップ2)で必要となる、選択したアダプタに関する特定の情報は、「アダプタ」を参照してください。


    注意:

    メトリック拡張のアダプタを変更すると、前のアダプタのすべてのプロパティ(ステップ2)は消去されることに注意してください。

    収集スケジュール

    収集スケジュール・プロパティを使用して、メトリック・データを収集する頻度およびその使用方法(「アラートのみ」または「アラートおよび履歴の傾向」)を定義しました。

    選択したターゲット・タイプに応じて、「拡張」オプションのリージョンが表示されます。このリージョンには、特定のターゲット可用性/アラート条件のもとでメトリック・データの収集を継続するかどうかを決定する1つまたは2つのオプションが(選択したターゲット・タイプに応じて)含まれる場合があります。オプションは次のとおりです。

    • オプション1: ターゲットが停止している場合でもメトリック・データの収集を継続します。ホストが停止しているときはメトリック・データを収集できないため、このオプションはホスト・ターゲット・タイプを除くすべてのターゲット・タイプに表示されます。

    • オプション2: 特定のターゲット・メトリックに対してアラート重大度が発生したときに、メトリック・データの収集を継続します。このメトリックで重大度が生成されたときに他のターゲット・メトリックに対するメトリック収集が停止されるように、このメトリックは定義されています(このメトリックにAltSkipCondition要素が定義されています)。このオプションのチェックボックスの上の説明テキストは、選択したターゲット・タイプに応じて異なります。

      管理エージェントには、接続障害によるメトリック・エラーの生成を抑えるために、停止中であることが認識されているターゲットのメトリックの評価をスキップするロジックがあります。AltSkipCondition要素がそのターゲット・メトリックに対して定義されている場合、レスポンス・メトリックの評価でエラーが発生したときや、レスポンス:ステータス・メトリックにクリアされていない重大度があるときは、他のメトリックがスキップされます。メトリック収集がスキップされる、または発生しない状況が2つあります。

      • ターゲットが停止中のとき(オプション1)。これは、レスポンス/ステータス・メトリックの重大度と同じです。

      • ターゲットが稼働中であるが他のメトリックに重大度があるとき。このような状況を、Alt Skip (代替スキップ)状況と言います。

      オプション2は、ターゲットのメトリックのいずれかにAltSkipConditionが定義されている場合に表示されます。たとえば、選択したターゲット・タイプが「Oracle WebLogicドメイン」の場合、このオプションは表示されませんが、選択したターゲット・タイプが「データベース・インスタンス」の場合は表示されます。

      次の図に拡張収集スケジュール・オプションを示します。

      収集スケジュール
  5. 「列」ページで、アダプタから返されるデータを定義するメトリック列を追加します。列の順序は、アダプタがデータを返す順序と一致する必要があることに注意してください。

    • 列型

      列はキー列またはデータ列になります。キー列は表の行を一意に識別します。たとえば、従業員IDは従業員表の一意識別子です。データ列は、行内の一意でないすべてのデータです。たとえば、従業員の姓や名です。既存のデータ列に基づいて率およびデルタ・メトリック列も作成できます。後述の「率およびデルタ・メトリック列」を参照してください。

    • 値の型

      値の型は「Number」または「String」です。これによって、使用できるアラート比較演算子や、このメトリック列の収集データのEnterprise Managerでのレンダリング方法が決まります。

    • アラートしきい値

      「比較操作」、「警告」および「クリティカル」フィールドによって、アラートしきい値が定義されます。

    • キー別のアラートしきい値

      「比較操作」、「キー別の警告のしきい値」および「キー別のクリティカルのしきい値」フィールドを使用すると、表内の行ごとに異なるアラートしきい値を指定できます。このオプションが使用できるのは、キー列が定義されている場合です。たとえば、メトリックがCPU使用率を監視している場合は、CPUごとに違うアラートしきい値を指定できます。構文としては、キー列値のカンマ区切りリスト、=記号、アラートしきい値の順に指定します。異なる行の複数のしきい値は、セミコロン(;)で区切ります。たとえば、CPU使用率のメトリックのキー列値がcpu_idおよびcore_idで、procecessor1およびcore1に50%、processor2およびcore2に60%の警告のしきい値を追加する場合は、「procecessor1,core1=50;processor2,core2=60」と指定します。

    • 手動でクリア可能なアラート


      注意:

      「手動でクリア可能なアラート」オプションを表示するために「拡張」リージョンを展開する必要があります。

      このオプションを「true」に設定すると、アラートしきい値を下回ってもアラートが自動的にクリアされません。たとえば、メトリックがシステム・ログ・ファイル内のエラー数をカウントしているときに、アラートしきい値を50に設定すると、しきい値に到達したときにアラートが発生します。エラー件数が50未満になってもアラートは自動的にクリアされません。アラートは、ターゲットのホームページまたはインシデント・マネージャの「アラート」UIで手動でクリアする必要があります。

    • アラート前の発生数

      アラートしきい値に到達した場合の、アラートが発生する前の連続メトリック収集数。

    • アラート・メッセージまたはクリア・メッセージ

      アラートが発生またはクリアされたときに送信するメッセージ。使用できる変数は、%columnName%、%keyValue%、%value%、%warning_threshold%、%critical_threshold%です。

      該当する列名を「%」で囲んで、別の列の値を取得することもできます。たとえば、cpu_usage列についてアラートを作成している場合、%core_temperature%を使用してcore_temperature列の値を取得できます。警告またはクリティカル・アラートについても同じアラート・メッセージまたはクリア・メッセージが使用されることに注意してください。


      注意:

      十分に検討して、すべてのキー列を追加してください。新しいバージョンのメトリック拡張では追加のキー列を作成できないためです。一度「デプロイ可能な下書きとして保存」をクリックすると、キー列は最終的に決定されます(列の表示名とアラートしきい値の編集は可能です)。新しいバージョンでも新たなデータ列を追加することはできます。また、既存のデータ列の一部のプロパティも後から変更できません。これには、「列型」、「値の型」、「比較演算子」(新しい演算子は追加できるが、既存の演算子は変更できない)および「手動でクリア可能なアラート」などが含まれます。

    • メトリックのカテゴリ

      この列が所属するメトリックのカテゴリ。

    率およびデルタメトリック列

    最後のメトリック収集からのデータの変更率または値の差異(デルタ)を測定する、既存のデータ列に基づく追加のメトリック列を作成できます。率/デルタ・メトリック定義は、メトリックの収集頻度が定期的である場合に使用できます。たとえば、10分ごとに収集される場合です。反対に、毎週月曜日および火曜日のみに計算されるメトリックは、データ・サンプリングの頻度が低すぎるため、率/デルタ・メトリックを持つことができません。

    少なくとも1つのデータ列を作成すると、次の図に示すように3つの追加オプションが「追加」メニューに表示されます。

    率およびデルタ列
    • 別のメトリック列に基づいてデルタ・メトリック列を追加します

      例: 最後の収集後に使用された表領域の差異を知りたいとします。

      デルタ計算:

      現在のメトリック値 - 前のメトリック値

    • 別のメトリック列に基づいて率(/分)メトリック列を追加します

      例: 1時間ごとに収集される表領域列メトリックに基づいて1分ごとの平均表領域使用率を知りたいとします。

      率(/分)計算:

      現在のメトリック値 - 前のメトリック値/ 収集スケジュール

      ここで収集スケジュールは分です。

    • 別のメトリック列に基づいて率(/5分)メトリック列を追加します

      例: たとえば1時間ごとに収集される表領域列に基づいて5分ごとの平均表領域使用率を知りたいとします。

      率(/5分)計算:

      [(現在のメトリック値 - 前のメトリック値)/ 収集スケジュール ] * 5

      ここで収集スケジュールは分です。

    率/デルタ・メトリック列を作成するには、表の既存のデータ列をクリックし、「追加」メニューから率/デルタ列オプションのいずれかを選択します。

  6. 「資格証明」ページで、カスタム監視資格証明セットを使用してデフォルトの監視資格証明を上書きできます。デフォルトでは、メトリック拡張ウィザードは、Oracleの即時利用可能なメトリックで使用される既存の資格証明を特定のターゲット・タイプに対して選択します。たとえば、メトリック拡張がデータベース・ターゲットに対してdbsnmpユーザーを使用します。emcli create_credential_setコマンドによってカスタム監視資格証明セットを作成することで、既存の資格証明を上書きできます。詳細は、『Oracle Enterprise Managerコマンドライン・インタフェース・ガイド』を参照してください。一部のアダプタでは追加の資格証明が使用されることがあります。詳細は、「アダプタ」を参照してください。

  7. 「テスト」ページから、使用可能なテスト・ターゲットを追加します。

  8. 「テストの実行」をクリックしてメトリック拡張を検証します。ユーザーが指定したテスト・ターゲットに拡張がデプロイされ、リアルタイム収集が実行されます。その後、メトリック拡張は自動的にアンデプロイされます。結果およびエラー(ある場合)は「テスト結果」リージョンに追加されます。

  9. メトリック拡張が予定のデータを返すようになるまで編集とテストを繰り返します。

  10. 「終了」をクリックします。

8.3.6 新しいメトリック拡張の作成(類似作成)

既存のメトリック拡張に基づいて新しいメトリック拡張を作成するには:

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. 「メトリック拡張」ページで、アクセスできるメトリック拡張を決定します。このページには、メトリック拡張のリストが、ターゲット・タイプ、所有者、本番バージョン、デプロイ情報とともに表示されます。

  3. 既存のメトリック拡張を選択します。

  4. 「アクション」メニューから、「類似作成」を選択します。メトリック拡張作成の権限があるかどうか確認され、作成プロセスが順を追って指示されます。

  5. 必要な変更を行います。

  6. テスト・ページから、使用可能なテスト・ターゲットを追加します。

  7. 「テストの実行」をクリックしてメトリック拡張を検証します。ユーザーが指定したテスト・ターゲットに拡張がデプロイされ、リアルタイム収集が実行されます。その後、メトリック拡張は自動的にアンデプロイされます。結果およびエラー(ある場合)は「テスト結果」リージョンに追加されます。

  8. メトリック拡張が予定のデータを返すようになるまで編集とテストを繰り返します。

  9. 「終了」をクリックします。

8.3.7 メトリック拡張の編集

既存のメトリック拡張を編集するには、編集しようとする拡張に対して編集権限が必要です。または、拡張の作成者であることが必要です。注意: メトリック拡張をデプロイ可能な下書きとして保存した後は、編集はできなくなり、新しいバージョンを作成することしかできません。

既存のメトリック拡張を編集するには:

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. 「メトリック拡張」ページで、アクセスできるメトリック拡張を決定します。このページには、メトリック拡張のリストが、ターゲット・タイプ、所有者、本番バージョン、デプロイ情報とともに表示されます。

  3. 編集するメトリック拡張を選択します。

  4. 「アクション」メニューから、「編集」を選択します。

  5. 必要に応じてメトリック拡張を更新します。

  6. テスト・ページから、使用可能なテスト・ターゲットを追加します。

  7. 「テストの実行」をクリックしてメトリック拡張を検証します。ユーザーが指定したテスト・ターゲットに拡張がデプロイされ、リアルタイム収集が実行されます。その後、メトリック拡張は自動的にアンデプロイされます。結果およびエラー(ある場合)は「テスト結果」リージョンに追加されます。

  8. メトリック拡張が予定のデータを返すようになるまで編集とテストを繰り返します。

  9. 「終了」をクリックします。

8.3.8 既存のメトリック拡張の新バージョンの作成

既存のメトリック拡張の新バージョンを作成するには、新バージョンを作成しようとする拡張に対して編集権限が必要です。または、拡張の作成者であることが必要です。

既存のメトリック拡張の新バージョンを作成するには:

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. メトリック拡張ページから、使用可能なメトリック拡張を決定します。このページには、メトリック拡張のリストが、ターゲット・タイプ、所有者、本番バージョン、デプロイ情報とともに表示されます。

  3. 新バージョンを作成するメトリック拡張を選択します。

  4. 「アクション」メニューから、「次のバージョンの作成」を選択します。

  5. 必要に応じてメトリック拡張を更新します。ターゲット・タイプと拡張名は編集できませんが、その他すべての一般プロパティは変更できます。メトリック列の変更には制約もあります。詳細は、「新しいメトリック拡張の作成」の「注意」を参照してください。

  6. 「テスト」ページから、使用可能なテスト・ターゲットを追加します。

  7. 「テストの実行」をクリックしてメトリック拡張を検証します。ユーザーが指定したテスト・ターゲットに拡張がデプロイされ、リアルタイム収集が実行されます。その後、メトリック拡張は自動的にアンデプロイされます。結果およびエラー(ある場合)は「テスト結果」リージョンに追加されます。

  8. メトリック拡張が予定のデータを返すようになるまで編集とテストを繰り返します。

  9. 「終了」をクリックします。

8.3.9 メトリック拡張のインポート

メトリック拡張は、ポータブルな自己完結型パッケージに変換できるので、メトリック拡張を他のEnterprise Managerインストール環境やストレージ/バックアップに移動することが可能です。このパッケージをメトリック拡張アーカイブ(MEA)ファイルと言います。

MEAはzipファイルで、メトリック拡張を構成するすべてのコンポーネント、すなわちメトリック・メタデータ、コレクション、関連するスクリプト/jarファイルがMEAに含まれています。1つのMEAファイルに含めることができるのは、1つのメトリック拡張のみです。メトリック拡張を元のEnterprise Managerインストール環境に追加するには、MEAからメトリック拡張をインポートする必要があります。

MEAファイルからメトリック拡張をインポートするには:

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. 「インポート」をクリックします。

  3. ファイルの場所を参照し、MEAファイルを選択します。ターゲット・タイプとメトリック拡張名の組合せがすでにシステムで使用されているかどうかが、Enterprise Managerによってチェックされます。使用されていない場合、新しいメトリック拡張が作成されます。拡張名がすでに使用されている場合は、MEAの内容を使用して、既存の拡張の新バージョンの作成が試行されます。このためには、すべての既存メトリック拡張のメトリック列のスーパーセットがMEAに含まれることが必要です。メトリック拡張の名前を変更することもできます。

  4. 「OK」をクリックすると、新しいメトリック拡張または既存のメトリック拡張の新バージョンが作成されます。

  5. 「アクション」メニューから「編集」を選択して、エントリを確認します。

  6. テスト・ページから、使用可能なテスト・ターゲットを追加します。

  7. 「テストの実行」をクリックしてメトリック拡張を検証します。ユーザーが指定したテスト・ターゲットに拡張がデプロイされ、リアルタイム収集が実行されます。その後、メトリック拡張は自動的にアンデプロイされます。結果およびエラー(ある場合)は「テスト結果」リージョンに追加されます。

  8. メトリック拡張が予定のデータを返すようになるまで編集とテストを繰り返します。

  9. 「終了」をクリックします。

8.3.10 メトリック拡張のエクスポート

既存のメトリック拡張は、自己完結型のzipファイルとしてパッケージし、(エクスポートして)別の環境やバックアップ/ストレージに移動することができます。

既存のメトリック拡張をエクスポートするには:

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. 「メトリック拡張」ページで、アクセスできるメトリック拡張を決定します。このページには、メトリック拡張のリストが、ターゲット・タイプ、所有者、本番バージョン、デプロイ情報とともに表示されます。

  3. エクスポートするメトリック拡張を選択します。

  4. 「アクション」メニューから、「エクスポート」を選択します。作成されるMEAファイルの名前と場所を入力するように求められます。

  5. パッケージの名前と場所を選択します。エクスポートが完了すると、確認ページが表示されます。

    注意: エクスポートできるのは、本番、デプロイ可能な下書きおよび公開済のメトリック拡張バージョンのみです。

  6. エクスポート・ファイルのダウンロードを確認します。

8.3.11 メトリック拡張の削除

メトリック拡張の削除は簡単に開始できます。ただし、実際に削除すると、Enterprise Managerによる処理が連鎖的に発生して、メトリック拡張がシステムから完全にパージされます。これには、オープンしているメトリック・アラートのクローズや、収集されたメトリック・データのパージが含まれます(最新のメトリック拡張バージョンが削除される場合)。

メトリック拡張バージョンを削除するには、すべてのターゲットからアンデプロイし、すべての監視テンプレート(ステータスが適用保留中のテンプレートを含む)から削除しておく必要があります。

メトリック拡張を削除するには:

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. 「メトリック拡張」ページで、アクセスできるメトリック拡張を決定します。このページには、メトリック拡張のリストが、ターゲット・タイプ、所有者、本番バージョン、デプロイ情報とともに表示されます。

  3. 削除するメトリック拡張を選択します。

  4. 「アクション」メニューから、「削除」を選択します。削除してよいかどうか、確認を求められます。

  5. 削除を確定します。

8.3.12 ターゲットのグループへのメトリック拡張のデプロイ

メトリック拡張によってデータ収集を開始するには、メトリック拡張をターゲットにデプロイする必要があります。

1つ以上のターゲットにメトリック拡張をデプロイするには:

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. 「メトリック拡張」ページで、アクセスできるメトリック拡張を決定します。このページには、メトリック拡張のリストが、ターゲット・タイプ、所有者、本番バージョン、デプロイ情報とともに表示されます。

  3. デプロイするメトリック拡張を選択します。

  4. 「アクション」メニューから、「ターゲット・デプロイメントの管理」を選択します。ターゲット・デプロイメントの管理ページが開き、選択したメトリック拡張がすでにデプロイされているターゲットが表示されます。

  5. 「メトリック拡張」ページに戻ります。

  6. メトリック拡張を選択します。

  7. 「アクション」メニューから、「ターゲットにデプロイ」を選択します。Enterprise Managerによって、「ターゲット・メトリックの管理」権限があるかどうかが判別され、権限を持つターゲットのみがターゲット・セレクタに表示されます。

  8. メトリック拡張をデプロイするターゲットを追加し、「発行」をクリックします。メトリック拡張を各ターゲットにデプロイするジョブが発行されます。1つのデプロイ・リクエストごとに1つのジョブが発行されます。

  9. 自動的に「保留中の操作」ページにリダイレクトされます。このページには、メトリック拡張デプロイ操作(現在スケジュール済の操作、実行中の操作、または失敗した操作)のリストが表示されます。デプロイ操作が完了すると、保留中の操作の表からエントリが削除されます。

8.3.13 メトリック拡張から電子メールを送信するためのインシデント・ルールの作成

管理者がEnterprise Managerで実行する最も一般的なタスクの1つに、メトリック・アラート条件が発生したときに電子メール通知を送信することがあります。特に、Enterprise Managerはインシデントとして定義されたアラート条件を監視します。特定のインシデントについて、インシデントが発生したときにどのような処理を行うかをEnterprise Managerに指示するインシデント・ルール・セットを作成します。この場合、メトリック拡張によって定義されたアラート条件で構成されるインシデントが発生すると、管理者に電子メールを送信するインシデント・ルールを作成する必要があります。メトリック・アラートについて電子メールを送信する手順については、「メトリック・アラートの電子メールの送信」を参照してください。

インシデント管理の詳細は、第2章「インシデント管理の使用」を参照してください。

8.3.14 ターゲットのグループにデプロイ済でバージョンの古いメトリック拡張の更新

最新のメトリック拡張バージョンが公開されると、そのメトリック拡張の古いデプロイ済インスタンスもすべて更新する必要が生じます。

ターゲットにデプロイされている古いバージョンの拡張メトリックを更新するには:

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. 「メトリック拡張」ページで、アクセスできるメトリック拡張を決定します。このページには、メトリック拡張のリストが、ターゲット・タイプ、所有者、本番バージョン、デプロイ情報とともに表示されます。

  3. アップグレードするメトリック拡張を選択します。

  4. 「アクション」メニューから、「ターゲット・デプロイメントの管理」を選択します。ターゲット・デプロイメントの管理ページが開き、選択したメトリック拡張がすでにデプロイされているターゲットのリストが表示されます。

  5. メトリック拡張を更新するターゲットのリストを選択し、「アップグレード」をクリックします。選択したターゲットに最新の発行済メトリック拡張をデプロイするジョブが発行されます。1つのデプロイ・リクエストごとに1つのジョブが発行されます。

  6. 自動的に「保留中の操作」ページにリダイレクトされます。このページには、メトリック拡張デプロイ操作(現在スケジュール済の操作、実行中の操作、または失敗した操作)のリストが表示されます。デプロイ操作が完了すると、保留中の操作の表からエントリが削除されます。

8.3.15 リポジトリ側メトリック拡張の作成

Enterprise Managerリリース12.1.0.4では、リポジトリ側メトリック拡張を作成できます。このタイプのメトリック拡張によって、SQLスクリプトを使用してEnterprise Managerリポジトリから情報を直接抽出し、リポジトリ側の拡張を実行するターゲットに対しアラートを発生させることができます。たとえば、リポジトリ側メトリック拡張を使用すると、ホスト・ターゲットに対しるアラートの数が5を超えたときにアラートを発生させることができます。また、そのホストでのCPU使用率が95%を超え、そのホストで実行しているプロセスの数が500を超えたときにアラートを発生させることもできます。リポジトリ側メトリック拡張によって、Enterprise Managerインフラストラクチャをより柔軟に監視することが可能になります。

リポジトリ側メトリックを作成するには:

  1. 「エンタープライズ」メニューから、「監視」「メトリック拡張」を選択します。

  2. 「作成」メニューから、「リポジトリ側メトリック拡張」を選択します。メトリック拡張作成の権限があるかどうか確認され、作成プロセスが順を追って指示されます。

  3. ターゲット・タイプとメトリック拡張名を決定します。名前(および表示名)はターゲット・タイプにおいて一意にする必要があります。

  4. 汎用パラメータを入力します。

    収集スケジュール

    収集スケジュール・プロパティを使用して、メトリック・データを収集する頻度およびその使用方法(「アラートのみ」または「アラートおよび履歴の傾向」)を定義しました。

  5. Enterprise Managerリポジトリに対して実行するSQL問合せを作成します。「SQL問合せ」ページに、問合せの明示的な開発手順と例が示されています。

    「SQL問合せ」ページ

    「SQLの検証」をクリックして、問合せをテストします。

    すでにSQLスクリプトがある場合は、「アップロード」をクリックすると、外部ファイルからSQLをロードできます。

  6. 「列」ページから、SQL問合せで返された列を参照/編集できます。列は編集できますが、このページで列を追加または削除することはできません。

    • 列型

      列はキー列またはデータ列になります。キー列は表の行を一意に識別します。たとえば、従業員IDは従業員表の一意識別子です。データ列は、行内の一意でないすべてのデータです。たとえば、従業員の姓や名です。既存のデータ列に基づいて率およびデルタ・メトリック列も作成できます。後述の「率およびデルタ・メトリック列」を参照してください。

    • 値の型

      値の型は「Number」または「String」です。これによって、使用できるアラート比較演算子や、このメトリック列の収集データのEnterprise Managerでのレンダリング方法が決まります。

    • アラートしきい値

      「比較操作」、「警告」および「クリティカル」フィールドによって、アラートしきい値が定義されます。

    • キー別のアラートしきい値

      「比較操作」、「キー別の警告のしきい値」および「キー別のクリティカルのしきい値」フィールドを使用すると、表内の行ごとに異なるアラートしきい値を指定できます。このオプションが使用できるのは、キー列が定義されている場合です。たとえば、メトリックがCPU使用率を監視している場合は、CPUごとに違うアラートしきい値を指定できます。構文としては、キー列値のカンマ区切りリスト、=記号、アラートしきい値の順に指定します。異なる行の複数のしきい値は、セミコロン(;)で区切ります。たとえば、CPU使用率のメトリックのキー列値がcpu_idおよびcore_idで、procecessor1およびcore1に50%、processor2およびcore2に60%の警告のしきい値を追加する場合は、「procecessor1,core1=50;processor2,core2=60」と指定します。

    • 手動でクリア可能なアラート


      注意:

      「手動でクリア可能なアラート」オプションを表示するために「拡張」リージョンを展開する必要があります。

      このオプションを「true」に設定すると、アラートしきい値を下回ってもアラートが自動的にクリアされません。たとえば、メトリックがシステム・ログ・ファイル内のエラー数をカウントしているときに、アラートしきい値を50に設定すると、しきい値に到達したときにアラートが発生します。エラー件数が50未満になってもアラートは自動的にクリアされません。アラートは、ターゲットのホームページまたはインシデント・マネージャの「アラート」UIで手動でクリアする必要があります。

    • アラート前の発生数

      アラートしきい値に到達した場合の、アラートが発生する前の連続メトリック収集数。

    • アラート・メッセージまたはクリア・メッセージ

      アラートが発生またはクリアされたときに送信するメッセージ。使用できる変数は、%columnName%、%keyValue%、%value%、%warning_threshold%、%critical_threshold%です。

      該当する列名を「%」で囲んで、別の列の値を取得することもできます。たとえば、cpu_usage列についてアラートを作成している場合、%core_temperature%を使用してcore_temperature列の値を取得できます。警告またはクリティカル・アラートについても同じアラート・メッセージまたはクリア・メッセージが使用されることに注意してください。


      注意:

      十分に検討して、すべてのキー列を追加してください。新しいバージョンのメトリック拡張では追加のキー列を作成できないためです。一度「デプロイ可能な下書きとして保存」をクリックすると、キー列は最終的に決定されます(列の表示名とアラートしきい値の編集は可能です)。新しいバージョンでも新たなデータ列を追加することはできます。また、既存のデータ列の一部のプロパティも後から変更できません。これには、「列型」、「値の型」、「比較演算子」(新しい演算子は追加できるが、既存の演算子は変更できない)および「手動でクリア可能なアラート」などが含まれます。

    • メトリックのカテゴリ

      この列が所属するメトリックのカテゴリ。

    • 別のメトリック列に基づいてデルタ・メトリック列を追加します

      例: 最後の収集後に使用された表領域の差異を知りたいとします。

      デルタ計算:

      現在のメトリック値 - 前のメトリック値

    • 別のメトリック列に基づいて率(/分)メトリック列を追加します

      例: 1時間ごとに収集される表領域列メトリックに基づいて1分ごとの平均表領域使用率を知りたいとします。

      率(/分)計算:

      現在のメトリック値 - 前のメトリック値/ 収集スケジュール

      ここで収集スケジュールは分です。

    • 別のメトリック列に基づいて率(/5分)メトリック列を追加します

      例: たとえば1時間ごとに収集される表領域列に基づいて5分ごとの平均表領域使用率を知りたいとします。

      率(/5分)計算:

      [(現在のメトリック値 - 前のメトリック値)/ 収集スケジュール ] * 5

      ここで収集スケジュールは分です。

    率/デルタ・メトリック列を作成するには、表の既存のデータ列をクリックし、「追加」メニューから率/デルタ列オプションのいずれかを選択します。

  7. 「テスト」ページから、使用可能なテスト・ターゲットを追加します。

  8. 「テストの実行」をクリックしてメトリック拡張を検証します。ユーザーが指定したテスト・ターゲットに拡張がデプロイされ、リアルタイム収集が実行されます。その後、メトリック拡張は自動的にアンデプロイされます。結果およびエラー(ある場合)は「テスト結果」リージョンに追加されます。

  9. メトリック拡張が予定のデータを返すようになるまで編集とテストを繰り返します。

  10. 「終了」をクリックします。

8.4 アダプタ

Oracle Integration Adaptersには、包括的で使いやすい各種ターゲット・タイプとの監視接続性を備えています。このアダプタは、エンタープライズ・アプリケーションとの通信を可能にし、アプリケーション・データを標準に準拠したXMLに翻訳(またはこの逆)できます。

メトリック拡張のターゲット・タイプに応じて、UIで使用できるアダプタが決まります。たとえば、自動ストレージ管理ターゲット・タイプ用のメトリック拡張を作成する場合、3つのアダプタ(「OSコマンド - 単一列」、「OSコマンド - 複数列」および「SQL」)のみをUIから使用できます。

アダプタ・ターゲット・タイプ

ターゲット・タイプの即時利用可能なメトリック定義は、ネイティブ・サポート対象のアダプタを定義し、そのようなアダプタのみがUIに表示されます。他のアダプタはそのターゲット・タイプでサポートされません。

すべてのアダプタのリストを次に示します。

8.4.1 OSコマンド・アダプタ - 単一列

指定されたOSコマンドを実行し、コマンド出力を単一値として返します。メトリックの結果は、1つの行と1つの列で構成される表です。

基本プロパティ

完全なコマンドラインはコマンド + スクリプト + 引数として構成されます。

  • コマンド - 実行するコマンド。たとえば、%perlBin%/perlなどです。完全なコマンドラインはコマンド + スクリプト + 引数として構成されます。

  • スクリプト - コマンドに渡すスクリプト。たとえば、%scriptsDir%/myscript.plなどです。カスタム・ファイルをエージェントにアップロードでき、%scriptsDir%ディレクトリでアクセスできます。

  • 引数 - コマンドに付加する追加の引数。

拡張プロパティ

  • 入力プロパティ - 追加プロパティは、標準入力ストリームを介してコマンドに渡すことができます。これは通常は、他のユーザーに見られないようにするセキュア・コンテンツ(ユーザー名やパスワードなど)で使用されます。たとえば、次の入力プロパティを追加できます。

    Name=targetName, Value=%NAME%

    これは、コマンドが標準入力ストリームを介して"STDINtargetName=<target name>"として読み取ることができます。

  • 環境変数 - 拡張プロパティは、コマンドで環境変数を介して使用できます。たとえば、Name=targetType, Value="%TYPE%"のような環境変数を追加できます。コマンドは、環境変数ENVtargetTypeを使用してターゲット・タイプにアクセスできます。

資格証明

  • ホスト資格証明 - OSコマンドの起動に使用される資格証明。

  • 資格証明の入力 - OSコマンドの標準入力ストリームに渡される追加の資格証明。

例1

ログ・ファイルの内容を読み取り、ターゲットへの参照を含むすべての行をダンプ出力します。

  • アプローチ1 - grepコマンドを使用し、%NAME%パラメータを使用してターゲット名を指定します。

    Command = /bin/grep %NAME% mytrace.log

  • アプローチ2 - perlスクリプトを実行します。

    Command = %perlBin%/perl

    Script = %scriptsDir%/filterLog.pl

    入力プロパティ

    targetName = %NAME%

    targetType = %TYPE%

filterLog.pl:

require "emd_common.pl";

my %stdinVars = get_stdinvars();
my $targetName = $stdinVars{"targetName"};
my $targetType = $stdinVars{"targetType"};
open (MYTRACE, mytrace.log);
foreach $line (<MYTRACE >)
{
    # Do line-by-line processing
}

close (MYTRACE); 

例2

Perlスクリプトからデータベース・インスタンスに接続し、HR.JOBSサンプル・スキーマ表を問い合せます。

  • アプローチ1 - 入力プロパティを使用してターゲット・タイプ・プロパティから資格証明を渡します。

    Command = %perlBin%/perl

    Script = %scriptsDir%/connectDB.pl

    入力プロパティ

    EM_DB_USERNAME = %Username%

    EM_DB_PASSWORD = %Password%

    EM_DB_MACHINE = %MachineName%

    EM_DB_PORT = %Port%

    EM_DB_SID = %SID%

    connectDB.pl

    use DBI;
    require "emd_common.pl";
     
    my %stdinVars = get_stdinvars();
    my $dbUsername = $stdinVars{"EM_DB_USERNAME"};
    my $dbPassword = $stdinVars{"EM_DB_PASSWORD"};
    my $dbMachine = $stdinVars{"EM_DB_MACHINE"};
    my $dbPort = $stdinVars{"EM_DB_PORT"};
    my $dbSID = $stdinVars{"EM_DB_SID"};
     
    my $dbAddress = "(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=$dbMachine)(Port=$dbPort))(CONNECT_DATA=(SID=$dbSID)))";
     
    # Establish Target DB Connection
    my $db = DBI->connect('dbi:Oracle:', "$dbUsername@".$dbAddress, "$dbPassword", 
        {PrintError => 0, RaiseError => 0, AutoCommit => 0})
        or die (filterOraError("em_error=Could not connect to $dbUsername/$dbAddress: $DBI::errstr\n", $DBI::err));
     
    my $query = "SELECT JOB_TITLE, MIN_SALARY FROM HR.JOBS";
    my $st = $db->prepare($query);
    $st->execute();
     
    while ( my ($job_title, $min_sal) = $st->fetchrow_array() ) 
    {
        print "$job_title|$min_sal\n";
    }
     
    $db->disconnect
        or warn "disconnect $DBI::errstr\n";
     
    exit 0;
    
  • アプローチ2 - 入力資格証明を使用して監視資格証明セットを渡します。

    Command = %perlBin%/perl

    Script = %scriptsDir%/connectDB.pl

    入力資格証明:

    dbCreds = MyCustomDBCreds

    connectDB.pl

    use DBI;
    
    require "emd_common.pl";
    
     
    my %stdinVars = get_stdinvars();
    my $credType = getCredType("dbCred", \%stdinVars);
    my %credProps = getCredProps("dbCreds", \%stdinVars);
    my $dbUsername = $credProps{"DBUserName"};
    my $dbPassword = $credProps{"DBPassword"};

例3

ホスト・ターゲットのカスタム監視資格証明セットを作成して使用し、監視資格証明をオーバーライドします。

ホスト・ターゲット・タイプのホスト資格証明の作成:

> emcli create_credential_set -set_name=myCustomCreds -target_type=host -auth_target_type=host -supported_cred_types=HostCreds -monitoring -description='My Custom Credentials'

メトリック拡張ウィザードの「資格証明」ページに移動し、ホスト資格証明の「資格証明セットの指定」を選択すると、ドロップ・ダウン・リストのオプションとしてカスタム資格証明が表示されます。

このステップでは、ホスト・ターゲット・タイプの監視資格証明セットが作成されるのみです。このメトリック拡張のデプロイ先の各ターゲットで資格証明を設定する必要があります。Enterprise Managerで、「設定」、「セキュリティ」、「監視資格証明」の順に選択して、資格証明を設定できます。または、コマンドラインから設定することもできます。

> emcli set_monitoring_credential -target_name=target1 -target_type=host -set_name=myCustomCreds -cred_type=HostCreds -auth_target_type=host -attributes='HostUserName:myusername;HostPassword:mypassword'

8.4.2 OSコマンド・アダプタ - 複数値

指定されたOSコマンドを実行し、各コマンド出力行を別の値として返します。メトリックの結果は、複数の行と1つの列で構成される表です。

たとえば、コマンド出力が次のようだとします。

em_result=out_x
em_result=out_y

この場合、3つの列にそれぞれ値1、2、3が移入されます。

基本プロパティ

  • コマンド - 実行するコマンド。たとえば、%perlBin%/perlなどです。

  • スクリプト - コマンドに渡すスクリプト。たとえば、%scriptsDir%/myscript.plなどです。カスタム・ファイルをエージェントにアップロードでき、%scriptsDir%ディレクトリでアクセスできます。

  • 引数 - コマンドに付加する追加の引数。

  • Starts With - メトリックの結果行の開始文字列。

    例: コマンド出力が次のような場合:

    em_result=4354
    update
    test
    

    設定Starts With = em_resultは、em_resultで開始する行のみ解析されることを指定します。

拡張プロパティ

  • 入力プロパティ - 追加プロパティは、標準入力ストリームを介してコマンドに渡すことができます。たとえば、Name=targetName, Value=%NAME%のような入力プロパティを追加できます。コマンドは、標準入力ストリームを介してこれをSTDINtargetName=<target name>と読み取ることができます。「OSコマンド・アダプタ - 単一列」の使用例を参照してください。

  • 環境変数 - 拡張プロパティは、コマンドで環境変数を介して使用できます。たとえば、Name=targetType, Value="%TYPE%"のような環境変数を追加できます。コマンドは、環境変数ENVtargetTypeを使用してターゲット・タイプにアクセスできます。「OSコマンド・アダプタ - 単一列」の使用例を参照してください。

資格証明

  • ホスト資格証明 - OSコマンドの起動に使用される資格証明。「OSコマンド・アダプタ - 単一列」の使用例を参照してください。

  • 資格証明の入力 - OSコマンドの標準入力ストリームに渡される追加の資格証明。「OSコマンド・アダプタ - 単一列」の使用例を参照してください。

8.4.3 OSコマンド・アダプタ - 複数列

指定されたOSコマンドを実行し、各コマンド出力行(ユーザー指定の文字列で区切られた)を複数値に解析します。メトリックの結果は、複数の行と複数の列で構成される表です。

例: コマンド出力が次のような場合

em_result=1|2|3
em_result=4|5|6

デリミタが「|」に設定されていると、次のようにそれぞれが3つの列を含む2つの行になります。

1 2 3
4 5 6

基本プロパティ

完全なコマンドラインはコマンド + スクリプト + 引数として構成されます。

  • コマンド - 実行するコマンド。たとえば、%perlBin%/perlなどです。

  • スクリプト - コマンドに渡すスクリプト。たとえば、%scriptsDir%/myscript.plなどです。カスタム・ファイルをエージェントにアップロードでき、%scriptsDir%ディレクトリでアクセスできます。

  • 引数 - 追加の引数。

  • デリミタ - コマンド出力を区切るために使用する文字列。

  • Starts With - メトリックの結果行の開始文字列。

    例: コマンド出力が次のような場合

      em_result=4354  out_x  out_y
    

    設定Starts With = em_resultは、em_resultで開始する行のみ解析されることを指定します。

  • 入力プロパティ - 追加プロパティは、標準入力ストリームを介してコマンドに渡すことができます。たとえば、Name=targetName, Value=%NAME%のような入力プロパティを追加できます。コマンドは、標準入力ストリームを介してこれをSTDINtargetName=<target name>と読み取ることができます。複数の入力プロパティを指定するには、各プロパティを1行ずつ入力します。

  • 環境変数 - 拡張プロパティは、コマンドで環境変数を介して使用できます。たとえば、Name=targetType, Value="%TYPE%のような環境変数を追加できます。コマンドは、環境変数ENVtargetTypeを使用してターゲット・タイプにアクセスできます。

拡張プロパティ

  • 入力プロパティ - 追加プロパティは、標準入力ストリームを介してコマンドに渡すことができます。たとえば、Name=targetName, Value=%NAME%のような入力プロパティを追加できます。コマンドは、標準入力ストリームを介してこれをSTDINtargetName=<target name>と読み取ることができます。「OSコマンド・アダプタ - 単一列」の使用例を参照してください。

  • 環境変数 - 拡張プロパティは、コマンドで環境変数を介して使用できます。たとえば、Name=targetType, Value="%TYPE%のような環境変数を追加できます。コマンドは、環境変数ENVtargetTypeを使用してターゲット・タイプにアクセスできます。「OSコマンド・アダプタ - 単一列」の使用例を参照してください。

資格証明

  • ホスト資格証明 - OSコマンドの起動に使用される資格証明。「OSコマンド・アダプタ - 単一列」の使用例を参照してください。

  • 資格証明の入力 - OSコマンドの標準入力ストリームに渡される追加の資格証明。「OSコマンド・アダプタ - 単一列」の使用例を参照してください。

8.4.4 SQLアダプタ

サポートされているカスタムSQL問合せまたは関数コールを単一インスタンス・データベースおよびReal Application Clusters(RAC)上のインスタンスに対して実行します。

プロパティ

  • SQL問合せ - 実行するSQL問合せ。通常のSQL文はセミコロンで終了しないでください。たとえば、SQL問合せ = "select a.ename, (select count(*) from emp p where p.mgr=a.empno) directs from emp a"のようにします。PL/SQL文もサポートされており、使用する場合は「アウト・パラメータの位置」および「アウト・パラメータ・タイプ」プロパティを移入する必要があります。

  • SQL問合せファイル - SQL問合せファイル。「SQL問合せ」またはSQL問合せファイルの一方のみ使用する必要があります。たとえば、%scriptsDir%/myquery.sqlなどです。カスタム・ファイルをエージェントにアップロードでき、%scriptsDir%ディレクトリでアクセスできます。

  • 結果の置換 - SQL問合せ結果を置換します。

  • バインド変数 - 通常のSQL文で使用されるバインド変数をここで宣言します。たとえば、SQL問合せ = "select a.ename from emp a where a.mgr = :1"の場合は、バインド変数をName=1, Value=Bobとして宣言できます。

  • アウト・パラメータの位置: PL/SQL出力で使用されるバインド変数。整数値のみを指定できます。

    例: SQL問合せが次のような場合

         DECLARE         l_output1 NUMBER;         l_output2 NUMBER;     BEGIN         .....         OPEN :1 FOR             SELECT l_output1, l_output2 FROM dual;     END;
    

    アウト・パラメータの位置 = 1、アウト・パラメータ・タイプ = SQL_CURSORを設定できます。

  • アウト・パラメータ・タイプ - PL/SQL出力パラメータのSQLタイプ。「アウト・パラメータの位置」のコメントを参照してください。

資格証明

  • データベース資格証明 - データベースの接続に使用される資格証明。

データベース・ターゲットのカスタム監視資格証明セットを作成して使用し、監視資格証明をオーバーライドします。

データベース・ターゲット・タイプのホスト資格証明の作成:

> emcli create_credential_set -set_name=myCustomDBCreds -target_type=oracle_database -auth_target_type=oracle_database -supported_cred_types=DBCreds -monitoring -description='My Custom DB Credentials'

メトリック拡張ウィザードの「資格証明」ページに移動し、データベース資格証明の「資格証明セットの指定」を選択すると、ドロップ・ダウン・リストのオプションとしてカスタムDB資格証明が表示されます。

このステップでは、ホスト・ターゲット・タイプの監視資格証明セットが作成されるのみです。このメトリック拡張のデプロイ先の各ターゲットで資格証明を設定する必要があります。Enterprise Managerで、「設定」「セキュリティ」「監視資格証明」の順に選択して、資格証明を設定できます。また、Enterprise Managerコマンドライン・インタフェースを使用して実行することもできます。

> emcli set_monitoring_credential -target_name=db1 -target_type=oracle_database -set_name=myCustomDBCreds -cred_type=DBCreds -auth_target_type=oracle_database -attributes='DBUserName:myusername;DBPassword:mypassword'

8.4.5 SNMP(Simple Network Management Protocol)アダプタ

Enterprise Manager管理エージェントは、メトリック・データとして使用されるManagement Information Base(MIB)変数情報をSNMPエージェントに問い合せることができます。

基本プロパティ

  • オブジェクト識別子(OID): オブジェクト識別子は、MIB階層内の管理対象オブジェクトを一意に識別します。1つ以上のOIDを指定できます。SNMPアダプタは、指定されたOIDのデータを収集します。たとえば、1.3.6.1.4.1.111.4.1.7.1.1と入力します。

拡張プロパティ

  • デリミタ - OIDの属性に対して複数のOIDを指定する場合に使用するデリミタ値。デフォルト値はスペース、\nまたは\tです。

  • 表データ - メトリックに対して予期される結果に複数の行があるかどうかを指定します。使用できる値は、TRUEまたはFALSEです。デフォルト値はFALSEです。

  • V2タイプを含む - 指定したOIDのいずれかがSNMPV2データ・タイプかどうかを示します。使用できる値は、TRUEまたはFALSEです。デフォルト値は、FALSEです。たとえば、指定するOID値がcounter64型の場合、この属性をTRUEに設定します。

8.4.6 JMXアダプタ

JMX対応のサーバーからJMX属性を取得し、これらの属性をメトリック表として返します。

プロパティ

  • Metric -- 属性を問い合せるMBean ObjectNameまたはObjectNameパターン。これはメトリック・メタデータとして指定されるため、インスタンス不可知である必要があります。MBean ObjectNameのインスタンス固有のキー・プロパティ(servernameなど)はワイルドカードで置換することが必要な場合があります。

  • ColumnOrder -- メトリック内に存在する必要のある順序で並べられたJMX属性のセミコロン区切りリストです。

拡張プロパティ

  • iIdentityCol -- JMX属性として使用可能でない場合に列として公開する必要のあるMBeanキー・プロパティ。次に例を示します。

    com.myCompany:Name=myName,Dept=deptName, prop1=prop1Val, prop2=prop2Val
    

    この例では、identityColName;Deptとして設定すると、columnOrderプロパティで指定したJMX属性を表す列の横にNameとDeptを表す2つの追加のキー列が生成されます。

  • AutoRowPrefix -- 自動生成された行に使用する接頭辞。メトリック・プロパティで指定されたMBean ObjectNameパターンが複数のMBeanに一致し、columnOrderで指定されたJMX属性のいずれもそれぞれ一意でない場合は、行が自動的に生成されます。ここで指定したautoRowIdは、作成される追加のキー列の接頭辞として使用されます。たとえば、メトリックが次のように定義されているとします。

    com.myCompany:Type=CustomerOrder,* columnOrder
    

    これは、次と同じです。

    CustomerName;OrderNumber;DateShipped
    

    また、注文が2つに分けて出荷される場合にCustomerName;OrderNumber;Amountが一意でない可能性があると想定した場合、autoRowIdを"ShipItem-"と設定すると、各行のメトリックの追加のキー列にShipItem-0、ShipItem-1、ShipItem-2...ShipItem-nが移入されます。

  • メトリック・サービス -- 「True」または「False」。MetricServiceがターゲットのWeblogicドメインで有効になっているかどうかを示します。Oracle DMS MBeanを介して公開されるメトリックを収集する必要がある場合を除き、このプロパティは、メトリック拡張に対してほとんどの場合にfalse(選択解除)になります。MetricServiceがtrueに設定されている場合、基本プロパティmetricMetricService表の名前になり、基本プロパティcolumnOrderMetricService表の列名のセミコロン区切りリストになります。


    注意:

    JMXベースのメトリック拡張の作成例の詳細は、『Oracle® Enterprise Manager拡張性プログラマーズ・リファレンス』の「WebサービスおよびJMXを使用した監視」を参照してください。

8.5 メトリック拡張へのユーザー定義メトリックの変換

Enterprise Manager 12c以上のエージェントによってモニタリングされるターゲットでは、以前のユーザー定義メトリックおよびメトリック拡張がサポートされます。リリース12cよりも後では、メトリック拡張しかサポートされません。既存のユーザー定義メトリックがある場合、できるだけ早くメトリック拡張に移行して、管理環境内で監視の中断が起こらないようにすることをお薦めします。

ユーザー定義のメトリック定義のメトリック拡張への移行は自動的には行われないので、管理者が開始する必要があります。移行プロセスでは、ユーザー定義メトリック・メタデータをメトリック拡張メタデータに移行します。


注意:

収集したユーザー定義メトリック履歴データの移行はサポートされません。

ユーザー定義メトリックをメトリック拡張に移行して、メトリック拡張をターゲットに正常にデプロイしたら、ユーザー定義メトリックを無効にするか削除する必要があります。ユーザー定義メトリックの収集を無効にすると、メタデータ(ユーザー定義メトリックの定義)は残りますが、オープンしているすべてのアラートがクリアされ、メトリック・エラーが削除され、ユーザー定義メトリックはそれ以上収集されません。ユーザー定義メトリックを削除すると、メタデータと履歴データが削除され、オープン・アラートがクリアされ、メトリック・エラーが削除されます。

8.5.1 概要

ユーザー定義メトリック(UDM)からメトリック拡張(ME)への移行によって、既存のUDMが新規または既存のMEによって置き換えられます。移行プロセスの概念は、様々なターゲットに対して作成された同じ定義のUDMを1つのMEに統合することです。また、MEは複数のメトリック列をサポートするため、複数の関連するUDMを組み合せて1つのMEにすることが可能です。

この移行プロセスは次のステップで構成されています。

  1. 移行する必要があるUDMを識別します。

  2. 提供されているEM CLIコマンドを使用して、互換性のあるメトリック拡張を作成または選択します。

  3. メトリック拡張をテストして公開します。

  4. メトリック拡張を、元のUDMが含まれていたすべてのターゲットとテンプレートにデプロイします。既存の通知ルールもMEを参照するように更新します。

  5. 元のUDMを削除します。古いUDMの履歴データとアラートにはUIから引き続きアクセスできますが、新しいMEはそれらを継承しないことに注意してください。

UDMが使用していた資格証明は、新たに作成されるMEには移行されないことに注意してください。ユーザー・インタフェースで、メトリック拡張で必要な資格証明セットを指定できます。MEがデフォルトの監視資格証明を使用しない場合は、関連するEM CLIコマンドを使用して、必要な資格証明を用意するために新しい資格証明セットを作成する必要があります。このセットは、メトリック拡張ウィザードの「資格証明」ページで使用できるようになります。

移行プロセスは、いくつかの移行セッションに分類されます。各セッションが1つ以上のUDMの移行を実行します。個々のセッションを移行するプロセスはタスクと呼ばれます。つまり、1つのセッションは1つ以上のタスクで構成されます。言い換えると、移行では1つのセッションを作成し、そのセッションの各タスクを完了するために必要な入力を提供します。ワークフローを通して、セッションとタスクのステータスを確認できます。

8.5.2 コマンド

このプロセスの様々な手順を完了するために多くのEM CLIコマンドが使用されます。コマンド定義の詳細を確認するには、EM CLI help <コマンド>オプションを使用してください。

  • list_unconverted_udms - まだ移行前でセッションにも含まれないUDMのリストを表示します。

  • create_udmmig_session - 1つまたは複数のUDMを移行するセッションを作成します。

  • udmmig_summary - 進行中の移行セッションをリスト表示します。

  • udmmig_session_details - 特定のセッションの詳細を表示します。

  • udmmig_submit_metricpics - 新しいMEの作成または既存MEの使用のために、UDMとMEのマッピングを提供します。

  • udmmig_retry_deploys - UDMが存在しているターゲットにMEをデプロイします。このコマンドが正常に実行するためには、MEをデプロイ可能な下書きにしておくか公開しておく必要があります。

  • udmmig_request_udmdelete - UDMを削除し、移行プロセスを終了します。

使用例

次の問題を使用して、移行を説明するための単純なユースケースを示します。

1つのホスト(host1)を含むシステムがあり、ホストに対して1つのホストUDM(hostudm1)があるとします。目的は、このUDMに相当する新しいME(me1)を作成することです。コマンドのシーケンスは次のとおりです。

$ emcli list_unconverted_udms

-------------+----------------------+-----------+--------------------
Type         | Name                       | Metric    | UDM                
-------------+----------------------+-----------+--------------------
host         | host1                             |UDM        | hostudm1           

このコマンドは、この段階で、移行されていないUDMまたは移行プロセス中のUDMが1つのみあることを示します。次は、セッションの作成に進みます。

$ emcli create_udmmig_session -name=migration1 -desc="Convert UDMs for host target" -udm_choice=hostudm1 -target=host:host1
 
Migration session created - session id is 1

このコマンドによって、名前が「migration1」、説明が「convert UDMs for host target」の移行セッションが作成されます。udm_choiceフラグには、選択されているUDMを指定します。targetフラグには、ターゲット・タイプと、UDMが存在するターゲットを指定します。移行セッションはセッションIDで識別されます。現在のセッションのIDは1です。

$ emcli udmmig_summary

------+--------------+------------------+------+------+--------+------+--------
ID    | Name         | Description      |#Tgts |Todo  |#Tmpls  |Todo  |IncRules
------+--------------+------------------+------+------+--------+------+--------
1     |migration1    |Convert UDMS      |      | 1/1  |  0     | -/0  | -/0    
------+--------------+------------------+------+------+--------+------+--------

このコマンドでは、現在進行中のすべての移行セッションのサマリーが表示されます。「Name」フィールドと「Description」フィールドでセッションが特定されます。その他の列には、メトリック拡張に変換されているUDMへの参照を含むターゲット、テンプレートおよびインシデント・ルールの数が示されます。「Todo」列には、まだアップグレードされていないUDMへの参照を含むターゲット、テンプレートおよびインシデント・ルールの数が示されます。移行セッションは時間をかけて進めることがあるため、このコマンドを使用して、セッションで完了した部分の概要を確認します。

$ emcli list_unconverted_udms

There are no unconverted udms

このUDMは移行セッションに含まれているため、未変換のUDMのリストにはもう表示されません。

$ emcli udmmig_session_details -session_id=1
 
Name: migration1
Desc: Convert UDMs for host target
Created: <date> <time>
UDM Pick: [hostudm1]
UDMs being converted:
----------+----------+---------+------+------------+---------+---------+-----
Type      |Name      |UDM      |#MC   |Metric      |Column   |DepS     |DelS
----------+----------+---------+------+------------+---------+---------+-----
host      |host1     |hostudm1 |  0   |            |         |WAIT     |WAIT
----------+----------+---------+------+------------+---------+---------+-----

このコマンドでは、1つの移行セッションのステータスが示されます。UDMの名前、UDMが存在するターゲットのタイプと名前がリストされます。さらに、UDMと一致するEMインスタンスに現在含まれるメトリック拡張も示されます。ユーザーは、既存の選択肢から1つを使用するか、まったく新しいメトリック拡張を作成するかを選択できます。

UDMのプロパティを照合して、互換性のあるメトリック拡張が検索されます。たとえば、ホストUDMの場合は、コマンド、スクリプトおよび引数のフィールドが同じメトリック拡張が検索されます。データベースUDMの場合は、一致するSQL問合せが検索されます。

また、「DepS」列は、UDMと一致したメトリック拡張が、そのUDMが定義されているターゲットにデプロイされたかどうかを示します。「DelS」列は、メトリック拡張がデプロイされた後でUDMが削除されたかどうかを示します。ユーザーが移行を進めるにつれて、この表は左から右に更新されます。削除ステータスの列が「complete」に設定されると、移行セッションは終了です。

$ emcli udmmig_submit_metricpicks -session_id=1 -input_file=metric_picks:filename
 
Successfully submitted metric picks for migration session

このコマンドは、UDMを置き換えるために、既存のメトリック拡張の使用または新規のメトリック拡張の作成をEnterprise Managerインスタンスに指示します。様々なオプションがファイル(コマンドに含まれるfilename)で提供されます。このファイルの内容を次に示します。

"host,host1,hostudm1,N,ME$me1,Usage"

ファイルの各行がUDMとMEのマッピングを表します。この行には、ターゲット・タイプ、ターゲット名、UDM名、メトリック拡張が新規(N)か既存(E)かを示すフラグ、メトリック拡張名(接頭辞ME$を付ける必要があります)、および列名が含まれます。

サポートされるUDMのタイプは次のとおりです。

  • ホスト(host)

  • データベース(oracle_database)

  • RAC(rac_database)

ユーザーは、ファイルの収集項目の部分にデータ列の名前のみを指定できます。移行によって作成されるメトリック拡張には、UDMの構造を表す2つの列が必ず含まれます。1列のUDMの場合、1つ目の列は索引列で、もう1つの列はこのファイルに示された列名を使用します。2列のUDMの場合、MEの最初の列はキー列になり、2つ目の列では収集名が使用されます。

この段階でメトリック拡張は作成されており、メトリック拡張ライブラリに表示されます。

$ emcli udmmig_session_details -session_id=1
 
Name: migration1
Desc: Convert UDMs for host target
Created: <date> <time>
UDM Pick: [hostudm1]
Udms being converted:
----------+--------+---------+------+----------+------------+---------+-----
Type      |Name    |UDM      |#MC   |Metric    |Column      |DepS     |DelS
----------+--------+---------+------+----------+------------+---------+-----
host      |host1   |hostudm1 |   1  | ME$me1   | Usage      |WAIT     |WAIT
----------+--------+---------+------+----------+------------+---------+-----

        #MC : There are 1 matches for udms in this session.
        Use emcli udmmig_list_matches to list available matches

セッション詳細のコマンドによって、このUDMに相当するメトリック拡張が1つあること(MC列の値が1)と、メトリック拡張の名前がME$me1であることが示されます。この段階では、ライブラリのページでメトリック拡張をテストできます。テストが完了して、作成されたメトリック拡張に問題がなければ、デプロイすることができます。デプロイするためには、少なくとも、メトリック拡張をデプロイ可能な下書きとして保存する必要があります。

$ emcli udmmig_retry_deploys -session_id=1 -input_file=metric_tasks:filename2
 
Metric Deployments successfully submitted

メトリック拡張が公開されると、システムによってジョブがトリガーされ、UDMが存在していたすべてのターゲットにメトリック拡張が自動的にデプロイされます。この処理を手動で制御する必要がある場合には、前述のコマンドを使用すると必要なステップが実行されます。このコマンドは、ターゲット・マッピングに対するUDMを含むファイルが提供される点で、submit_metricpicksオプションに似ています。これは上のfilename2で参照されます。ファイルの内容は次のとおりです。

"host,host1,hostudm1"

ファイルの各行は、UDMと、UDMが存在するターゲット・タイプとターゲットのマッピングを示します。このコマンドが実行されると、メトリック拡張を様々なターゲットにデプロイするジョブが起動されます。ジョブはユーザー・インタフェースで追跡できます。

$ emcli udmmig_request_udmdelete -session_id=1 -input_file=metric_tasks:demo_tasks
 
Udm deletes successfully submitted

最後のコマンドでは、メトリック拡張に移行したUDMが削除されます。このコマンドは、コマンドの実行時に完了していたデプロイメントの数に応じて、部分的に終了することがあります。

$ emcli udmmig_session_details -session_id=1
 
Name: migration1
Desc: Convert UDMs for host target
Created: <date > <time>
Completed: <date > <time>
UDM Pick: [hostudm1]
Udms being converted:
--------+----------+---------+------+------------+------------+---------+-----
Type    |Name      |UDM      |#MC   |Metric      |Column      |DepS     |DelS
--------+----------+---------+------+------  ----+------------+---------+-----
host    |host1     |hostudm1 |  1   | ME$me1     | Usage      |COMP   |COMP
--------+----------+---------+------+------------+------------+---------+-----
 
        #MC : There are 1 matches for udms in this session.
          Use emcli udmmig_list_matches to list available matches

セッション詳細のコマンドによって、移行プロセスが実際に完了したことが示されます。

8.6 メトリック拡張のコマンドライン動詞

メトリック拡張は、UIの外部からEnterprise Managerコマンドライン・インタフェース(EM CLI)を使用して操作できます。動詞には次の2つのカテゴリがあります。

  • メトリック拡張のための動詞

    • export_metric_extension: メトリック拡張をアーカイブ・ファイルにエクスポートします。

    • get_unused_metric_extensions: 使用されていないメトリック拡張のリストを取得します。

    • import_metric_extension: メトリック拡張アーカイブ・ファイルをインポートします。

    • publish_metric_extension: すべての管理者が使用できるようにメトリック拡張を公開します。

    • save_metric_extension_draft: メトリック拡張のデプロイ可能な下書きを保存します。

  • ユーザー定義メトリックを移行するための動詞

    • abort_udmmig_session: ユーザー定義メトリック移行セッションを(一部)中断します。

    • analyze_unconverted_udms: 変換されていないユーザー定義メトリックを分析します。

    • create_udmmig_session: ユーザー定義メトリック移行セッションを作成します。

    • list_unconverted_udms: 移行セッションにまだ含まれていないユーザー定義メトリックをリスト表示します。

    • udmmig_list_matches: 特定のユーザー定義メトリック移行セッション内で、ユーザー定義メトリックごとに一致するメトリックをリスト表示します。

    • udmmig_request_udmdelete: ターゲットからのユーザー定義メトリックの削除を要求します。

    • udmmig_retry_deploys: ターゲットへのメトリック拡張のデプロイを再試行します。

    • udmmig_session_details: 特定のユーザー定義メトリック移行セッションの詳細を取得します。

    • udmmig_submit_metricpicks: セッションのユーザー定義メトリックを置換するメトリックを選択します。

    • udmmig_summary: すべてのユーザー定義メトリック移行セッションのステータスのサマリーを表示します。

    • udmmig_update_incrules: 置換のメトリック参照を含むようにユーザー定義メトリックのインシデント・ルールを更新します。

メトリック拡張のための動詞

  emcli export_metric_extension
       -file_name=<name of the metric extension archive>
       -target_type=<target type of the metric extension>
       -name=<name of the metric extension
       -version=<version of the metric extension>

  Description:
    Export a metric extension archive file.

  Options:
    -file_name=<file name>
      The name of the metric extension archive file to export into.
    -target_type=<target type>
      Target type of the metric extension.
    -name=<name>
      Name of the metric extension.
    -version=<version>
      Version of the metric extension to be exported.


  emcli get_unused_metric_extensions

  Description:
    Get a  list of metric extensions that are deployed to agents but not attached to any targets.


  emcli import_metric_extension
        -file_name=<name of the metric extension archive>
        -rename_as=<name of the metric extension to import as>

  Description:
    Import a metric extension archive file.

  Options:
    -file_name=<file name>
      The name of the metric extension archive file to be imported.
    -rename_as=<metric extension name>
      Import the metric extension using the specified name, replacing the name given in the archive.


  emcli publish_metric_extension
       -target_type=<target type of the metric extension>
       -name=<name of the metric extension
       -version=<version of the metric extension>

  Description:
    Publish a metric extension for use by all administrators. 
  The metric extension must currently be a deployable draft.

  Options:
    -target_type=<target type>
      Target type of the metric extension.
    -name=<name>
      Name of the metric extension.
    -version=<version>
      Version of the metric extension to be published.


  emcli save_metric_extension_draft
       -target_type=<target type of the metric extension>
       -name=<name of the metric extension
       -version=<version of the metric extension>

  Description:
    Save a deployable draft of a metric extension. The metric
  extension must currently be in editable state. Once saved as 
  draft, the metric extension will no longer be editable.

  Options:
    -target_type=<target type>
      Target type of the metric extension.
    -name=<name>
      Name of the metric extension.
    -version=<version>
      Version of the metric extension to be saved to draft.

ユーザー定義メトリックの動詞

  emcli abort_udmmig_session
        -session_id=<sessionId>
        [-input_file=specific_tasks:<complete path to file>]

  Description:
    Abort the migration of user-defined metrics to MEs in a session

  Options:
    -session_id=<id of the session>
      Specify the id that was returned at time of session created,
      or from the output of udmmig_summary
    [-input_file=specific_tasks:<complete file path>]
      This optional parameter points at a file name that contains a
         target, user-defined metric,
      one per line in the following format:
      <targetType>,<targetName>,<collection name>
      Use targetType=Template to indicate a template
      Use * for collection name to abort all user-defined metrics for a target


  emcli analyze_unconverted_udms [-session_id=<sessionId>]

  Description:
    Analyze user-defined metrics and list unique user-defined metrics, any possible matches, and
    templates that can apply these matching metric extensions
  Options:
    -session_id=<id of a session to be reanalyzed>
      Not specifying a session id causes the creation of a analysis
      session that contains all unconverted user-defined metrics. You can specify 
      this session id in future invocations to get fresh analysis.


  emcli create_udmmig_session
      -name=<name of the session>
      -desc=<description of the session>
      [-udm_choice=<specific udm to convert>]*
      {-target=<type:name of the target to migrate> }* 
      | {-input_file=targetList:<complete path to file>};      {-template=<name of the template to update> }* 
      | {-input_file=templateList:<complete path to file>}
      [-allUdms]

  Description:
    Creates a session to migrate user-defined metrics to metric extensions for targets.

  Options:
    -name=<session name>
      The name of the migration session to be created.
    -desc=<session session description>
      A description of the migration session to be created.
    -udm_choice=<udm name>
      If the session should migrate specific user-defined metrics, specify them
      Otherwise, all user-defined metrics will be migrated
    -target=<type:name of target to migrate>
      The type:name of the target to be updated.
      Multiple values may be specified.
    -input_file=targetList:<complete file path>
      This takes a file name that contains a list of targets,
      one per line in the following format:
      <targetType>:<targetName>
    -template=<name of template to migrate>
      The name of the template to update.Multiple values may be specified
    -input_file=templateList:<complete file path>
      This takes a file name that contains a list of templates,
      one name per line
    -allUdms
      This forces the session to contain all user-defined metrics from targets and 
      templates (default behavior just picks those not in a session)

  emcli list_unconverted_udms [-templates_only]

  Description:
    Get the list of all user-defined metrics that are not yet in a migration session

  Options:
    -templates_only
      Only lists unconverted user-defined metrics in templates.


  emcli udmmig_list_matches
        -session_id=<sessionId>

  Description:
    Lists the matching metrics per user-defined metric in a migration session
  Options:
    -session_id=<id of the session>
      Specify the id that was returned at time of session created,
      or from the output of udmmig_summary


  emcli udmmig_request_udmdelete
        -session_id=<sessionId>
        -input_file=metric_tasks:<complete path to file>

  Description:
    Delete the user-defined metrics that have been replaced by Metric Extenions

  Options:
    -session_id=<id of the session>
      Specify the id that was returned at time of session created,
      or from the output of udmmig_summary
    -input_file=metric_tasks:<complete file path>
      This takes a file name that contains a target, user-defined metric,
      one per line in the following format:
      <targetType>,<targetName>,<collection name>


  emcli udmmig_retry_deploys
        -session_id=<sessionId>
        -input_file=metric_tasks:<complete path to file>

  Description:
    Retry the deployment of metric extensions to a target

  Options:
    -session_id=<id of the session>
      Specify the id that was returned at time of session created,
      or from the output of udmmig_summary
    -input_file=metric_tasks:<complete file path>
      This takes a file name that contains a target, user-defined metric,
      one per line in the following format:
      <targetType>,<targetName>,<collection name>


  emcli udmmig_submit_metricpicks
        -session_id=<sessionId>
        -input_file=metric_picks:<complete path to file>

  Description:
    Supply the metric picks to use to replace user-defined metrics per target in a session

  Options:
    -session_id=<id of the session>
      Specify the id that was returned at time of session created,
      or from the output of udmmig_summary
    -input_file=metric_picks:<complete file path>
      This takes a file name that contains a target, user-defined metric, metric pick,
      one per line in the following format:
      <targetType>,<targetName>,<collection name>,[N/E],<metric>,<column>
       using N if a new metric should be created or E if an existing 
       metric is referenced.


  emcli udmmig_summary
      [-showAll]

  Description:
    Gets the summary details of all migration sessions in progress

  Options:
    -showAll
      This prints out all sessions including those that are complete.
      By default, only in-progress sessions are listed.


  emcli udmmig_update_incrules
        -session_id=<sessionId>
        -input_file=udm_inc_rules:<complete path to file>

  Description:
    Update Incident Rules that reference user-defined metrics with a reference to
    replacing metric extension.

  Options:
    -session_id=<id of the session>
      Specify the id that was returned at time of session created,
      or from the output of udmmig_summary
    -input_file=udm_inc_rules:<complete file path>
      This takes a file name that contains rule, user-defined metric, metric,
      one per line in the following format:
      <ruleset id>,<rule id>,<udm name>,<metric name>