SlideShare a Scribd company logo
MuleSoft Meetup Milano – Giacomo Bartoloni, Senior Architect
Come esternalizzare i log di Mule
Agenda
1. Log management
2. Quando esternalizzare i log
3. Correlation ID
4. Come fare su RTF
5. Come fare su CloudHub
6. Summary
Log management
SAP
Dati e processi altamente frammentati
Your customer
Your company
4
In media, una richiesta dell’utente attraversa 35 sistemi differenti
Approccio tradizionale?
SAP
Your customer
Your company
Application network
6
Your customer
Your company
Troubleshooting
7
Log management
8
Quando esternalizzare i log?
Quando esternalizzare i log – Caso 1
Ecosistema a microservizi già in essere con un repository di raccolta
dei log centralizzato (Splunk, greylog, ELK, Loggly)
Quando esternalizzare i log – Caso 2
Adozione incrementale di MuleSoft
Scenari interessati
• Cloudhub, MuleSoft hosted
• Runtime Fabric, customer hosted
Correlation ID
Correlation ID - cos’è
Un Correlation ID può essere definito come un "valore identificativo allegato ai messaggi e alle
header di richiesta che consente di fare riferimento a una particolare transazione o evento"
Correlation ID - come funziona in Mule
● Fa parte del Event Context e viene generato non appena il messaggio viene ricevuto
dall'applicazione
● Non può essere modificato all'interno di un flusso
● Può essere impostato solo all'origine
● Richiesta HTTP entrante:
○ Se è presente la header "X-Correlation-Id", il connettore HTTP la utilizza come ID di correlazione
○ Se la header "X-Correlation-Id" NON è presente, viene generato in modo casuale un ID di
correlazione.
● Richiesta HTTP uscente:
○ Di default si invia la header "X-Correlation-Id"
○ E’ possibile inviare un valore diverso nella header "X-Correlation-Id" o impostare "Send Correlation
Id" su NEVER.
https://help.mulesoft.com/s/article/How-to-Set-Custom-Correlation-Id-for-Flows-with-HTTP-Endpoint-in-Mule-4
Runtime Fabric
Runtime Fabric - Appliance
Runtime Fabric - Appliance
CloudHub
Requisiti
Far apparire l’opzione “Disable Cloudhub logs” sul Runtime Manager
Questa opzione viene abilitata per la Business Organization principale e
permette di disabilitare la gestione standard di Mule per i log,
applicazione per applicazione.
https://docs.mulesoft.com/runtime-manager/custom-log-appender
Requisiti
“MuleSoft is not responsible for issues arising from misconfiguration of your
Log4j appender, including these or other issues:
● Lost logging data
● Performance degradation
● Running out of disk space”
Cosa fare
Modifica del log4j.xml con Log4J2CloudhubLogAppender
<Log4J2CloudhubLogAppender name="CLOUDHUB"
addressProvider="com.mulesoft.ch.logging.DefaultAggregatorAddressProvider"
applicationContext="com.mulesoft.ch.logging.DefaultApplicationContext"
appendRetryIntervalMs="${sys:logging.appendRetryInterval}"
appendMaxAttempts="${sys:logging.appendMaxAttempts}"
batchSendIntervalMs="${sys:logging.batchSendInterval}"
batchMaxRecords="${sys:logging.batchMaxRecords}"
memBufferMaxSize="${sys:logging.memBufferMaxSize}"
journalMaxWriteBatchSize="${sys:logging.journalMaxBatchSize}"
journalMaxFileSize="${sys:logging.journalMaxFileSize}"
clientMaxPacketSize="${sys:logging.clientMaxPacketSize}"
clientConnectTimeoutMs="${sys:logging.clientConnectTimeout}"
clientSocketTimeoutMs="${sys:logging.clientSocketTimeout}"
serverAddressPollIntervalMs="${sys:logging.serverAddressPollInterval}"
serverHeartbeatSendIntervalMs="${sys:logging.serverHeartbeatSendIntervalMs}"
statisticsPrintIntervalMs="${sys:logging.statisticsPrintIntervalMs}">
<PatternLayout pattern="[%d{MM-dd HH:mm:ss}] %-5p %c{1} [%t]: %m%n"/>
</Log4J2CloudhubLogAppender>
Cosa fare
Modifica del log4j.xml con appender per inoltro a repository esterno
<Http name="Http" url="${sys:elk.url}" ignoreExceptions="false">
<Property name="Content-Type" value="application/json" />
<JsonLayout properties="true" complete="false" compact="true" eventEol="true" includeTimeMillis="true">
<KeyValuePair key="@timestamp" value="$${date:yyyy-MM-dd'T'HH:mm:ss.SSSZ}" />
<KeyValuePair key="application" value="sys-fcg-crm" />
</JsonLayout>
</Http>
Invio a repository:
● richiesta diretta (http)
● attraverso message broker (ActiveMQ, Kafka, Redis, SQS, RabbitMQ)
Risultato
Risultato
Risultato
Risultato
Risultato
Estensioni
• Json logger
https://github.com/mulesoft-consulting/json-logger
• Metrics Accelerator
https://github.com/mulesoft-catalyst/metrics-accelerator
Contattaci all’indirizzo meetup@florence-
consulting.it
Hai ancora domande e vuoi
approfondire in separata sede?
Invia il tuo feedback
Finito l’evento riceverai una e-mail per inviare il
tuo feedback: facci sapere con precisione quali
sono i topic che ti piacerebbe approfondire
insieme!
We Are
Hiring!
GRAZIE!
We Are
Hiring!

More Related Content

Similar to Meetup milano #4 Come esternalizzare i log di mule

Presentazione Unibo
Presentazione UniboPresentazione Unibo
Presentazione Unibo
Balint Maschio
 
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...
azuredayit
 
Implementazione di una soluzione a microservizi: benifici organizzativi ed ec...
Implementazione di una soluzione a microservizi: benifici organizzativi ed ec...Implementazione di una soluzione a microservizi: benifici organizzativi ed ec...
Implementazione di una soluzione a microservizi: benifici organizzativi ed ec...
italianaSoftware
 
MySQL Day Milano 2017 - Dalla replica a InnoDB Cluster: l’HA secondo MySQL
MySQL Day Milano 2017 - Dalla replica a InnoDB Cluster: l’HA secondo MySQLMySQL Day Milano 2017 - Dalla replica a InnoDB Cluster: l’HA secondo MySQL
MySQL Day Milano 2017 - Dalla replica a InnoDB Cluster: l’HA secondo MySQL
Par-Tec S.p.A.
 
Azure functions
Azure functionsAzure functions
Azure functions
Andrea Tosato
 
Slide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdfSlide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdf
Florence Consulting
 
Silverlight in Action
Silverlight in ActionSilverlight in Action
Silverlight in Action
DotNetMarche
 
La piattaforma josh - Scenario strategico della piattaforma software di it Co...
La piattaforma josh - Scenario strategico della piattaforma software di it Co...La piattaforma josh - Scenario strategico della piattaforma software di it Co...
La piattaforma josh - Scenario strategico della piattaforma software di it Co...
it Consult
 
Technical manual (1)
Technical manual (1)Technical manual (1)
Technical manual (1)cpro2011
 
Win05 accesso ai dati in win 8
Win05   accesso ai dati in win 8Win05   accesso ai dati in win 8
Win05 accesso ai dati in win 8DotNetCampus
 
MySQL Tech Tour 2015 - Soluzioni di alta disponibilità con MySQL
MySQL Tech Tour 2015 - Soluzioni di alta disponibilità con MySQLMySQL Tech Tour 2015 - Soluzioni di alta disponibilità con MySQL
MySQL Tech Tour 2015 - Soluzioni di alta disponibilità con MySQL
Par-Tec S.p.A.
 
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...Emanuele Della Valle
 
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
Come sfruttare tutte le potenzialità di Symfony in Drupal 8Come sfruttare tutte le potenzialità di Symfony in Drupal 8
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
Eugenio Minardi
 
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
Come sfruttare tutte le potenzialità di Symfony in Drupal 8Come sfruttare tutte le potenzialità di Symfony in Drupal 8
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
Wellnet srl
 
Azure Logic Apps
Azure Logic AppsAzure Logic Apps
Azure Logic Apps
Marco Parenzan
 
API Transformation in Crédit Agricole Italia
API Transformation in Crédit Agricole ItaliaAPI Transformation in Crédit Agricole Italia
API Transformation in Crédit Agricole Italia
Profesia Srl, Lynx Group
 
Quickr8 Evoluzione Di Quick Place
Quickr8 Evoluzione Di Quick PlaceQuickr8 Evoluzione Di Quick Place
Quickr8 Evoluzione Di Quick Place
Dominopoint - Italian Lotus User Group
 
Visual Studio Performance Tools
Visual Studio Performance ToolsVisual Studio Performance Tools
Visual Studio Performance Tools
Andrea Tosato
 
HTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesignerHTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesigner
Matteo Magni
 
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Codemotion
 

Similar to Meetup milano #4 Come esternalizzare i log di mule (20)

Presentazione Unibo
Presentazione UniboPresentazione Unibo
Presentazione Unibo
 
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...
 
Implementazione di una soluzione a microservizi: benifici organizzativi ed ec...
Implementazione di una soluzione a microservizi: benifici organizzativi ed ec...Implementazione di una soluzione a microservizi: benifici organizzativi ed ec...
Implementazione di una soluzione a microservizi: benifici organizzativi ed ec...
 
MySQL Day Milano 2017 - Dalla replica a InnoDB Cluster: l’HA secondo MySQL
MySQL Day Milano 2017 - Dalla replica a InnoDB Cluster: l’HA secondo MySQLMySQL Day Milano 2017 - Dalla replica a InnoDB Cluster: l’HA secondo MySQL
MySQL Day Milano 2017 - Dalla replica a InnoDB Cluster: l’HA secondo MySQL
 
Azure functions
Azure functionsAzure functions
Azure functions
 
Slide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdfSlide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdf
 
Silverlight in Action
Silverlight in ActionSilverlight in Action
Silverlight in Action
 
La piattaforma josh - Scenario strategico della piattaforma software di it Co...
La piattaforma josh - Scenario strategico della piattaforma software di it Co...La piattaforma josh - Scenario strategico della piattaforma software di it Co...
La piattaforma josh - Scenario strategico della piattaforma software di it Co...
 
Technical manual (1)
Technical manual (1)Technical manual (1)
Technical manual (1)
 
Win05 accesso ai dati in win 8
Win05   accesso ai dati in win 8Win05   accesso ai dati in win 8
Win05 accesso ai dati in win 8
 
MySQL Tech Tour 2015 - Soluzioni di alta disponibilità con MySQL
MySQL Tech Tour 2015 - Soluzioni di alta disponibilità con MySQLMySQL Tech Tour 2015 - Soluzioni di alta disponibilità con MySQL
MySQL Tech Tour 2015 - Soluzioni di alta disponibilità con MySQL
 
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio d...
Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio d...
 
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
Come sfruttare tutte le potenzialità di Symfony in Drupal 8Come sfruttare tutte le potenzialità di Symfony in Drupal 8
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
 
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
Come sfruttare tutte le potenzialità di Symfony in Drupal 8Come sfruttare tutte le potenzialità di Symfony in Drupal 8
Come sfruttare tutte le potenzialità di Symfony in Drupal 8
 
Azure Logic Apps
Azure Logic AppsAzure Logic Apps
Azure Logic Apps
 
API Transformation in Crédit Agricole Italia
API Transformation in Crédit Agricole ItaliaAPI Transformation in Crédit Agricole Italia
API Transformation in Crédit Agricole Italia
 
Quickr8 Evoluzione Di Quick Place
Quickr8 Evoluzione Di Quick PlaceQuickr8 Evoluzione Di Quick Place
Quickr8 Evoluzione Di Quick Place
 
Visual Studio Performance Tools
Visual Studio Performance ToolsVisual Studio Performance Tools
Visual Studio Performance Tools
 
HTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesignerHTML5 e Css3 - 1 | WebMaster & WebDesigner
HTML5 e Css3 - 1 | WebMaster & WebDesigner
 
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
 

More from Gonzalo Marcos Ansoain

Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CDMulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
Gonzalo Marcos Ansoain
 
Milano Meetup #8 - Testing & Salesforce Integration
Milano Meetup #8 - Testing & Salesforce IntegrationMilano Meetup #8 - Testing & Salesforce Integration
Milano Meetup #8 - Testing & Salesforce Integration
Gonzalo Marcos Ansoain
 
Milano Meetup #6 - Training & Certification and Internal Support Models
Milano Meetup #6 - Training & Certification and Internal Support ModelsMilano Meetup #6 - Training & Certification and Internal Support Models
Milano Meetup #6 - Training & Certification and Internal Support Models
Gonzalo Marcos Ansoain
 
Meetup milano #4 log management and anypoint advanced monitoring
Meetup milano #4   log management and anypoint advanced monitoringMeetup milano #4   log management and anypoint advanced monitoring
Meetup milano #4 log management and anypoint advanced monitoring
Gonzalo Marcos Ansoain
 
Meetup milano #4 Anypoint Monitoring and Titanium overview
Meetup milano #4   Anypoint Monitoring and Titanium overviewMeetup milano #4   Anypoint Monitoring and Titanium overview
Meetup milano #4 Anypoint Monitoring and Titanium overview
Gonzalo Marcos Ansoain
 
Meetup milano #3 all you need to know before creating your vpc
Meetup milano #3   all you need to know before creating your vpcMeetup milano #3   all you need to know before creating your vpc
Meetup milano #3 all you need to know before creating your vpc
Gonzalo Marcos Ansoain
 
Nintex 3.0 Introduction
Nintex 3.0 IntroductionNintex 3.0 Introduction
Nintex 3.0 Introduction
Gonzalo Marcos Ansoain
 
Innovation Talks @ Konica Minolta Portugal
Innovation Talks @ Konica Minolta PortugalInnovation Talks @ Konica Minolta Portugal
Innovation Talks @ Konica Minolta Portugal
Gonzalo Marcos Ansoain
 
SharePoint Saturday @ Firenze - Building Effective Business Collaboration Pla...
SharePoint Saturday @ Firenze - Building Effective Business Collaboration Pla...SharePoint Saturday @ Firenze - Building Effective Business Collaboration Pla...
SharePoint Saturday @ Firenze - Building Effective Business Collaboration Pla...
Gonzalo Marcos Ansoain
 
Creando Plataformas de Colaboracion Efectivas
Creando Plataformas de Colaboracion EfectivasCreando Plataformas de Colaboracion Efectivas
Creando Plataformas de Colaboracion Efectivas
Gonzalo Marcos Ansoain
 
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos HibridosNovedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Gonzalo Marcos Ansoain
 
Come creare Piattaforme di Collaborazione Efficienti
Come creare Piattaforme di Collaborazione EfficientiCome creare Piattaforme di Collaborazione Efficienti
Come creare Piattaforme di Collaborazione Efficienti
Gonzalo Marcos Ansoain
 
Building effective business collaboration platforms
Building effective business collaboration platformsBuilding effective business collaboration platforms
Building effective business collaboration platforms
Gonzalo Marcos Ansoain
 
Five ways to smash barriers to SharePoint adoption
Five ways to smash barriers to SharePoint adoptionFive ways to smash barriers to SharePoint adoption
Five ways to smash barriers to SharePoint adoption
Gonzalo Marcos Ansoain
 

More from Gonzalo Marcos Ansoain (14)

Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CDMulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
 
Milano Meetup #8 - Testing & Salesforce Integration
Milano Meetup #8 - Testing & Salesforce IntegrationMilano Meetup #8 - Testing & Salesforce Integration
Milano Meetup #8 - Testing & Salesforce Integration
 
Milano Meetup #6 - Training & Certification and Internal Support Models
Milano Meetup #6 - Training & Certification and Internal Support ModelsMilano Meetup #6 - Training & Certification and Internal Support Models
Milano Meetup #6 - Training & Certification and Internal Support Models
 
Meetup milano #4 log management and anypoint advanced monitoring
Meetup milano #4   log management and anypoint advanced monitoringMeetup milano #4   log management and anypoint advanced monitoring
Meetup milano #4 log management and anypoint advanced monitoring
 
Meetup milano #4 Anypoint Monitoring and Titanium overview
Meetup milano #4   Anypoint Monitoring and Titanium overviewMeetup milano #4   Anypoint Monitoring and Titanium overview
Meetup milano #4 Anypoint Monitoring and Titanium overview
 
Meetup milano #3 all you need to know before creating your vpc
Meetup milano #3   all you need to know before creating your vpcMeetup milano #3   all you need to know before creating your vpc
Meetup milano #3 all you need to know before creating your vpc
 
Nintex 3.0 Introduction
Nintex 3.0 IntroductionNintex 3.0 Introduction
Nintex 3.0 Introduction
 
Innovation Talks @ Konica Minolta Portugal
Innovation Talks @ Konica Minolta PortugalInnovation Talks @ Konica Minolta Portugal
Innovation Talks @ Konica Minolta Portugal
 
SharePoint Saturday @ Firenze - Building Effective Business Collaboration Pla...
SharePoint Saturday @ Firenze - Building Effective Business Collaboration Pla...SharePoint Saturday @ Firenze - Building Effective Business Collaboration Pla...
SharePoint Saturday @ Firenze - Building Effective Business Collaboration Pla...
 
Creando Plataformas de Colaboracion Efectivas
Creando Plataformas de Colaboracion EfectivasCreando Plataformas de Colaboracion Efectivas
Creando Plataformas de Colaboracion Efectivas
 
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos HibridosNovedades SharePoint 2016. Nuevos retos en Entonos Hibridos
Novedades SharePoint 2016. Nuevos retos en Entonos Hibridos
 
Come creare Piattaforme di Collaborazione Efficienti
Come creare Piattaforme di Collaborazione EfficientiCome creare Piattaforme di Collaborazione Efficienti
Come creare Piattaforme di Collaborazione Efficienti
 
Building effective business collaboration platforms
Building effective business collaboration platformsBuilding effective business collaboration platforms
Building effective business collaboration platforms
 
Five ways to smash barriers to SharePoint adoption
Five ways to smash barriers to SharePoint adoptionFive ways to smash barriers to SharePoint adoption
Five ways to smash barriers to SharePoint adoption
 

Meetup milano #4 Come esternalizzare i log di mule

  • 1. MuleSoft Meetup Milano – Giacomo Bartoloni, Senior Architect Come esternalizzare i log di Mule
  • 2. Agenda 1. Log management 2. Quando esternalizzare i log 3. Correlation ID 4. Come fare su RTF 5. Come fare su CloudHub 6. Summary
  • 4. SAP Dati e processi altamente frammentati Your customer Your company 4 In media, una richiesta dell’utente attraversa 35 sistemi differenti
  • 10. Quando esternalizzare i log – Caso 1 Ecosistema a microservizi già in essere con un repository di raccolta dei log centralizzato (Splunk, greylog, ELK, Loggly)
  • 11. Quando esternalizzare i log – Caso 2 Adozione incrementale di MuleSoft
  • 12. Scenari interessati • Cloudhub, MuleSoft hosted • Runtime Fabric, customer hosted
  • 14. Correlation ID - cos’è Un Correlation ID può essere definito come un "valore identificativo allegato ai messaggi e alle header di richiesta che consente di fare riferimento a una particolare transazione o evento"
  • 15. Correlation ID - come funziona in Mule ● Fa parte del Event Context e viene generato non appena il messaggio viene ricevuto dall'applicazione ● Non può essere modificato all'interno di un flusso ● Può essere impostato solo all'origine ● Richiesta HTTP entrante: ○ Se è presente la header "X-Correlation-Id", il connettore HTTP la utilizza come ID di correlazione ○ Se la header "X-Correlation-Id" NON è presente, viene generato in modo casuale un ID di correlazione. ● Richiesta HTTP uscente: ○ Di default si invia la header "X-Correlation-Id" ○ E’ possibile inviare un valore diverso nella header "X-Correlation-Id" o impostare "Send Correlation Id" su NEVER. https://help.mulesoft.com/s/article/How-to-Set-Custom-Correlation-Id-for-Flows-with-HTTP-Endpoint-in-Mule-4
  • 17. Runtime Fabric - Appliance
  • 18. Runtime Fabric - Appliance
  • 20. Requisiti Far apparire l’opzione “Disable Cloudhub logs” sul Runtime Manager Questa opzione viene abilitata per la Business Organization principale e permette di disabilitare la gestione standard di Mule per i log, applicazione per applicazione. https://docs.mulesoft.com/runtime-manager/custom-log-appender
  • 21. Requisiti “MuleSoft is not responsible for issues arising from misconfiguration of your Log4j appender, including these or other issues: ● Lost logging data ● Performance degradation ● Running out of disk space”
  • 22. Cosa fare Modifica del log4j.xml con Log4J2CloudhubLogAppender <Log4J2CloudhubLogAppender name="CLOUDHUB" addressProvider="com.mulesoft.ch.logging.DefaultAggregatorAddressProvider" applicationContext="com.mulesoft.ch.logging.DefaultApplicationContext" appendRetryIntervalMs="${sys:logging.appendRetryInterval}" appendMaxAttempts="${sys:logging.appendMaxAttempts}" batchSendIntervalMs="${sys:logging.batchSendInterval}" batchMaxRecords="${sys:logging.batchMaxRecords}" memBufferMaxSize="${sys:logging.memBufferMaxSize}" journalMaxWriteBatchSize="${sys:logging.journalMaxBatchSize}" journalMaxFileSize="${sys:logging.journalMaxFileSize}" clientMaxPacketSize="${sys:logging.clientMaxPacketSize}" clientConnectTimeoutMs="${sys:logging.clientConnectTimeout}" clientSocketTimeoutMs="${sys:logging.clientSocketTimeout}" serverAddressPollIntervalMs="${sys:logging.serverAddressPollInterval}" serverHeartbeatSendIntervalMs="${sys:logging.serverHeartbeatSendIntervalMs}" statisticsPrintIntervalMs="${sys:logging.statisticsPrintIntervalMs}"> <PatternLayout pattern="[%d{MM-dd HH:mm:ss}] %-5p %c{1} [%t]: %m%n"/> </Log4J2CloudhubLogAppender>
  • 23. Cosa fare Modifica del log4j.xml con appender per inoltro a repository esterno <Http name="Http" url="${sys:elk.url}" ignoreExceptions="false"> <Property name="Content-Type" value="application/json" /> <JsonLayout properties="true" complete="false" compact="true" eventEol="true" includeTimeMillis="true"> <KeyValuePair key="@timestamp" value="$${date:yyyy-MM-dd'T'HH:mm:ss.SSSZ}" /> <KeyValuePair key="application" value="sys-fcg-crm" /> </JsonLayout> </Http> Invio a repository: ● richiesta diretta (http) ● attraverso message broker (ActiveMQ, Kafka, Redis, SQS, RabbitMQ)
  • 29. Estensioni • Json logger https://github.com/mulesoft-consulting/json-logger • Metrics Accelerator https://github.com/mulesoft-catalyst/metrics-accelerator
  • 30. Contattaci all’indirizzo meetup@florence- consulting.it Hai ancora domande e vuoi approfondire in separata sede? Invia il tuo feedback Finito l’evento riceverai una e-mail per inviare il tuo feedback: facci sapere con precisione quali sono i topic che ti piacerebbe approfondire insieme! We Are Hiring!