2

編集:ミュール3.3.1

フローが外部サービスの待機に費やした時間と、呼び出しに関する追加情報をログに記録したいと考えています。現在、私はグローバルに宣言するカスタム コンポーネントでそれを行っています。

<spring:beans>
    <spring:bean id="idAuth" class="com.ca.eai.esb.component.OutboundLogger">
        <spring:property name="calloutName" value="Authorization"/>
    </spring:bean>
</spring:beans>

次に、コールアウトの前後に呼び出します。

<component>
    <spring-object bean="idAuth"/>
</component>

<https:outbound-endpoint..../>

<component>
    <spring-object bean="idAuth"/>
</component>

時間を追跡し、その他の事実を記録します。

私の質問は、より良い方法があるかどうかです。AbstractEnvelopeInterceptor を実装し、フローの先頭で宣言することで、フローに関する前後の情報をログに記録する方法を考えています。実装してエンドポイントにバインドし、要求時にメソッドを呼び出し、応答時に別のメソッドを呼び出すことができる類似のものはありますか?

4

2 に答える 2

1

MMC を使用して展開していた場合。Message processor を使用できますCustom Business Events。そのためには、フローでの追跡も有効にする必要があります。そのため、MMC ではBuiness Events、フロー、すべてのメッセージ プロセッサProcessing Time、日付、その他すべての関連情報に関する詳細を確認できます。3.2バージョンであることを知っていました。古いバージョンについては不明です。あなたはそれを確認することができます。フローでのイベントの有効化: http://www.mulesoft.org/documentation/display/current/Business+Events MMC でのクエリ: http://www.mulesoft.org/documentation/display/current/Tracking+and+Querying+ビジネス+イベント

于 2013-10-24T12:28:50.997 に答える
0

ヒットしようとしているのは SOAP Web サービスであると想定しています。

Soap コンポーネント エンドポイントでイン インターセプターとアウト インターセプターの組み合わせを使用して、タイミングをログに記録できます。

1) イン インターセプターを作成し、時間を含むプロパティ変数 (たとえば、inTime) を追加します

3)結果の時間またはタイミングを使用するための方法をコンソールに記録または表示します。

これは私が提案するアプローチです。

Web サービスでない場合 (むしろ、http エンドポイントにのみ必要です)

1) 呼び出しの時間を格納する HTTP エンドポイントに、メッセージ プロパティとして、要求用のグローバル トランスフォーマーを追加します。
2) 応答の時間を格納する HTTP エンドポイントに、メッセージ プロパティとして、応答用の別のグローバル トランスフォーマーを追加し
ます。 Groovy 式のロガー) を使用して、2 つの時間の差を見つけて表示します。

于 2013-10-24T06:21:37.400 に答える