Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

Konfigurieren eines JMS-Appenders

Sie möchten Logs ggf. an ein ActiveMQ-Backend-System senden.

Talend Cloud unterstützt das ActiveMQ TCP-Protokoll.

Prozedur

  1. Öffnen Sie die Datei <RemoteEngineInstallationDirectory>/etc/org.ops4j.pax.logging.cfg und fügen Sie folgende Zeilen hinzu:

    Example

    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. Speichern Sie die Datei.
  3. Fügen Sie die MDC-Informationen (Mapped Diagnostic Context) in der JSON-Vorlagendatei hinzu, sodass die Ausgabe-Logs, sofern zutreffend, die MDC-Informationen enthalten. Die MDC-Informationen enthalten die Ausführungs-ID einer Task von Talend Management Console.
    1. Erstellen Sie in <RemoteEngineInstallationDirectory>/etc eine Datei und geben Sie ihr den Namen jsonLogMinTemplateCustom.json.
    2. Fügen Sie in der neuen Datei folgende Zeilen hinzu, um einen MDC-Resolver zu erstellen:

      Example

      {
       "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. Konfigurieren Sie Ihr JMS-System für die Verwendung der neuen Vorlage jsonLogMinTemplateCustom.json anstelle der Standard-Vorlagendatei jsonLogMinTemplate.json.
1 Dies ist ein Beispiel. Der Name destinationBindingName könnte dynamicQueues/myQueueName oder dynamicTopics/myTopicName lauten.
2 Dies ist ein Beispiel. Sie müssen Ihren JMS-Host und den zugehörigen Port definieren.
3 admin ist nur ein Beispiel für userName und password.

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!