logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Barış Taşkend (JIRA) <j...@apache.org>
Subject [jira] [Updated] (LOG4J2-442) Log4j2 Database insert problem in Websphere
Date Fri, 08 Nov 2013 07:43:17 GMT

     [ https://issues.apache.org/jira/browse/LOG4J2-442?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Barış Taşkend updated LOG4J2-442:
---------------------------------

    Description: 
In my local,

I created an log4j2.xml to config like that :

{code:title=log4j2.xml|borderStyle=solid}

    <?xml version="1.0" encoding="UTF-8"?>

    <configuration status="OFF">
      <appenders>
        <!-- Async Loggers will auto-flush in batches, so switch off immediateFlush. -->

        <FastFile name="AsyncFastFile" fileName="${sys:logFilename}" 
                  immediateFlush="false" append="true">
          <PatternLayout>
            <pattern>test %m %m %ex%n</pattern>
          </PatternLayout>
        </FastFile>

    <JDBC name="databaseAppender" tableName="mytablename">
          <DriverManager url="jdbc:oracle:thin:ORCL_USERNAME/PASS@//MYSERVERNAME:PORTNO/DBNAME"
/>
          <Column name="KEY1" pattern="%X{sayi1}" />
          <Column name="KEY2" pattern="%X{sayi2}" />
          </JDBC>

        <JDBC name="databaseAppenderJNDI" tableName="mytablename">
      <DataSource jndiName="java:/comp/env/jdbc/logWS" />
      <Column name="KEY1" pattern="%X{sayi1}" />
      <Column name="KEY2" pattern="%X{sayi2}" />
     </JDBC>  


      </appenders>

      <loggers>


        <!-- pattern layout actually uses location, so we need to include it -->
        <asyncLogger name="ASYNC" level="TRACE" additivity="false">
          <appender-ref ref="databaseAppender"/>
        </asyncLogger>

 <!-- pattern layout actually uses location, so we need to include it -->
        <asyncLogger name="ASYNCwithJNDI" level="TRACE" additivity="false">
          <appender-ref ref="databaseAppenderJNDI"/>
        </asyncLogger>


        <root level="info" includeLocation="true">
          <appender-ref ref="databaseAppender"/>
        </root>

      </loggers>
    </configuration>
{code}

I can insert logs to text file and DB by switching loggername in my java class which I call
log function. There no problem in my local.

In Wepshere server,

I call a web service for logging. I am using same config file and same java codes which calls
log function. I can insert logs to a file but I can't insert logs to database. I tried both
driverManager url and JNDI. But nothing changed. In two ways, I can't insert log to DB and
program doesn't throw any error in try-catch. So I can't find problem where is.

Note : There is no problem at JNDI url and drivermanager url. Because I can perfectly use
these urls in different webservice in wepshere. Also I can insert log to Database in my local
with same codes.

Note : There is no problem to insert logs to txt file. only DB insertion is problem in Websphere
server. So there isn't problem at config file classpath.

For your info, I am using oracle DB but the problem isn't about DB.
I trace network packages in server and I realize that web service don't send any package to
DB. Packages don't reach to DB.

How I can solve this problem?

THX.


  was:
In my local,

I created an log4j2.xml to config like that :

{code:title=log4j2.xml|borderStyle=solid}

    <?xml version="1.0" encoding="UTF-8"?>

    <configuration status="OFF">
      <appenders>
        <!-- Async Loggers will auto-flush in batches, so switch off immediateFlush. -->

        <FastFile name="AsyncFastFile" fileName="${sys:logFilename}" 
                  immediateFlush="false" append="true">
          <PatternLayout>
            <pattern>test %m %m %ex%n</pattern>
          </PatternLayout>
        </FastFile>

    <JDBC name="databaseAppender" tableName="mytablename">
          <DriverManager url="jdbc:oracle:thin:ORCL_USERNAME/PASS@//MYSERVERNAME:PORTNO/DBNAME"
/>
          <Column name="KEY1" pattern="%X{sayi1}" />
          <Column name="KEY2" pattern="%X{sayi2}" />
          </JDBC>

        <JDBC name="databaseAppenderJNDI" tableName="mytablename">
      <DataSource jndiName="java:/comp/env/jdbc/logWS" />
      <Column name="KEY1" pattern="%X{sayi1}" />
      <Column name="KEY2" pattern="%X{sayi2}" />
     </JDBC>  


      </appenders>

      <loggers>


        <!-- pattern layout actually uses location, so we need to include it -->
        <asyncLogger name="ASYNC" level="TRACE" additivity="false">
          <appender-ref ref="databaseAppender"/>
        </asyncLogger>

 <!-- pattern layout actually uses location, so we need to include it -->
        <asyncLogger name="ASYNCwithJNDI" level="TRACE" additivity="false">
          <appender-ref ref="databaseAppenderJNDI"/>
        </asyncLogger>


        <root level="info" includeLocation="true">
          <appender-ref ref="databaseAppender"/>
        </root>

      </loggers>
    </configuration>
{code}

I can insert logs to text file and DB by switching loggername in my java class which I call
log function. There no problem in my local.

In Wepshere server,

I call a web service for logging. I am using same config file and same java codes which calls
log function. I can insert logs to a file but I can't insert logs to database. I tried both
driverManager url and JNDI. But nothing changed. In two ways, I can't insert log to DB and
program doesn't throw any error in try-catch. So I can't find problem where is.

Note : There is no problem at JNDI url and drivermanager url. Because I can perfectly use
these urls in different webservice in wepshere. Also I can insert log to Database in my local
with same codes.

Note : There is no problem to insert logs to txt file. only DB insertion is problem in Websphere
server. So there isn't problem at config file classpath.

How I can solve this problem?

THX.



> Log4j2 Database insert problem in Websphere
> -------------------------------------------
>
>                 Key: LOG4J2-442
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-442
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Appenders, Configurators
>    Affects Versions: 2.0-beta8
>         Environment: Java Web Service in Websphere server
>            Reporter: Barış Taşkend
>            Priority: Blocker
>
> In my local,
> I created an log4j2.xml to config like that :
> {code:title=log4j2.xml|borderStyle=solid}
>     <?xml version="1.0" encoding="UTF-8"?>
>     <configuration status="OFF">
>       <appenders>
>         <!-- Async Loggers will auto-flush in batches, so switch off immediateFlush.
-->
>         <FastFile name="AsyncFastFile" fileName="${sys:logFilename}" 
>                   immediateFlush="false" append="true">
>           <PatternLayout>
>             <pattern>test %m %m %ex%n</pattern>
>           </PatternLayout>
>         </FastFile>
>     <JDBC name="databaseAppender" tableName="mytablename">
>           <DriverManager url="jdbc:oracle:thin:ORCL_USERNAME/PASS@//MYSERVERNAME:PORTNO/DBNAME"
/>
>           <Column name="KEY1" pattern="%X{sayi1}" />
>           <Column name="KEY2" pattern="%X{sayi2}" />
>           </JDBC>
>         <JDBC name="databaseAppenderJNDI" tableName="mytablename">
>       <DataSource jndiName="java:/comp/env/jdbc/logWS" />
>       <Column name="KEY1" pattern="%X{sayi1}" />
>       <Column name="KEY2" pattern="%X{sayi2}" />
>      </JDBC>  
>       </appenders>
>       <loggers>
>         <!-- pattern layout actually uses location, so we need to include it -->
>         <asyncLogger name="ASYNC" level="TRACE" additivity="false">
>           <appender-ref ref="databaseAppender"/>
>         </asyncLogger>
>  <!-- pattern layout actually uses location, so we need to include it -->
>         <asyncLogger name="ASYNCwithJNDI" level="TRACE" additivity="false">
>           <appender-ref ref="databaseAppenderJNDI"/>
>         </asyncLogger>
>         <root level="info" includeLocation="true">
>           <appender-ref ref="databaseAppender"/>
>         </root>
>       </loggers>
>     </configuration>
> {code}
> I can insert logs to text file and DB by switching loggername in my java class which
I call log function. There no problem in my local.
> In Wepshere server,
> I call a web service for logging. I am using same config file and same java codes which
calls log function. I can insert logs to a file but I can't insert logs to database. I tried
both driverManager url and JNDI. But nothing changed. In two ways, I can't insert log to DB
and program doesn't throw any error in try-catch. So I can't find problem where is.
> Note : There is no problem at JNDI url and drivermanager url. Because I can perfectly
use these urls in different webservice in wepshere. Also I can insert log to Database in my
local with same codes.
> Note : There is no problem to insert logs to txt file. only DB insertion is problem in
Websphere server. So there isn't problem at config file classpath.
> For your info, I am using oracle DB but the problem isn't about DB.
> I trace network packages in server and I realize that web service don't send any package
to DB. Packages don't reach to DB.
> How I can solve this problem?
> THX.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

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


Mime
View raw message