この章では、イベント詳細ページをカスタマイズして、イベントの詳細な診断情報を提供し、根本的な問題の迅速な解決を容易にする方法について説明します。インシデント・マネージャUIの詳細ページで、ユーザーは、イベントの詳細を表示できます。このようなページのコンテンツは、ユーザーが根本的な問題の基本的性質を理解する際に役立ち、問題を迅速に解決するための追加のコンテキスト詳細(テキスト、診断または解決のページへのリンクなど)を提供します。
1つのイベントのみを持つインシデントの場合、イベント詳細ページに適用されたカスタマイズは、自動的に「インシデントの詳細」ページに適用されます。
|
注意: インシデント管理の詳細は、『Oracle Enterprise Manager Cloud Control管理者ガイド』の「インシデント管理の使用」の章を参照してください。
|
この章の内容は次のとおりです。
プラグイン開発者は、インシデント・マネージャのカスタマイズにおいて、次の手順に従う必要があります。
インシデント・マネージャUIに必要なカスタマイズを決定します。きめの細かいアクセスのために、条件を使用します。詳細は、10.2項「サポートされたカスタマイズについて」を参照してください。
XSDに従って、カスタマイズXMLを構築します。詳細は、10.3項「イベント固有のカスタマイズXMLの作成」を参照してください。
カスタマイズを登録します。詳細は、10.8項「カスタマイズの登録」を参照してください。
条件に一致するイベントを公開することで、UIをテストします。詳細は、10.9項「カスタマイズ後のインシデント・マネージャのテスト」を参照してください。
図10-1に、「インシデント・マネージャ」ページから選択したインシデントの「一般」タブを示します。
このページでは。次のカスタマイズがサポートされます。
詳細は、10.4項「カスタマイズされたイベントの詳細の追加」を参照してください。
「ガイドされた解決」リージョン内の「アクション」リンクおよび「診断」リンクのカスタマイズ。
詳細は、10.5項「「ガイドされた解決」リージョン内のコンテンツの指定」を参照してください。
「ガイドされた解決」リージョンへの推奨の追加。
詳細は、10.5.1項「XMLを使用した推奨の追加」を参照してください。
My Oracle Supportのナレッジのデフォルトの検索フレーズの指定。
詳細は、10.6項「My Oracle Supportのナレッジの検索文字列の定義」を参照してください。
条件
これは、カスタマイズされたコンテンツを表示するイベントを識別するために使用される基準です。たとえば、データベース上のメトリック・アラートへの診断リンクを表示するシナリオを考えてみます。条件は、「イベント・クラスはmetric_alertで、ターゲット・タイプはoracle_database」になります。別の例として、メトリック・チャートを含むリージョンを表示します。この条件は、「イベント・クラスはmetric_alertで、metric_typeは数値」になります。
|
注意: 任意のターゲット・タイプ名がサポートされます。イベントの照合時に、条件のターゲット・タイプを、イベントのターゲット・タイプと一致させます。 |
アクション
アクションは、カスタマイズされたコンテンツを指定します。たとえば、診断リンクの指定(リンクの下に表示されるラベルおよびURL)などです。
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-1では、イベント固有のカスタマイズXMLを定義する重要な要素について説明します。
表10-1 イベント固有のカスタマイズXML内の重要な要素
| 要素 | 説明 |
|---|---|
|
|
これは、XMLのルート要素です。カスタマイズを定義します。 次の属性があります。
|
|
|
カスタマイズが適用される基準を指定します。 |
|
|
カスタマイズの条件を指定します。 注意: |
|
|
「インシデント・マネージャ」UIページの「詳細」リージョンをカスタマイズしていることを指定します。 詳細は、10.4項「カスタマイズされたイベントの詳細の追加」を参照してください。 |
|
|
「インシデント・マネージャ」UIページの「ガイドされた解決」リージョンをカスタマイズしていることを指定します。この要素を使用すると、アクション・リンク、診断リンクおよび推奨を追加できます。 詳細は、10.5.1項「XMLを使用した推奨の追加」を参照してください。 |
この項では、共通イベント属性と、最も一般的に使用されている2つのイベント・タイプの定義について説明します。
すべてのイベントには、次の共通属性があります。
表10-2 共通イベント属性
| 属性 | 説明 |
|---|---|
|
sys_event_class |
イベント・タイプ 使用可能な値は次のとおりです。
|
|
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 |
イベントの重大度 使用可能な値は次のとおりです。
|
|
sys_category |
イベント・カテゴリ。 使用可能な値は次のとおりです。
|
ターゲット可用性イベントは、ターゲットの可用性ステータスを表します。
例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>
特定のターゲットのメトリック(ホスト・ターゲットの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 |
メトリックがメトリック拡張かどうかを示すフラグ |
「インシデントの詳細」リージョンには、イベントに関する情報が表示されます。これは、システム属性(メッセージ、ターゲット名、イベントが報告されたタイミングなど)と、クラス属性で構成されます。クラス属性の名前と値のペアをカスタマイズできます。
イベント固有のカスタマイズ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のようになります。
|
注意: 「インシデントの詳細」リージョンをカスタマイズして、クラス固有の属性のみを含めることができます。 |
「ガイドされた解決」リージョンには、次のカスタマイズを行うことができます。
「修復」リンクおよび「診断」リンクのカスタマイズ(これらのリンクは追加または削除できます)
「ガイドされた解決」リージョンへの推奨の追加
My Oracle Supportのナレッジのデフォルトの検索フレーズの指定
「ガイドされた解決」リージョンへのテキストを含む領域の追加
「ガイドされた解決」リージョンでは、ユーザーによるデバッグおよび問題の解決に役立つように、関連する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のようになります。
「ガイドされた解決」リージョンの「アクション」リストによって、問題を診断または解決するためにユーザーが従う推奨ステップを説明するテキストが示されます。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-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>
カスタマイズ・フレームワークでは、次のプリファレンスの順序で、デフォルトの検索フレーズを提供します。
プラグイン開発者からカスタマイズされた値
イベント・サマリーで検出されたORAエラー
イベント・サマリー
例10-9に示すように、XMLを使用して検索文字列を明示的に指定できます。この検索文字列は、プラグイン・コンポーネントの高いCPU使用率を示すメトリック・アラートを検索します。
カスタマイズが適用されるイベントを選択するために、イベントの属性を使用して、条件を定義できます。イベント・ペイロード(たとえば、ターゲット名、ターゲット・タイプなどのシステム属性、またはメトリック・アラートの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: 事前定義済の値セット内ではない。除外に使用します。
イベント固有のカスタマイズXMLファイルは、$PLUGIN_ORACLE_HOME/sysman/metadata/events/custmznディレクトリにあります。製品の出荷バージョンで、これらのXMLはプラグインのインストールの一部として登録されています。
すでに設定されているビューや変更をテストするためのビューで最初にXMLを作成する場合、メタデータ登録サービス(MRS)を使用して、イベント・クラスのXMLを登録します。MRSの詳細は、14.7項「メタデータ登録サービス(MRS)を使用してデプロイされたメタデータ・ファイルの更新」を参照してください。
emctl register oms metadata -service eventSpecificCustmzn -fileXML filename-pluginIdplugin_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 omsOMS_HOME>emctl start oms
イベント固有のカスタマイズXMLを登録する際に、次のエラーが発生することがあります。
XMLの構文エラー
正しい構文およびXMLの例の詳細は、10.3項「イベント固有のカスタマイズXMLの作成」を参照してください。
不正な属性名の値
属性名の詳細は、10.3.2項「イベントについて」を参照してください。
不正な資格証明
資格証明が不正であると、管理リポジトリに接続できません。認可された資格証明を使用していることを確認してください。
次のように、条件に一致するイベントを公開することで、インシデント・マネージャUIをテストし、それのために作成されたインシデントが存在することを確認します。
インシデント・マネージャにアクセスするには、「エンタープライズ」メニューから、「監視」、「インシデント・マネージャ」の順に選択します。
「インシデント・マネージャ: オープンなインシデントと問題」ページが表示されます。
「ビュー」から、次のいずれかを選択します。
インシデントを検出する場合は、「すべてのオープン・インシデント」
インシデントを作成していない場合は、「インシデントのないイベント」