logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kanagha Pradha (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (LOG4J2-949) No MDC parameters in Syslog
Date Thu, 12 Feb 2015 22:26:11 GMT

    [ https://issues.apache.org/jira/browse/LOG4J2-949?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14319125#comment-14319125

Kanagha Pradha commented on LOG4J2-949:

Does syslog support recognizing the default conversion patterns like %level, %C, %F etc or
does all of them need to be populated in the MDC every time a message is logged? Knowing this
will greatly help us in designing to use syslog and other appenders.

> No MDC parameters in Syslog
> ---------------------------
>                 Key: LOG4J2-949
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-949
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Appenders
>    Affects Versions: 2.1
>         Environment: Ubuntu 12
>            Reporter: Maxim Novikov
>            Priority: Critical
>              Labels: mdc, syslog, syslogappender, threadcontext
> I cannot see thread context specific parameters (MDC) with the Syslog appender.
> Here is my configuration:
> {code:title=log4j2.xml|borderStyle=solid}
> <?xml version="1.0" encoding="UTF-8"?>
> <Configuration status="WARN">
>   <Appenders>
>     <Console name="Console" target="SYSTEM_OUT">
>       <PatternLayout pattern="%X{my-mdc-key} %d{HH:mm:ss.SSS} %-5level [%logger{1.}]
%msg%n" />
>     </Console>
>     <Syslog name="Syslog"
>             format="RFC5424"
>             host="localhost"
>             port="514"
>             protocol="UDP" 
>             id="my-id"
>             mdcId="mdc"
>             mdcRequired="my-mdc-key"
>             enterpriseNumber="1000"
>             newLine="true"
>             appName="my-app">
>       <LoggerFields>
>         <KeyValuePair key="thread" value="%t" />
>         <KeyValuePair key="category" value="%c" />
>       </LoggerFields>
>     </Syslog>
>   </Appenders>
>   <Loggers>
>     <Root level="info">
>       <AppenderRef ref="Console" />
>       <AppenderRef ref="Syslog" />
>     </Root>
> </Configuration>
> {code}
> I can see my-mdc-key's value in the terminal just fine (as well as other MDC custom parameters
if I need to), but there is none is syslog's log file.
> The same concerns the LoggerFields collection. I have added it just to try overcoming
the issue with MDC, but also can't see any of those through syslog.
> I have tried to play with "mdcId", "mdcRequired", "mdcRequired", but with no success.
The only thing for sure is that my MDC custom fields do exist in the context, as I can see
them in the console, as well as Syslog appender starts with not exception when I specify them
through "mdcRequired" field.
> PS Just to clarify, the messages do get delivered to the syslog, but no MDC and no custom
logger fields there.
> Marked as "Critical" as we will have to migrate to logback or another framework if it
is not going to work, as this functionality is required for us.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org

View raw message