Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Introduction

JS7 allows - Log Managementis offered with JOC Cockpit offering acting as a central point of view for monitoring of log output created by JS7 products.

  • Service
    • The JS7 - Log Management Service is used to collect log output of JS7 products.
    • The service is compliant to RFC5424, aka Syslog Protocol.
    • The Log Management Service is available from JOC Cockpit within the scope of JS7 - Services.
    • The Log Management Service offers restart capabilities: in case of fail-over or switch-over of JOC Cockpit the Log Management Service will become available from the active JOC Cockpit instance.
  • Clients
    • The JS7 products, JOC Cockpit, Controller and Agents can act as clients to the Log Management Service. The products can be configured to report log output to the Log Management Service.
    • In addition, log output of JS7 products is always written to local log files.
    • Users have a choice to enable forwarding of log output per instance of a JS7 product during installation or later on by adjusting the Log4j2 configuration. Log4j configuration.

The configuration per JS7 product is explained from the following chapters.

Display feature availability
StartingFromRelease2.7.2

...

The following Log4j configuration example is available from the log4j2.xml-example file in the Controller's <controller-data>/config directory:.

  • Users can copy the log4j2.xml-example file to a file with the name log4j2.xml. Should this file exist, then the <Syslog> element from the example file can be copied.
  • Users have to adjust settings from the <Syslog> configuration element.


Code Block
languagexml
titleExample for Controller log4j2.xml Configuration
linenumberstrue
collapsetrue
<Appenders>
    <Syslog name="RFC5424" format="RFC5424" host="localhost" port="4514"
            protocol="UDP" charset="UTF-8" facility="LOCAL0" newLine="false">
        <PatternLayout pattern="<134>1 %d{ISO8601}{ETC/UTC}Z ${hostName} JS7 Controller {
"host":"${hostName}",
"controllerId":"${ControllerId}",
"thread":"%t",
"level":"%p",
"logger":"%c{1}",
"message":"%enc{%m}{JSON}",
"thrown":"%enc{%throwable{10}}{JSON}"
}"
        />
    </Syslog>
</Appenders>

...

The following Log4j configuration is available from the log4j2.xml-example file in the Agent's <agent-data>/config directory:.

  • Users can copy the log4j2.xml-example file to a file with the name log4j2.xml. Should this file exist, then the <Syslog> element from the example file can be copied.
  • Users have to adjust settings from the <Syslog> configuration element.


Code Block
languagexml
titleExample for Agent log4j2.xml Configuration
linenumberstrue
collapsetrue
<Appenders>
    <Syslog name="RFC5424" format="RFC5424" host="localhost" port="4514"
            protocol="UDP" charset="UTF-8" facility="LOCAL0" newLine="false">
        <PatternLayout pattern="<134>1 %d{ISO8601}{ETC/UTC}Z ${hostName} JS7 Controller {
"host":"${hostName}",
"controllerId":"${ControllerId}",
"agentId":"...",
"level":"%p",
"logger":"%c{1}",
"message":"%enc{%m}{JSON}",
"thrown":"%enc{%throwable{10}}{JSON}"
}"
        />
    </Syslog>
</Appenders>

...

The following Log4j configuration is available from the log4j2.xml-example file in the JOC Cockpit's <jetty-base>/resources/joc directory:.

  • Users can copy the log4j2.xml-example file to a file with the name log4j2.xml. Should this file exist, then the <Syslog> element from the example file can be copied.
  • Users have to adjust settings from the <Syslog> configuration element.


Code Block
languagexml
titleExample for JOC Cockpit log4j2.xml Configuration
linenumberstrue
collapsetrue
<Appenders>
    <Syslog name="RFC5424" format="RFC5424" host="localhost" port="4514"
            protocol="UDP" charset="UTF-8" facility="LOCAL0" newLine="false">
        <PatternLayout pattern="<134>1 %d{ISO8601}{ETC/UTC}Z ${hostName} JS7 Controller {
"host":"${hostName}",
"controllerId":"${ControllerId}",
"agentId":"...",
"level":"%p",
"logger":"%c{1}",
"message":"%enc{%m}{JSON}",
"thrown":"%enc{%throwable{10}}{JSON}"
}"
        />
    </Syslog>
</Appenders>

...