Configurer un appender JMS - Cloud

Guide d'utilisation de Talend Remote Engine pour Windows

Version
Cloud
Language
Français (France)
EnrichDitaval
windows
Product
Talend Cloud
Module
Talend Remote Engine
Content
Création et développement
Installation et mise à niveau

Vous pouvez envoyer des logs vers un système back-end ActiveMQ.

Talend Cloud supporte le protocole TCP ActiveMQ.

Procédure

  1. Ouvrez le fichier <RemoteEngineInstallationDirectory>/etc/org.ops4j.pax.logging.cfg et ajoutez les lignes suivantes :

    Exemple

    log4j2.appender.jms.type = Jms
    log4j2.appender.jms.name = JmsAppender
    log4j2.appender.jms.destinationBindingName= dynamicQueues/myQueueName1
    log4j2.appender.jms.factoryName=org.apache.activemq.jndi.ActiveMQInitialContextFactory
    log4j2.appender.jms.factoryBindingName=ConnectionFactory
    log4j2.appender.jms.providerURL=tcp://localhost:616162
    log4j2.appender.jms.userName=admin 
    log4j2.appender.jms.password=admin3
    log4j2.appender.jms.layout.type = JsonTemplateLayout
    log4j2.appender.jms.layout.eventTemplateUri=${karaf.base.uri}/etc/jsonLogMinTemplate.json
    log4j2.appender.jms.layout.stackTraceElementTemplateUri=${karaf.base.uri}/etc/StackTraceElementLayout.json
    
    log4j2.rootLogger.appenderRef.JmsAppender.ref = JmsAppender
  2. Sauvegardez le fichier.
  3. Ajoutez les informations MDC (Mapped Diagnostic Context) au fichier de modèle JSON pour que les logs de sortie contiennent les informations MDC, si applicable. Ces informations MDC comprennent l'ID d'exécution d'une tâche de Talend Cloud Management Console.
    1. Dans <RemoteEngineInstallationDirectory>/etc, créez un fichier et nommez-le jsonLogMinTemplateCustom.json.
    2. Ajoutez les lignes suivantes à ce nouveau fichier pour créer un resolver MDC :

      Exemple

      {
       "logMessage": \{"$resolver": "message", "stringified": true},
       "mdc": {
       "$resolver": "mdc"
       },
       "logTimestamp": \{"$resolver": "timestamp", "epoch": {"unit": "millis", "rounded": true}},
       "severity": \{"$resolver": "level", "field": "name"},
       "ticLogLevel": \{"$resolver": "source", "field": "ticLogLevel"},
       "bundle.name": \{"$resolver": "source", "field": "bundle.name"},
       "bundle.version": \{"$resolver": "source", "field": "bundle.version"}
      }
  4. Configurez votre système JMS pour qu'il utilise ce nouveau modèle jsonLogMinTemplateCustom.json au lieu de celui par défaut jsonLogMinTemplate.json.
1 Ceci est un exemple. destinationBindingName peut-être dynamicQueues/myQueueName ou dynamicTopics/myTopicName.
2 Ceci est un exemple. Vous devez définir votre hôte JMS et son port.
3 admin est un exemple pour les paramètres userName et password.