I am not able to find the reason for an issue where logs of application A are incorrectly getting written into application B logs.
This is happening is websphere 7 and I don't have access to it's admin-console as it is deployed at client side. There are three applications that are deployed in this instance of application server. I am not sure about how many nodes and instance are running on this environment but if required I can get these details.
This issue only appeared after client deployed there own application (application B) on same environment. I looked into the websphere server logs and application logs and below are my finding:
1) Strange error in websphere Sysout logs when application starts:
MyListener is a servlet listener class that implements ServletContextListener and initialize log4j for application A. But this error started coming only after introduction of application B. And just above this error in logs, log entry is as below:
And application A is started later as visible in app server logs. I have verified with client that application B doesn't has any reference to servlet listener class com.mypackage.MyListener
Although all application on this instance of websphere are still working without any issues. It seems like it founds the listener class later when application A starts.
2) Another strange thing happening is that application A logs are incorrectly written to application B logs. I have verified that appenders refers to different files at different locations. So there doesn't seems to be issue with log4j configuration.
To looks like same logger instance is getting used for writing logs to different log files. Due to which it starts writing logs of different application in same log file but this is just an assumption.
Please suggest what could be wrong and what should I look for to get to the root cause of this issue.
Fire me boy! Cool, soothing, shameless self promotion: