プライマリ・コンテンツに移動
Oracle® Enterprise Manager Cloud Control拡張プログラマーズ・リファレンス
12cリリース4 (12.1.0.4)
B70762-06
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

10 インシデント・マネージャのカスタマイズ

この章では、イベント詳細ページをカスタマイズして、イベントの詳細な診断情報を提供し、根本的な問題の迅速な解決を容易にする方法について説明します。インシデント・マネージャUIの詳細ページで、ユーザーは、イベントの詳細を表示できます。このようなページのコンテンツは、ユーザーが根本的な問題の基本的性質を理解する際に役立ち、問題を迅速に解決するための追加のコンテキスト詳細(テキスト、診断または解決のページへのリンクなど)を提供します。

1つのイベントのみを持つインシデントの場合、イベント詳細ページに適用されたカスタマイズは、自動的に「インシデントの詳細」ページに適用されます。


注意:

インシデント管理の詳細は、『Oracle Enterprise Manager Cloud Control管理者ガイド』の「インシデント管理の使用」の章を参照してください。
http://www.oracle.com/pls/em121/homepage

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

10.1 インシデント・マネージャのカスタマイズの概要

プラグイン開発者は、インシデント・マネージャのカスタマイズにおいて、次の手順に従う必要があります。

  1. インシデント・マネージャUIに必要なカスタマイズを決定します。きめの細かいアクセスのために、条件を使用します。詳細は、10.2項「サポートされたカスタマイズについて」を参照してください。

  2. XSDに従って、カスタマイズXMLを構築します。詳細は、10.3項「イベント固有のカスタマイズXMLの作成」を参照してください。

  3. カスタマイズを登録します。詳細は、10.8項「カスタマイズの登録」を参照してください。

  4. 条件に一致するイベントを公開することで、UIをテストします。詳細は、10.9項「カスタマイズ後のインシデント・マネージャのテスト」を参照してください。

10.2 サポートされたカスタマイズについて

図10-1に、「インシデント・マネージャ」ページから選択したインシデントの「一般」タブを示します。

図10-1 インシデント・マネージャ

「インシデント・マネージャ」UIページの「一般」タブ

このページでは。次のカスタマイズがサポートされます。

各カスタマイズ仕様には、次の2つの部分があります。

  1. 条件

    これは、カスタマイズされたコンテンツを表示するイベントを識別するために使用される基準です。たとえば、データベース上のメトリック・アラートへの診断リンクを表示するシナリオを考えてみます。条件は、「イベント・クラスはmetric_alertで、ターゲット・タイプはoracle_database」になります。別の例として、メトリック・チャートを含むリージョンを表示します。この条件は、「イベント・クラスはmetric_alertで、metric_typeは数値」になります。


    注意:

    任意のターゲット・タイプ名がサポートされます。イベントの照合時に、条件のターゲット・タイプを、イベントのターゲット・タイプと一致させます。

  2. アクション

    アクションは、カスタマイズされたコンテンツを指定します。たとえば、診断リンクの指定(リンクの下に表示されるラベルおよびURL)などです。

10.3 イベント固有のカスタマイズXMLの作成

Oracleでは、インシデント・マネージャUI上に表示するための特定のイベントのカスタマイズを説明するためにXMLを記述できるよう、イベント固有のカスタマイズXSDが提供されます。


注意:

完全なイベント固有のカスタマイズXMLスキーマ定義(XSD)は、拡張開発キット(EDK)を参照してください。

イベント固有のカスタマイズXSDは、インシデント・マネージャUIがUIのカスタマイズをサポートする方法を定義します。

きめの細かい条件を定義して、「イベントの詳細」ページまたは「インシデントの詳細」ページをカスタマイズできます。

例10-1 メタデータ・ファイルのサンプル

<evt:CustomUI AppliesTo="EVENT" EventClass ="metric_alert" TargetType =host">
    <evt:ConditionDetails>
       <evt:Condition>
         <evt:Attrib Name="metric_name" Value="Load"/>
         <evt:Attrib Name="metricColumn" Value="cpuUtil"/> </evt:Condition>
     </evt:ConditionDetails>
</evt:CustomUI>

メタデータXMLには、次のネーミング規則をお薦めします。

  • event_class_description.xml

    前述のファイル名では、次のようになります。

    • event_classは、イベント・クラスの名前を表します。

      イベントのカスタマイズでは、次のイベント・クラスをサポートします。

      • metric_alert

      • target_availability

      • job_status_change

      • cs_rule_violation

      • cs_score

      • sla_alert

      • metric_error

    • descriptionは、イベントのカスタマイズの短い説明を表します。

    たとえば、job_status_change_recommendation.xmlです。

  • event_class_target_type_description.xml

    前述のファイル名では、次のようになります。

    • event_classは、イベント・クラスの名前を表します。

    • target_typeは、このイベントが生成されるターゲット・タイプの名前を表します。

    • descriptionは、イベントのカスタマイズの短い説明を表します。

    たとえば、host_metric_alert_diaglinks.xmlです。


注意:

ファイル名の最大長は255文字です。

メタデータXMLのディレクトリの場所の詳細は、10.8項「カスタマイズの登録」を参照してください。


注意:

empdk validate_pluginコマンドを使用して、XMLメタデータ・ファイルを検証します。empdk validate_pluginコマンドの詳細は、第14章「プラグインの検証、パッケージ化およびデプロイ」を参照してください。

10.3.1 イベント固有のカスタマイズ・メタデータ要素の概要

表10-1では、イベント固有のカスタマイズXMLを定義する重要な要素について説明します。

表10-1 イベント固有のカスタマイズXML内の重要な要素

要素 説明

evt:CustomUI

これは、XMLのルート要素です。カスタマイズを定義します。

次の属性があります。

  • AppliesTo: イベントのカスタマイズに適用可能です。有効な値はEVENTのみです。

  • EventClass: 内部イベント・クラス名を指定し、カスタマイズがイベントに適用する場合のみ適用可能です。

  • TargetType: ターゲット・タイプの内部名。カスタマイズは、このターゲット・タイプのすべてのターゲットからのイベントに適用します。

evt:ConditionDetails

カスタマイズが適用される基準を指定します。

evt:Condition

カスタマイズの条件を指定します。

注意: evt:ConditionDetailsタグ内でのみ、1つの条件をサポートします。

evt:DetailUI

「インシデント・マネージャ」UIページの「詳細」リージョンをカスタマイズしていることを指定します。

詳細は、10.4項「カスタマイズされたイベントの詳細の追加」を参照してください。

evt:GuidedResolutionDetails

「インシデント・マネージャ」UIページの「ガイドされた解決」リージョンをカスタマイズしていることを指定します。この要素を使用すると、アクション・リンク、診断リンクおよび推奨を追加できます。

詳細は、10.5.1項「XMLを使用した推奨の追加」を参照してください。


10.3.2 イベントについて

この項では、共通イベント属性と、最も一般的に使用されている2つのイベント・タイプの定義について説明します。

10.3.2.1 共通イベント属性

すべてのイベントには、次の共通属性があります。

表10-2 共通イベント属性

属性 説明

sys_event_class

イベント・タイプ

使用可能な値は次のとおりです。

  • target_availability: ターゲット可用性イベント

  • metric_alert: メトリック・アラート・イベント

sys_event_name

イベントの性質を一意に識別するためのイベント名

sys_event_key

このイベントが関連付けられているイベント・ソース・オブジェクト内のサブコンポーネントの名前。これはオプションです。たとえば、ホスト上のディスクの名前、表領域の名前などです。

sys_event_msg

イベント・メッセージ

sys_action_msg

アクション・メッセージ

sys_source_obj_type

ソース・オブジェクト・タイプ。たとえば、ジョブベースのイベントのJOBSです。

sys_source_obj_id

ソース・オブジェクトの一意の内部識別子

sys_target_guid

ターゲットの一意の内部識別子

sys_target_name

ターゲット名

sys_target_owner

ターゲット所有者

sys_target_version

ターゲット・バージョン

sys_target_lifecycle_status

ライフサイクル・ステータス

sys_incident_id

インシデントID

sys_severity

イベントの重大度

使用可能な値は次のとおりです。

  • 32: 致命的

  • 16: クリティカル

  • 8: 警告

  • 4: マイナー警告

sys_category

イベント・カテゴリ。

使用可能な値は次のとおりです。

  • 可用性: 1

  • 構成: 2

  • 容量: 4

  • フォルト: 8

  • 負荷: 16

  • パフォーマンス: 32

  • セキュリティ: 64

  • ジョブ: 128

  • 診断: 256

  • エラー: 512

  • ビジネス: 1024


10.3.2.2 ターゲット可用性イベント

ターゲット可用性イベントは、ターゲットの可用性ステータスを表します。

例10-2に、ターゲット可用性XMLファイルによって定義されたイベント属性を示します。表10-3に、ターゲット可用性のすべてのイベント属性のリストを示します。

例10-2 target_availability.xml

<evt:EventClass Name="target_availability" 
          NLSID="TARGET_AVAILABILITY" 
          ResourceBundle="oracle.sysman.core.common.events.classes.rsc.availability.AvailabilityEventsMsg" 
          TargetAware="ALWAYS" 
          SourceObjectType="TARGET"
          Version="1.0" 
          xmlns:evt="http://www.oracle.com/EnterpriseGridControl/eventclass_model"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
          xsi:schemaLocation="http://www.oracle.com/EnterpriseGridControl/eventclass_model EventClass.xsd">

    <evt:DescriptionNLSID>TARGET_AVAILABILITY_DESC</evt:DescriptionNLSID> 

    <evt:AttributeDef>

        <!--This attribute is used to store the availability status of a target-->
        <evt:Attrib Name="target_status" 
                    DataType="STRING" 
                    isReferenced="false" 
                    NLSID="TARGET_STATUS" 
                    isValueTranslatable="true">
             <evt:DescriptionNLSID>TARGET_STATUS_DESC</evt:DescriptionNLSID> 
        </evt:Attrib>

        <!--The guid of the severity record associated with this availability record-->
        <evt:Attrib Name="severity_guid" 
                    DataType="RAW" 
                    isReferenced="false" 
                    NLSID="SEVERITY_GUID" 
                    isValueTranslatable="false">
             <evt:DescriptionNLSID>SEVERITY_GUID_DESC</evt:DescriptionNLSID> 
        </evt:Attrib>

        <!--The cycle guid of the severity record associated with this availability record-->
        <evt:Attrib Name="cycle_guid" 
                    DataType="RAW" 
                    isReferenced="true" 
                    NLSID="CYCLE_GUID" 
                    isValueTranslatable="false">
             <evt:DescriptionNLSID>CYCLE_GUID_DESC</evt:DescriptionNLSID> 
        </evt:Attrib>

        <!--The below attributes specifies the metric guid of response metric -->
        <evt:Attrib Name="metric_guid" 
                    DataType="RAW" 
                    isReferenced="true" 
                    NLSID="METRIC_GUID" 
                    isValueTranslatable="false">
             <evt:DescriptionNLSID>METRIC_GUID_DESC</evt:DescriptionNLSID> 
        </evt:Attrib>

        <!--The below attribute represents a sub-state for availability states like Status pending, Agent Unreachable and Blackout.
        TARGET STATUS        CODE     SUB_STATE

        Any                  0        None (Default)
        Agent unreachable    1        Normal
        Agent unreachable    2        Host Down
        Agent unreachable    3        Disk Full
        Status Pending       10       Normal
        Status Pending       11       Stuck
        -->
        <evt:Attrib Name="avail_sub_state" 
                    DataType="NUMBER" 
                    isReferenced="false" 
                    NLSID="AVAILABILITY_SUB_STATE" 
                    isValueTranslatable="false">
             <evt:DescriptionNLSID>AVAILABILITY_SUB_STATE_DESC</evt:DescriptionNLSID> 
        </evt:Attrib>

        <!--The below attributes specifies the availability transition severity 
        that resulted in the target availability status that is specified by
        target_status attribute -->
        <evt:Attrib Name="avail_severity" 
                    DataType="NUMBER" 
                    isReferenced="false" 
                    NLSID="AVAILABILITY_SEVERITY" 
                    isValueTranslatable="false">
             <evt:DescriptionNLSID>AVAILABILITY_SEVERITY_DESC</evt:DescriptionNLSID>
        </evt:Attrib>
    </evt:AttributeDef>

    <evt:RefAttribSource><![CDATA[ mgmt_avail.get_target_avail_ref_attribs]]></evt:RefAttribSource>

    <!-- For availibility we don't have any identifier attribute list. -->
    <!-- So system will use target_guid, event_class name to generate the identifier attribute. -->

    <evt:RuleAttribs>
        <evt:RuleAttrib Name="target_status" /></evt:RuleAttrib>
        <evt:RuleAttrib Name="avail_sub_state" /></evt:RuleAttrib> 
        <evt:RuleAttrib Name="avail_severity" /></evt:RuleAttrib> 
    </evt:RuleAttribs>

    <evt:NotifAttribs>
        <evt:NotifAttrib Name="target_status" /> 
        <evt:NotifAttrib Name="severity_guid" />
        <evt:NotifAttrib Name="avail_sub_state" /> 
        <evt:NotifAttrib Name="avail_severity" /> 
        <evt:NotifAttrib Name="metric_guid" /> 
        <evt:NotifAttrib Name="cycle_guid" /> 
    </evt:NotifAttribs>

    <evt:Severities>
        <evt:Severity>FATAL</evt:Severity>
        <evt:Severity>CRITICAL</evt:Severity>
        <evt:Severity>WARNING</evt:Severity>
        <evt:Severity>MINOR_WARNING</evt:Severity> 
        <evt:Severity>INFORMATIONAL</evt:Severity> 
    </evt:Severities>
</evt:EventClass>

表10-3 ターゲット可用性のイベント属性

属性 説明

TARGET_STATUS

可用性ステータス

AVAILABILITY_SUB_STATE

可用性サブステータス

AVAILABILITY_SEVERITY

遷移重大度


10.3.2.3 メトリック・アラート・イベント

特定のターゲットのメトリック(ホスト・ターゲットのCPU使用率など)またはターゲットとオブジェクトの組合せのメトリック(データベース・ターゲットの特定の表領域の領域使用率など)でアラートが発生した場合に、メトリック・アラート・イベントが生成されます。

例10-3に、メトリック・アラートXMLファイルによって定義されたイベント属性を示します。表10-4に、メトリック・アラート・イベントのすべてのイベント属性のリストを示します。

例10-3 metric_alert.xml

<evt:EventClass Name="metric_alert" 
          NLSID="METRIC_ALERT_EVENT" 
          TargetAware="ALWAYS" 
          SourceObjectType="TARGET" 
          ResourceBundle="oracle.sysman.core.common.events.classes.rsc.metrics.MetricEventsMsg"
          Version="1.1"
          xmlns:evt="http://www.oracle.com/EnterpriseGridControl/eventclass_model"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://www.oracle.com/EnterpriseGridControl/eventclass_model EventClass.xsd">
    <evt:DescriptionNLSID>METRIC_ALERT_DESC</evt:DescriptionNLSID>
    <evt:AttributeDef> 
         <evt:Attrib Name="metric_guid" DataType="RAW" isReferenced="false"
                     NLSID="METRIC_GUID_NLSID" isValueTranslatable="false">
             <evt:DescriptionNLSID>METRIC_GUID_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_value" DataType="STRING" isReferenced="false" 
                     NLSID="KEY_VALUE_NLSID" isValueTranslatable="false">
             <evt:DescriptionNLSID>KEY_VALUE_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="severity_guid" DataType="RAW" isReferenced="false" 
                     NLSID="SEVERITY_GUID_NLSID" isValueTranslatable="false">
             <evt:DescriptionNLSID>SEVERITY_GUID_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="cycle_guid" DataType="RAW" isReferenced="true" 
                     NLSID="CYCLE_GUID_NLSID" isValueTranslatable="false">
             <evt:DescriptionNLSID>CYCLE_GUID_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="value" DataType="STRING" isReferenced="true" 
                     NLSID="VALUE_NLSID" isValueTranslatable="false">
             <evt:DescriptionNLSID>VALUE_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="metric_group" DataType="STRING" isReferenced="true"
                     NLSID="METRIC_GROUP_NLSID" isValueTranslatable="true">
             <evt:DescriptionNLSID>METRIC_GROUP_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="metric_column" DataType="STRING" isReferenced="true" 
                     NLSID="METRIC_COLUMN_NLSID" isValueTranslatable="true">
             <evt:DescriptionNLSID>METRIC_COLUMN_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="metric_description" DataType="STRING" isReferenced="true"
                     NLSID="METRIC_DESCRIPTION_NLSID" isValueTranslatable="true">
             <evt:DescriptionNLSID>METRIC_DESCRIPTION_DESC_NLID</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="coll_name" DataType="STRING" isReferenced="true" 
                     NLSID="COLL_NAME_NLSID" isValueTranslatable="true">
             <evt:DescriptionNLSID>COLL_NAME_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_1" DataType="STRING" isReferenced="true"
                     NLSID="ALERT_KEY_COL_NLSID_1" isValueTranslatable="true">
             <evt:DescriptionNLSID>ALERT_KEY_COL_DESC_1</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_2" DataType="STRING" isReferenced="true"
                     NLSID="ALERT_KEY_COL_NLSID_2" isValueTranslatable="true">
             <evt:DescriptionNLSID>ALERT_KEY_COL_DESC_2</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_3" DataType="STRING" isReferenced="true"
                     NLSID="ALERT_KEY_COL_NLSID_3" isValueTranslatable="true">
             <evt:DescriptionNLSID>ALERT_KEY_COL_DESC_3</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_4" DataType="STRING" isReferenced="true"
                     NLSID="ALERT_KEY_COL_NLSID_4" isValueTranslatable="true">
             <evt:DescriptionNLSID>ALERT_KEY_COL_DESC_4</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_5" DataType="STRING" isReferenced="true"
                     NLSID="ALERT_KEY_COL_NLSID_5" isValueTranslatable="true">
             <evt:DescriptionNLSID>ALERT_KEY_COL_DESC_5</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_6" DataType="STRING" isReferenced="true"
                     NLSID="ALERT_KEY_COL_NLSID_6" isValueTranslatable="true">
             <evt:DescriptionNLSID>ALERT_KEY_COL_DESC_6</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_7" DataType="STRING" isReferenced="true"
                     NLSID="ALERT_KEY_COL_NLSID_7" isValueTranslatable="true">
             <evt:DescriptionNLSID>ALERT_KEY_COL_DESC_7</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_1_value" DataType="STRING" isReferenced="true" 
                     NLSID="KEY_VALUE_PART_NLSID_1" isValueTranslatable="false">
             <evt:DescriptionNLSID>KEY_VALUE_PART_DESC_1</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_2_value" DataType="STRING" isReferenced="true"
                     NLSID="KEY_VALUE_PART_NLSID_2" isValueTranslatable="false">
             <evt:DescriptionNLSID>KEY_VALUE_PART_DESC_2</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_3_value" DataType="STRING" isReferenced="true"
                     NLSID="KEY_VALUE_PART_NLSID_3" isValueTranslatable="false">
             <evt:DescriptionNLSID>KEY_VALUE_PART_DESC_3</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_4_value" DataType="STRING" isReferenced="true"
                     NLSID="KEY_VALUE_PART_NLSID_4" isValueTranslatable="false">
             <evt:DescriptionNLSID>KEY_VALUE_PART_DESC_4</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_5_value" DataType="STRING" isReferenced="true"
                     NLSID="KEY_VALUE_PART_NLSID_5" isValueTranslatable="false">
             <evt:DescriptionNLSID>KEY_VALUE_PART_DESC_5</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_6_value" DataType="STRING" isReferenced="true"
                     NLSID="KEY_VALUE_PART_NLSID_6" isValueTranslatable="false">
             <evt:DescriptionNLSID>KEY_VALUE_PART_DESC_6</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="key_column_7_value" DataType="STRING" isReferenced="true"
                     NLSID="KEY_VALUE_PART_NLSID_7" isValueTranslatable="false">
             <evt:DescriptionNLSID>KEY_VALUE_PART_DESC_7</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="metric_type" DataType="NUMBER" isReferenced="true"
                     NLSID="METRIC_TYPE" isValueTranslatable="false">
             <evt:DescriptionNLSID>METRIC_TYPE_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="num_keys" DataType="NUMBER" isReferenced="true"
                     NLSID="NUM_KEYS" isValueTranslatable="false">
             <evt:DescriptionNLSID>NUM_KEYS_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="unit" DataType="STRING" isReferenced="true"
                     NLSID="UNIT_NLSID" isValueTranslatable="true">
             <evt:DescriptionNLSID>UNIT_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="is_thresholdable" DataType="NUMBER" isReferenced="true"
                     NLSID="IS_THRESHOLDABLE" isValueTranslatable="false">
             <evt:DescriptionNLSID>IS_THRESHOLDABLE_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="is_remote" DataType="NUMBER" isReferenced="true"
                     NLSID="IS_REMOTE" isValueTranslatable="false">
             <evt:DescriptionNLSID>IS_REMOTE_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="is_long_running" DataType="NUMBER" isReferenced="true"
                     NLSID="IS_LONG_RUNNING" isValueTranslatable="false">
             <evt:DescriptionNLSID>IS_LONG_RUNNING_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="is_udm" DataType="NUMBER" isReferenced="true"
                     NLSID="IS_UDM" isValueTranslatable="false">
             <evt:DescriptionNLSID>IS_UDM_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
         <evt:Attrib Name="is_metric_extension" DataType="NUMBER" isReferenced="true"
                     NLSID="IS_METRIC_EXTENSION" isValueTranslatable="false">
             <evt:DescriptionNLSID>IS_METRIC_EXTENSION_DESC</evt:DescriptionNLSID>
         </evt:Attrib>
    </evt:AttributeDef>

    <evt:RefAttribSource><![CDATA[sysman.em_severity.get_metric_alert_ref_attribs]]></evt:RefAttribSource>

    <evt:SignatureAttribs>
         <evt:SignaturePart>metric_guid</evt:SignaturePart>
         <evt:SignaturePart>key_value</evt:SignaturePart>
    </evt:SignatureAttribs>
    
    <evt:RuleAttribs>
         <evt:RuleAttrib Name="metric_group"/>
         <evt:RuleAttrib Name="metric_column"/>
         <evt:RuleAttrib Name="key_value"/>
         <evt:RuleAttrib Name="key_column_1_value"/>
         <evt:RuleAttrib Name="key_column_2_value"/>
         <evt:RuleAttrib Name="key_column_3_value"/>
         <evt:RuleAttrib Name="key_column_4_value"/>
         <evt:RuleAttrib Name="key_column_5_value"/>
         <evt:RuleAttrib Name="key_column_6_value"/>
         <evt:RuleAttrib Name="key_column_7_value"/>
    </evt:RuleAttribs>

    <evt:NotifAttribs>
         <evt:NotifAttrib Name="metric_guid"/>
         <evt:NotifAttrib Name="severity_guid"/>
         <evt:NotifAttrib Name="cycle_guid"/>
         <evt:NotifAttrib Name="coll_name"/>
         <evt:NotifAttrib Name="metric_group"/>
         <evt:NotifAttrib Name="metric_column"/>
         <evt:NotifAttrib Name="metric_description"/>
         <evt:NotifAttrib Name="value"/>
         <evt:NotifAttrib Name="key_value"/>
         <evt:NotifAttrib Name="key_column_1"/>
         <evt:NotifAttrib Name="key_column_1_value"/>
         <evt:NotifAttrib Name="key_column_2"/>
         <evt:NotifAttrib Name="key_column_2_value"/>
         <evt:NotifAttrib Name="key_column_3"/>
         <evt:NotifAttrib Name="key_column_3_value"/>
         <evt:NotifAttrib Name="key_column_4"/>
         <evt:NotifAttrib Name="key_column_4_value"/>
         <evt:NotifAttrib Name="key_column_5"/>
         <evt:NotifAttrib Name="key_column_5_value"/>
         <evt:NotifAttrib Name="key_column_6"/>
         <evt:NotifAttrib Name="key_column_6_value"/>
         <evt:NotifAttrib Name="key_column_7"/>
         <evt:NotifAttrib Name="key_column_7_value"/>
         <evt:NotifAttrib Name="num_keys"/>
    </evt:NotifAttribs>

    <evt:Severities>
         <evt:Severity>CRITICAL</evt:Severity>
         <evt:Severity>WARNING</evt:Severity>
    </evt:Severities>

</evt:EventClass>

表10-4 メトリック・アラートのイベント・クラス属性

属性 説明

KEY_VALUE_DESC

メトリック・アラート・イベントに対応するメトリックの監視対象オブジェクト

VALUE_DESC

イベントがトリガーされたときのメトリックの値

METRIC_GROUP_DESC

メトリックの名前

METRIC_COLUMN_DESC

メトリック列の名前

KEY_COLUMN_1_VALUE

キー列1の値

KEY_COLUMN_2_VALUE

キー列2の値

KEY_COLUMN_3_VALUE

キー列3の値

KEY_COLUMN_4_VALUE

キー列4の値

KEY_COLUMN_5_VALUE

キー列5の値

KEY_COLUMN_6_VALUE

キー列6の値

KEY__COLUMN_7_VALUE

キー列7の値

IS_METRIC_EXTENSION_DESC

メトリックがメトリック拡張かどうかを示すフラグ


10.4 カスタマイズされたイベントの詳細の追加

「インシデントの詳細」リージョンには、イベントに関する情報が表示されます。これは、システム属性(メッセージ、ターゲット名、イベントが報告されたタイミングなど)と、クラス属性で構成されます。クラス属性の名前と値のペアをカスタマイズできます。

イベント固有のカスタマイズXMLを使用して、どの属性を表示するか(名前部分のラベルなど)、および値の下のリンクが必要かどうかを選択できます。詳細は、10.3項「イベント固有のカスタマイズXMLの作成」を参照してください。

例10-4 名前と値のペアの構築

<evt:DetailUI>
  <evt:UIAttributeList>
    <evt:UIAttrib Name="metric_name">
      <evt:URL PageType="sdkcore-dummy-published-page-id">
      <evt:URLParam Name="target" Value="^TARGET:sys_target_name^"/>
      <evt:URLParam Name="type" Value="^TARGET:sys_target_type^"/>
      <evt:URLParam Name="metric" Value="^metric_name^"/>
      <evt:URLParam Name="metricColumn" Value="^metric_column^"/>
      <evt:URLParam Name="ctxType" Value="Hosts"/>
      </evt:URL>
    </evt:UIAttrib>
  </evt:UIAttributeList>
</evt:DetailUI>

例10-4では、「インシデントの詳細」リージョンの下の名前と値のペアを構築します。名前は、イベント・クラス属性であるmetric_nameの変換された値です。値の部分は、URLパラメータが指定されたMETRIC_DETAILSページへのリンクが含まれるmetric_nameの値です。


注意:

evt:URLタグの場合、pageTypeとして、EDKの公開されたページIDを使用する必要があります。設計時に、リンク・ナビゲーションを検証できないため、このAPIを使用している場合、インシデント・マネージャUIでリンクが正しく機能することを確認する必要があります。

リンク内のURLパラメータは次のようになります。

  • イベント属性: カレット(^)で囲む必要があります。たとえば、^metric_name^のようになります。

    イベント属性の詳細は、10.3.2項「イベントについて」を参照してください。

  • ターゲット属性: 接頭辞にTARGETを付ける必要があります。たとえば、^TARGET:sys_target_type^のようになります。

    使用可能なターゲット属性は次のとおりです。

    • sys_target_name

    • sys_target_type

    • sys_target_owner

    • sys_target_version

    • sys_target_lifecycle_status

    • sys_target_guid

      これらの属性の詳細は、表10-2を参照してください。

  • イベント・コンテキスト属性: 接頭辞にEVENTを付ける必要があります。たとえば、^EVENT:evt_context_attrib_name^のようになります。

    イベント・コンテキスト属性は、イベント・パブリッシャによるイベント属性への追加のイベント情報の提供を可能にし、名前と値のペアとして定義されます。

  • 定数: リテラル文字列として指定する必要があります。たとえば、byDayのようになります。


注意:

「インシデントの詳細」リージョンをカスタマイズして、クラス固有の属性のみを含めることができます。

10.5 「ガイドされた解決」リージョン内のコンテンツの指定

「ガイドされた解決」リージョンには、次のカスタマイズを行うことができます。

  1. 「修復」リンクおよび「診断」リンクのカスタマイズ(これらのリンクは追加または削除できます)

  2. 「ガイドされた解決」リージョンへの推奨の追加

  3. My Oracle Supportのナレッジのデフォルトの検索フレーズの指定

  4. 「ガイドされた解決」リージョンへのテキストを含む領域の追加

「ガイドされた解決」リージョンでは、ユーザーによるデバッグおよび問題の解決に役立つように、関連するEnterprise Managerのページにリンクを提供します。これらの状況依存リンクは、リンクの宛先ページ内のコンテンツの性質に基づいて、複数の領域にグループ化されます。次の領域は、コンテンツを持つ場合のみ表示されます。

  • 診断: この領域には、ユーザーによる問題の診断に役立つリンクが含まれます。たとえば、ターゲットに基づくイベントの場合、「診断」領域には、トポロジ・ビューアにドリルダウンする「トポロジの表示」と呼ばれるリンクが含まれます。evt:DiagLinksタグ(例10-5を参照)を使用して、この領域内のリンクを追加または削除できます。

  • 修復: この領域には、ユーザーによる問題の解決に役立つリンクが含まれます。たとえば、しきい値を含むメトリック・アラートの場合、この領域には「しきい値の編集」へのリンクが含まれます。evt:ActionLinksタグを使用して、この領域に対してリンクを追加または削除できます。この領域は、オープン・イベントの場合のみ表示されます。

  • 推奨: この領域には、メトリック・アドバイザリ(使用可能な場合)から取得されたテキスト・コンテンツが含まれます。evt:Recommendationタグ(例10-6を参照)を使用して、この領域のコンテンツをカスタマイズできます。

  • 任意の追加領域: この領域には、メトリック・アドバイザリ(使用可能な場合)から取得されたテキスト・コンテンツが含まれます。evt:Sectionsタグ(例10-8)を使用して、このセクションのコンテンツをカスタマイズできます。

例10-5に、XMLを使用して「ガイドされた解決」リージョンの「診断」リストにリンクを追加する例を示します。

例10-5 「診断」サブセクションへのリンクの追加

<evt:DiagLinks>
  <evt:Add>
    <evt:Link LinkID="diagLink1_example">
      <evt:Label>
      <evt:LocalizedLabel DefaultLabel="Edit Thresholds"
        NLSID="EDIT_METRIC_THRESHOLDS"
        ResourceBundle="oracle.sysman.resources.MntrResourceBundle"/>
      </evt:Label>
      <evt:URL PageType="sdkcore-published-page-id-for-edit-threshold">
      <evt:URLParam Name="target" Value="^TARGET:sys_target_name^"/>
      <evt:URLParam Name="type" Value="^TARGET:sys_target_type^"/>
      <evt:URLParam Name="event" Value="doEditTreshold"/>
      <evt:URLParam Name="metric" Value="^metric_name^"/>
      <evt:URLParam Name="collName" Value="^coll_name^"/>
      <evt:URLParam Name="keyValue" Value="^key_value^"/>
      <evt:URLParam Name="metricColumn" Value="^column^"/>
      </evt:URL>
    </evt:Link>
  </evt:Add>
</evt:DiagLinks>

例10-5では、リンク・テキストはevt:Label指定から導出され、URLはevt:URLから導出されます。

リンク内のURLパラメータは次のようになります。

  • イベント属性: カレット(^)で囲む必要があります。たとえば、^metric_name^のようになります。

    イベント属性の詳細は、10.3.2項「イベントについて」を参照してください。

  • ターゲット属性: 接頭辞にTARGETを付ける必要があります。たとえば、^TARGET:sys_target_type^のようになります。

    使用可能なターゲット属性は次のとおりです。

    • sys_target_name

    • sys_target_type

    • sys_target_owner

    • sys_target_version

    • sys_target_lifecycle_status

    • sys_target_guid

      これらの属性の詳細は、表10-2を参照してください。

  • イベント・コンテキスト属性: 接頭辞にEVENTを付ける必要があります。たとえば、^EVENT:evt_context_attrib_name^のようになります。

    イベント・コンテキスト属性は、イベント・パブリッシャによるイベント属性への追加のイベント情報の提供を可能にし、名前と値のペアとして定義されます。

  • 定数: リテラル文字列として指定する必要があります。たとえば、byDayのようになります。

10.5.1 XMLを使用した推奨の追加

「ガイドされた解決」リージョンの「アクション」リストによって、問題を診断または解決するためにユーザーが従う推奨ステップを説明するテキストが示されます。Labelタグのいずれかを使用して、推奨を指定します。

例10-6 推奨の追加

<evt:GuidedResolutionDetails>
  <evt:GuidedResolution>
    <evt:Recommendation ID="reco_foo">
      <evt:Label>
      <evt:LocalizedLabel
        DefaultLabel="Recommendation for my event class"
        NLSID="MY_EVENT_CLASS_NLSID"
        ResourceBundle="oracle.sysman.MyResourceBundle"/>
      </evt:Label>
    </evt:Recommendation>
  </evt:GuidedResolution>
</evt:GuidedResolutionDetails> 

evt:Labelタグの他のバリアントを使用して、より複雑な推奨を構築できます。たとえば、推奨としてalertActionなどのイベント属性の値を置換するには、例10-7を使用します。

例10-7 複雑な推奨の追加

<evt:GuidedResolutionDetails>
  <evt:GuidedResolution>

    <evt:Recommendation ID="reco_unique_id">
      <evt:Label>
        <evt:AttributeValue Name="alertAction" />
      </evt:Label>
    </evt:Recommendation>

  </evt:GuidedResolution>
</evt:GuidedResolutionDetails>

10.5.2 セクションのカスタマイズ

「ガイドされた解決」リージョンにセクションを追加することによって、テキスト情報を表示できます。たとえば、即時利用可能な構成標準に関するインシデントを優先するとき、その構成標準が追加された理由を説明する原理を確認することが役立つ場合があります。追加されたそれぞれの領域には、ヘッダーとテキスト・コンテンツがあります。

「ガイドされた解決」リージョンにセクションを追加するために、例10-8のように、カスタマイズXMLに仕様を追加できます。

例10-8 カスタマイズされた領域の追加

<evt:Sections>
  <evt:Add>
    <evt:Section ID = "section_eventclass_1">
    <evt:SectionHeader>
      <evt:Label>
        <evt:LocalizedLabel DefaultLabel="Section Hdr 1"
          NLSID="TRANSLATION_ID"ResourceBundle="oracle.sysman.MyResourceBundle"/>             
      </evt:Label>
    </evt:SectionHeader>
    <evt:SectionText>
      <evt:Label>
        <evt:LocalizedLabel DefaultLabel="Section for my event class"
          NLSID="MY_EVENT_CLASS_NLSID" ResourceBundle="oracle.sysman.MyResourceBundle"/>
      </evt:Label>
    </evt:SectionText>
    </evt:Section>
  </evt:Add>
</evt:Sections>

10.6 My Oracle Supportのナレッジの検索文字列の定義

カスタマイズ・フレームワークでは、次のプリファレンスの順序で、デフォルトの検索フレーズを提供します。

  1. プラグイン開発者からカスタマイズされた値

  2. イベント・サマリーで検出されたORAエラー

  3. イベント・サマリー

例10-9に示すように、XMLを使用して検索文字列を明示的に指定できます。この検索文字列は、プラグイン・コンポーネントの高いCPU使用率を示すメトリック・アラートを検索します。

例10-9 検索文字列の定義

<evt:GuidedResolutionDetails>
  <evt:GuidedResolution>
    <evt:SearchPhrase>High CPU Utilization </evt:SearchPhrase>
  </evt:GuidedResolution>
</evt:GuidedResolutionDetails>

10.7 カスタマイズの条件の定義

カスタマイズが適用されるイベントを選択するために、イベントの属性を使用して、条件を定義できます。イベント・ペイロード(たとえば、ターゲット名、ターゲット・タイプなどのシステム属性、またはメトリック・アラートのmetric_nameなどのイベント・クラス固有の属性、またはイベント・コンテキスト属性)からの属性を使用して条件を定義するには、XMLを使用します。

evt:ConditionDetailsタグの下で、条件を定義できます。ここで様々なイベント属性を指定でき、それらはAND条件を使用して暗黙的に結合されます。


注意:

evt:ConditionDetailsタグの下でのみ、1つの条件を定義できます。

例10-10 条件の定義

<evt:CustomUI AppliesTo ="EVENT" EventClass ="metric_alert" TargetType =host">
  <evt:ConditionDetails>
    <evt:Condition>
      <evt:Attrib Name="metric_name" Value="Load"/>
      <evt:Attrib Name="metricColumn" Value="cpuUtil"/>

    </evt:Condition>
  </evt:ConditionDetails>
...
</evt:CustomUI>

条件を定義するために、次の演算子がサポートされています。

  • EQ: 等しい。これがデフォルトの演算子です。

  • NE: 等しくない

  • ISNULL: NULLである

  • ISNOTNULL: NULLではない

  • CONTAINS: 文字列に含めることができる(部分文字列として)

  • BEGINSWITH: 次で始まる(たとえば、表領域で始まるイベント名)

  • IN: 事前定義済の値セット内(事前定義済のデリミタであるカンマ(,)で区切られた)

  • NOT_IN: 事前定義済の値セット内ではない。除外に使用します。

10.8 カスタマイズの登録

イベント固有のカスタマイズXMLファイルは、$PLUGIN_ORACLE_HOME/sysman/metadata/events/custmznディレクトリにあります。製品の出荷バージョンで、これらのXMLはプラグインのインストールの一部として登録されています。

すでに設定されているビューや変更をテストするためのビューで最初にXMLを作成する場合、メタデータ登録サービス(MRS)を使用して、イベント・クラスのXMLを登録します。MRSの詳細は、14.7項「メタデータ登録サービス(MRS)を使用してデプロイされたメタデータ・ファイルの更新」を参照してください。

emctl register oms metadata -service eventSpecificCustmzn -file XML filename -pluginId plugin_name -sysman_pwd sysman -debug

例:

emctl register oms metadata -service eventSpecificCustmzn -file metric_alert_host_load.xml -pluginId test.demo.xyz -sysman_pwd sysman -debug 

イベント固有のカスタマイズXMLを登録した後で、OMSホーム・ディレクトリ(OMS_HOME)からemctlコマンドを使用して、Oracle Management Service (OMS)を再起動する必要があります。

OMS_HOME>emctl stop oms
OMS_HOME>emctl start oms

イベント固有のカスタマイズXMLを登録する際に、次のエラーが発生することがあります。

10.9 カスタマイズ後のインシデント・マネージャのテスト

次のように、条件に一致するイベントを公開することで、インシデント・マネージャUIをテストし、それのために作成されたインシデントが存在することを確認します。

  1. インシデント・マネージャにアクセスするには、「エンタープライズ」メニューから、「監視」「インシデント・マネージャ」の順に選択します。

    「インシデント・マネージャ: オープンなインシデントと問題」ページが表示されます。

  2. 「ビュー」から、次のいずれかを選択します。

    • インシデントを検出する場合は、「すべてのオープン・インシデント」

    • インシデントを作成していない場合は、「インシデントのないイベント」