createEvent
リクエスト・テンプレートを作成する方法を示す例が含まれています。
次のリストは、テンプレートを作成するためのステップです。
完成したテンプレートの例は、「完成したテンプレートの例」を参照してください。
最初のステップでは、外部アプリケーションのWebサービスを調査して、使用可能なフィールドおよびそれらのフィールドにデータがどのように表示されるかを確認します。
WebサービスWSDLの調査では、作成リクエストのルート要素はcreateRequest
で、ネームスペースはhttp://samplecompany.com
であることを示しています。WSDLは、作成には4つの必須フィールドがあることも示しています。これらのフィールドは、summary、description、severityおよびpriorityです。severityフィールドには、1から5の数値を指定する必要があります。1が最高で、5が最低です。priorityフィールドはHigh、MediumまたはLowに設定する必要があります。作成リクエストでは、必須フィールドにのみ値を入力することを決定しました。
イベントの作成に必要なデータを理解した後は、Enterprise Managerで使用可能なデータとそのデータが格納されている場所を把握する必要があります。データの調査では、必要なデータはすべてSystemAttributes
要素に配置されていることが示されました。サマリー情報を保持するSummary
要素があり、使用可能なSeverityCode
フィールドもあります。SystemAttributes
要素には、イベントの説明に表示できるターゲット情報も含まれています。
次のリストは、createEvent
テンプレートに対して識別されたマッピングです。
サマリーはSystemAttributes
/Summary
フィールドの内容に設定されます。
説明はSystemAttributes
/Summary
フィールドとそれに続くターゲット情報の内容に設定されます。ターゲット情報はSystemAttributes
/SourceInfo
/TargetInfo
要素に配置されます。含まれるターゲット・フィールドはTargetName
、TargetType
およびTargetURL
です。
重大度はSystemAttributes
/SeverityCode
フィールドの内容に基づいて設定されます。フィールドがFATALに設定されている場合、重大度は1に設定されます。フィールドがCRITICALに設定されている場合、重大度は2に設定されます。フィールドがWARNINGに設定されている場合、重大度は3に設定されます。他のすべての値については、重大度が5に設定されます。
優先度はSystemAttributes
/SeverityCode
フィールドの内容に基づいて設定されます。フィールドがFATALまたはCRITICALに設定されている場合、優先度はHighに設定されます。フィールドがWARNINGに設定されている場合、優先度はMediumに設定されます。他のすべての値は、Lowに設定されます。
例2-4からテンプレート・スケルトンのコンテンツをエディタにコピーすることでプロセスを開始します。次に、「作成マッピング」に示されているように、作成リクエストのマッピングを作成します。マッピングが行われた後に、ファイルをcreateEvent_request.xsl
として保存し、「サンプル・イベント・データ」のサンプル・トランザクションを使用してテンプレートをテストし、正常に機能することを確認します。
「完成したテンプレートの例」は、スケルトン・テンプレートにマッピングが追加された後のテンプレートを示しています。この項には、サンプル・イベント・トランザクションを使用したテストの結果も含まれています。
次に、作成リクエストのマッピングを示します。一度に1つのフィールドに対して必要な変換ロジックを識別します。
最初のフィールドはSummaryフィールドです。次に、このフィールドをイベントのSummaryフィールドにマップするのに必要な変換ロジックを示します。
<Summary><xsl:value-of select="emcf:SystemAttributes/emcf:Summary"/></Summary>
次にマップするフィールドはDescriptionフィールドです。このフィールドは、サマリーとそれに続くターゲット情報で構成されます。次に、Descriptionフィールドのマッピングを示します。
<Description>Event created in Enterprise Manager: <xsl:value-of select="emcf:SystemAttributes/emcf:Message"/> Target information: Target Type: <xsl:value-of select="emcf:SystemAttributes/emcf:SourceInfo/emcf:TargetInfo/emcf:TargetType"/> Target Name: <xsl:value-of select="emcf:SystemAttributes/emcf:SourceInfo/emcf:TargetInfo/emcf:TargetName"/> Target URL: <xsl:value-of select="emcf:SystemAttributes/emcf:SourceInfo/emcf:TargetInfo/emcf:TargetURL"/> </Description>
次にマップするフィールドはSeverityフィールドです。次に、Severityフィールドのマッピングを示します。
<xsl:choose> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'FATAL'"><Severity>1</Severity></xsl:when> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'CRITICAL'"><Severity>2</Severity></xsl:when> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'WARNING'"><Severity>3</Severity></xsl:when> <xsl:otherwise><Severity>5</Severity></xsl:otherwise> </xsl:choose>
最後にマップするフィールドはPriorityフィールドです。
<xsl:choose> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'FATAL'"><Priority>High</Priority></xsl:when> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'CRITICAL'"><Priority>High</Priority></xsl:when> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'WARNING'"><Priority>Medium</Priority></xsl:when> <xsl:otherwise><Priority>Low</Priority></xsl:otherwise> </xsl:choose>
例E-1は、この項で前述したマッピングを使用して完成したテンプレートを示しています。テンプレートのファイル名はcreateEvent_request.xsl
です。
例E-1 完成したイベント・テンプレートのサンプル
<?xml version='1.0' encoding='UTF-8'?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:emcf="http://xmlns.oracle.com/sysman/connector"> <xsl:template match="emcf:EMEvent"> <createRequest xmlns="http://samplecompany.com"> <!-- Set the summary to the EM event message --> <Summary><xsl:value-of select="emcf:SystemAttributes/emcf:Message"/></Summary> <!-- Set the description to the EM event message followed by the target information --> <Description>Event created in Enterprise Manager: <xsl:value-of select="emcf:SystemAttributes/emcf:Summary"/> Target information: Target Type: <xsl:value-of select="emcf:SystemAttributes/emcf:SourceInfo/emcf:TargetInfo/emcf:TargetType"/> Target Name: <xsl:value-of select="emcf:SystemAttributes/emcf:SourceInfo/emcf:TargetInfo/emcf:TargetName"/> Target URL: <xsl:value-of select="emcf:SystemAttributes/emcf:SourceInfo/emcf:TargetInfo/emcf:TargetURL"/></Description> <!-- Set the severity based on the EM event severity code --> <xsl:choose> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'FATAL'"><Severity>1</Severity></xsl:when> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'CRITICAL'"><Severity>2</Severity></xsl:when> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'WARNING'"><Severity>3</Severity></xsl:when> <xsl:otherwise><Severity>5</Severity></xsl:otherwise> </xsl:choose> <!-- Set the priority based on the EM event severity code --> <xsl:choose> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'FATAL'"><Priority>High</Priority></xsl:when> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'CRITICAL'"><Priority>High</Priority></xsl:when> <xsl:when test="emcf:SystemAttributes/emcf:SeverityCode = 'WARNING'"><Priority>Medium</Priority></xsl:when> <xsl:otherwise><Priority>Low</Priority></xsl:otherwise> </xsl:choose> </createRequest> </xsl:template> </xsl:stylesheet>
例E-2は、「サンプル・イベント・データ」の「サンプル作成トランザクション」データを入力として使用したテンプレートからの出力を示しています。
例E-2 イベント・テンプレート出力のサンプル
<?xml version="1.0" encoding="UTF-8"?> <createRequest xmlns="http://samplecompany.com" xmlns:emcf="http://xmlns.oracle.com/sysman/connector"> <Summary>Memory Utilization is 69.913%, crossed warning (40) or critical (99) threshold.</Summary> <Description>Event created in Enterprise Manager: Memory Utilization is 69.913%, crossed warning (40) or critical (99) threshold. Target information: Target Type: host Target Name: target.mycompany.com Target URL: https://target.mycompany.com:5416/em/redirect?pageType=TARGET_HOMEPAGE&targetName=target.mycompany.com&targetType=host</Description> <Severity>3</Severity> <Priority>Medium</Priority> </createRequest>