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

Mykola Holovach commented on LOG4J2-3046:
-----------------------------------------

I'm sorry that i'm asking this question here(in Jira), noone can help from the 
outside. Yes, i saw documentation, and i'm tried your solution, but it's won't 
helped. The main problem that these fields (KeyValuePair) does not avalible on 
the server side. How to get them on the servers side? Also, i'm added 
KeyValuePair to Console appender, i see these fields in the terminal, when 
Socket appender works, there is no these fields in LogEvent. Please help me to 
resolve this problem 🙏

Below the log from console
{code:java}
{
  "instant" : {
    "epochSecond" : 1616052536,
    "nanoOfSecond" : 736000000
  },
  "thread" : "CGWKeepAlive",
  "level" : "DEBUG",
  "loggerName" : "ua.cetelem.DossierAnalyser.facades.InstanceAnalyserFacade",
  "message" : "run(): }",
  "contextStack" : [ "loader" ],
  "endOfBatch" : false,
  "loggerFqcn" : "org.apache.logging.log4j.spi.AbstractLogger",
  "threadId" : 38,
  "threadPriority" : 5,
  "additionalField1" : "value1",
  "additionalField2" : "value2"
}

{code}
LogEvent
{code:java}
LogEvent.getContextData()
         (org.apache.logging.log4j.util.SortedArrayStringMap) {}
LogEvent.getContextStack()
         (org.apache.logging.log4j.spi.MutableThreadContextStack) [loader]
LogEvent.getContextMap()
         (java.util.HashMap<K,V>) {}
{code}

> Socket Appender: retrieve variables from the client to the socket server
> ------------------------------------------------------------------------
>
>                 Key: LOG4J2-3046
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-3046
>             Project: Log4j 2
>          Issue Type: Question
>          Components: Appenders
>         Environment: maven
> java 8
>            Reporter: Mykola Holovach
>            Priority: Major
>
> My listener log4j2.xml configuartion, in the PatternLayout section i'm tried 
> %X\{application} and ${application}
> {code:java}
> <Configuration xmlns="http://logging.apache.org/log4j/2.0/config";>  
> <Appenders>
>       <RollingRandomAccessFile name="ERROR_FILE" bufferSize="1024" 
> bufferedIO="true" append="true"
>               fileName="${LOGS_HOME}/logfinal-error-${HOST_NAME_SHORT}.log"
>               
> filePattern="${LOGS_HOME}/logfinal-error-${HOST_NAME_SHORT}.log.%d{yyyy-MM-dd}">
>               <ThresholdFilter level="warn" />
>               <PatternLayout pattern="%d{DEFAULT} %-5p %t %c %X{application} 
> %x - %m%n" />
>           <Policies>
>               <TimeBasedTriggeringPolicy interval="1"/>
>           </Policies>
>       </RollingRandomAccessFile>      <RollingRandomAccessFile 
> name="DEBUG_FILE" bufferSize="32768" bufferedIO="true" append="true" 
>               fileName="${LOGS_HOME}/logfinal-debug-${HOST_NAME_SHORT}.log"
>               
> filePattern="${LOGS_HOME}/logfinal-debug-${HOST_NAME_SHORT}.log.%d{yyyy-MM-dd}">
>               <ThresholdFilter level="debug" />
>               <PatternLayout pattern="%d{DEFAULT} %-5p %t %c ${application} 
> %x - %m%n" />
>           <Policies>
>               <TimeBasedTriggeringPolicy interval="1"/>
>           </Policies>
>       </RollingRandomAccessFile>      <Async name="ASYNC" bufferSize="64">
>               <AppenderRef ref="ERROR_FILE" />
>               <AppenderRef ref="DEBUG_FILE" />
>       </Async>
>   </Appenders>  <Loggers>
>       <Logger name="ua" level="debug" />
>       <Logger name="ua.cetelem.DossierAnalyser" level="info" />
>       <Logger name="ua.cetelem.dbaccess.DbAccess" level="info" />
>       <Logger name="com.usb" level="debug" />
>       <Logger name="jacorb" level="info"/>
>       <Logger name="org.owasp" level="trace"/>
>     <Root level="info">
>       <AppenderRef ref="ASYNC"/>
>     </Root>
>   </Loggers></Configuration>
> {code}
>  
> My client log4j2.xml configuartion, in the <Loggers> section i'm added
> <Property name="application">app_name</Property>
> {code:java}
> <Configuration xmlns="http://logging.apache.org/log4j/2.0/config";>    
> <Appenders>
>         <Socket name="logfinal" host="localhost" port="1101">
>               <JSONLayout/>
>         </Socket>             <RollingFile name="ERROR_FILE"
>                       
> fileName="build/${sys:LOG4J_APP_NAME:-}-error-${HOST_NAME_SHORT}.log"
>                       
> filePattern="build/${sys:LOG4J_APP_NAME:-}-error-${HOST_NAME_SHORT}.log.%d{yyyy-MM-dd}">
>                       <ThresholdFilter level="warn" />
>                       <PatternLayout
>                               pattern="%d{DEFAULT} %-5p %t %c %x - %m%n" />
>                       <Policies>
>                               <TimeBasedTriggeringPolicy interval="1" />
>                       </Policies>
>               </RollingFile>          <RollingFile name="DEBUG_FILE"
>                       
> fileName="build/${sys:LOG4J_APP_NAME:-}-debug-${env:NAME_SHORT}.log"
>                       
> filePattern="build/${sys:LOG4J_APP_NAME:-}-debug-${env:NAME_SHORT}.log.%d{yyyy-MM-dd}">
>                       <ThresholdFilter level="debug" />
>                       <PatternLayout
>                               pattern="%d{DEFAULT} %-5p %t %c %x - %m%n" />
>                       <Policies>
>                               <TimeBasedTriggeringPolicy interval="1" />
>                       </Policies>
>               </RollingFile>
>               
>               <Async name="ASYNC" bufferSize="64">
>                       <AppenderRef ref="ERROR_FILE" />
>                       <AppenderRef ref="DEBUG_FILE" />
>                       <AppenderRef ref="logfinal" />
>               </Async>
>         
>     </Appenders>      <Loggers>
>               <Logger name="org.hibernate.tool.hbm2ddl" level="DEBUG" />
>               <Logger name="org.hibernate.SQL" level="INFO" />
>               <Logger name="ua.cetelem" level="debug" />
>               <Root level="info">
>                       <Property name="application">app_name</Property>
>                       <AppenderRef ref="ASYNC" />
>               </Root>
>       </Loggers>
> </Configuration>
> {code}
> I'm trying to get application name of the client sending each event, but it's 
> doesn't work for me, i'm tried different ways, no luck, please help me to 
> resolve this problem. Thanks in advance!
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to