MuleSoft - JSON Logger upgrade to Java17
Вставка
- Опубліковано 29 кві 2024
- In this Integration Scenario, you will see how to upgrade popular MuleSoft Connector JSON logger to Java17
Credits:
github.com/mtransier/json-logger
Don't Forget to
===========================================
💯 Subscribe to my channel - bit.ly/3GK4sPi
💯 Join me on LinkedIn - bit.ly/3idnOSI
Tags: #mulesoft #java #upgrade
❤️ Thanks for watching - Наука та технологія
Kudos to Matthias 👏
Hi,
This config not working for external destination i.e. JMS based. Getting below error:
at org.mule.extension.jsonlogger.internal.destinations.JMSDestination.sendToExternalDestination(JMSDestination.java:85)
at org.mule.extension.jsonlogger.internal.destinations.events.LogEventHandler.flushLogs(LogEventHandler.java:47)
at org.mule.extension.jsonlogger.internal.destinations.events.LogEventHandler.flushAllLogs(LogEventHandler.java:59)
at org.mule.extension.jsonlogger.internal.destinations.events.LogEventHandler.onEvent(LogEventHandler.java:40)
at org.mule.extension.jsonlogger.internal.destinations.events.LogEventHandler.onEvent(LogEventHandler.java:14)
at com.lmax.disruptor.BatchEventProcessor.processEvents(BatchEventProcessor.java:168)
at com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:125)
at java.base/java.lang.Thread.run(Thread.java:840)
ERROR 2024-05-14 17:37:51,829 [Thread-12] [processor: ; event: ] org.mule.extension.jsonlogger.internal.destinations.JMSDestination: Error: Parameter does not exist in any group: messageBuilder
This is the code :
try {
@SuppressWarnings("deprecation")
OperationParameters parameters = DefaultOperationParameters.builder().configName(this.jmsConfigurationRef)
.addParameter("destination", this.queueDestination)
.addParameter("messageBuilder", JmsMessageBuilder.class, DefaultOperationParameters.builder()
.addParameter("body", new TypedValue(finalLog, JSON_STRING))
.addParameter("jmsxProperties", new JmsxProperties())
.addParameter("properties", new HashMap()))
.build();
extensionsClient.executeAsync("JMS", "publish", parameters);
} catch (Exception e) {
LOGGER.error("Error: " + e.getMessage());
e.printStackTrace();
}
Even OperationParameters class and extensionsClient.executeAsync method are showing deprecated.