0
私はDWでサーバとモールのバージョン情報にアクセスしようとしていますが、私は以下のメッセージを受け取ります。Data weaveのサーバとラバのコンテキストオブジェクトにアクセスする
DWLは以下のようになります。私が下に間違いをしている場合は、私に知らせてください。私はそれにアクセスするために両方の構文を試しました。
%dw 1.0
%output application/json
---
{
errorType : payload.errorType,
env: server['host'],
host: server['host'],
ip: server['ip'],
javaVersion: server['javaVersion'],
javaVendor: server['javaVendor'],
osName: server['osName'],
osVersion: server['osVersion'],
muleVersion: mule.version,
clusterId: mule.clusterId,
nodeId: mule.nodeId
}
Message : Exception while executing:
env: server['host'],
^
There is no variable named 'server'.
Payload : {correlationId=046b6c7f-0b8a-43b9-b35d-6489e6daee91, message=This is the test message to test structured log, errorType=ERROR, applicationName=common wrappers - logging wrapper}
Payload Type : java.util.HashMap
Element : /wrapper-logger/processors/1 @ common-wrappers:wrapper-logger.xml:16 (Transform Message)
Element XML : <dw:transform-message doc:name="Transform Message" metadata:id="38c29630-7d7c-48fc-a692-2407d0105cab">
<dw:input-payload doc:sample="sample_data\list_HashMap.dwl"></dw:input-payload>
<dw:set-payload>%dw 1.0%output application/json---{errorType : payload.errorType,env: server['host'],host: server['host'],ip: server['ip'],javaVersion: server['javaVersion'],javaVendor: server['javaVendor'],osName: server['osName'],osVersion: server['osVersion'],muleVersion: mule.version,clusterId: mule.clusterId,nodeId: mule.nodeId,applicationName : payload.applicationName,correlationId: payload.correlationId,correlationSequence: "To be decided",correlationGroupSize: 5,timeZone: server.timeZone,timeStamp: server.dateTime,muleFlow: "get-user-record",stackTrace: "A complete Stack Trace",message: payload.message}</dw:set-payload>
</dw:transform-message>
--------------------------------------------------------------------------------
Root Exception stack trace:
com.mulesoft.weave.mule.exception.WeaveExecutionException: Exception while executing:
env: server['host'],
^
There is no variable named 'server'.
at com.mulesoft.weave.mule.exception.WeaveExecutionException$.apply(WeaveExecutionException.scala:10)
から呼び出す
はあなたにアブヘイをありがとうございます。これはロギングコンポーネントで使用されるため、頻繁に使用されます。ロギングコンポーネントのフローが開始されているときにこれを一度だけインスタンス化できますか?ロギングコンポーネントはVMキューからデータを読み取り、各メッセージを処理し、VMキューからメタデータとともにログに記録します。それはたくさんのメッセージを処理するでしょうから、どうすればそれを効果的にすることができますか?これらのクラスを直接DWヘッダにインポートして使用しますか?ありがとうございました。 –
Javaクラスをデータ・ウィーブにインポートする方法はないと思っています。あなたはインスタンス化することによって意味ですか? – Abhay