Class InstrumentedAppender
java.lang.Object
org.apache.logging.log4j.core.AbstractLifeCycle
org.apache.logging.log4j.core.filter.AbstractFilterable
org.apache.logging.log4j.core.appender.AbstractAppender
io.prometheus.client.log4j2.InstrumentedAppender
- All Implemented Interfaces:
org.apache.logging.log4j.core.Appender, org.apache.logging.log4j.core.filter.Filterable, org.apache.logging.log4j.core.impl.LocationAware, org.apache.logging.log4j.core.LifeCycle, org.apache.logging.log4j.core.LifeCycle2
@Plugin(name="Prometheus",
category="Core",
elementType="appender")
public final class InstrumentedAppender
extends org.apache.logging.log4j.core.appender.AbstractAppender
Log4j2 log statements at various log levels
Example log4j2 configuration:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration packages="io.prometheus.client.log4j2">
<Appenders>
<Prometheus name="PROMETHEUS"/>
</Appenders>
<Loggers>
<Root level="trace">
<AppenderRef ref="PROMETHEUS"/>
</Root>
</Loggers>
</Configuration>
Example metrics being exported:
log4j_appender_total{level="trace",} 1.0
log4j_appender_total{level="debug",} 2.0
log4j_appender_total{level="info",} 3.0
log4j_appender_total{level="warn",} 4.0
log4j_appender_total{level="error",} 5.0
log4j_appender_total{level="fatal",} 6.0
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.logging.log4j.core.appender.AbstractAppender
org.apache.logging.log4j.core.appender.AbstractAppender.Builder<B>Nested classes/interfaces inherited from interface org.apache.logging.log4j.core.LifeCycle
org.apache.logging.log4j.core.LifeCycle.State -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Counterstatic final Stringprivate static final Counter.Childprivate static final Counter.Childprivate static final Counter.Childprivate static final Counter.Childprivate static final Counter.Childprivate static final Counter.ChildFields inherited from class org.apache.logging.log4j.core.AbstractLifeCycle
DEFAULT_STOP_TIMEOUT, DEFAULT_STOP_TIMEUNIT, LOGGERFields inherited from interface org.apache.logging.log4j.core.Appender
ELEMENT_TYPE, EMPTY_ARRAY -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedInstrumentedAppender(String name) Create a new instrumented appender using the default registry. -
Method Summary
Modifier and TypeMethodDescriptionvoidappend(org.apache.logging.log4j.core.LogEvent event) static InstrumentedAppendercreateAppender(String name) Methods inherited from class org.apache.logging.log4j.core.appender.AbstractAppender
error, error, error, getHandler, getLayout, getName, ignoreExceptions, parseInt, requiresLocation, setHandler, toSerializable, toStringMethods inherited from class org.apache.logging.log4j.core.filter.AbstractFilterable
addFilter, getFilter, getPropertyArray, hasFilter, isFiltered, removeFilter, start, stop, stopMethods inherited from class org.apache.logging.log4j.core.AbstractLifeCycle
equalsImpl, getState, getStatusLogger, hashCodeImpl, initialize, isInitialized, isStarted, isStarting, isStopped, isStopping, setStarted, setStarting, setState, setStopped, setStopping, stop, stopMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.logging.log4j.core.LifeCycle
getState, initialize, isStarted, isStopped, start, stop
-
Field Details
-
COUNTER_NAME
- See Also:
-
COUNTER
-
TRACE_LABEL
-
DEBUG_LABEL
-
INFO_LABEL
-
WARN_LABEL
-
ERROR_LABEL
-
FATAL_LABEL
-
-
Constructor Details
-
InstrumentedAppender
Create a new instrumented appender using the default registry.
-
-
Method Details
-
append
public void append(org.apache.logging.log4j.core.LogEvent event) -
createAppender
@PluginFactory public static InstrumentedAppender createAppender(@PluginAttribute("name") String name)
-