-
Notifications
You must be signed in to change notification settings - Fork 78
Description
I use Opentelemetry Java agent with Karaf. It works but now I would like to receive all logs from karaf (4.4.6). I'm able to receive only opentelemetry internal logs but not logs from my application or karaf itself.
I have checked examples but it seems to me that this is a little bit different case as in examples.
Part of opentelemetry java agent is also Log4j2 appender
https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/main/instrumentation/log4j/log4j-appender-2.17/library/src/main/java/io/opentelemetry/instrumentation/log4j/appender/v2_17/OpenTelemetryAppender.java
log4j2 can be configured something like this:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN" packages="io.opentelemetry.instrumentation.log4j.appender.v2_17">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout
pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} trace_id: %X{trace_id} span_id: %X{span_id} trace_flags: %X{trace_flags} - %msg%n"/>
</Console>
<OpenTelemetry name="OpenTelemetryAppender"/>
</Appenders>
<Loggers>
<Root>
<AppenderRef ref="OpenTelemetryAppender" level="All"/>
<AppenderRef ref="Console" level="All"/>
</Root>
</Loggers>
</Configuration>
But I don't have any idea how to export OpenTelemetryAppender to pax log so that log4j2 would be able to register a new type of appender.
So in general, could you advise me if it is even possible (there are some "special" things that javagent does). And if it is possible can you give me some hints (examples,blog) what I have to do.