I think I figured it out. I think there were 2 versions of the log4net DLL.
One in the GAC, and one in the same directory as the exe. The exe was using
one version while everything else was using another. I removed the dll from
the GAC made some changes and so far it seems to be working. Thanks to those
who responded.

 

Brian Sanders

  _____  

From: Dean Fiala [mailto:[EMAIL PROTECTED] 
Sent: Friday, December 15, 2006 10:18 PM
To: [email protected]
Subject: re: Log4net not working as expected

 

Just a thought, since you are declaring the log member in the dll class as
static, it might be getting instantiated before the configuration has run.
Why not either make it property 

protected static log4net.ILog log
{

    return log4net.LogManager.GetLogger("EngineTasksFactory");
}

or just declare it locally in the method.

I have applications that have multiple assemblies all working as you would
expect.



  _____  

Return-Path:
<[EMAIL PROTECTED]> Fri Dec
15 14:43:13 2006
Received: from hermes.apache.org [140.211.11.2] by mail.celadonlabs.com with
SMTP;
Fri, 15 Dec 2006 14:43:13 -0700
Received: (qmail 3993 invoked by uid 500); 15 Dec 2006 21:43:09 -0000
Received: (qmail 3982 invoked by uid 99); 15 Dec 2006 21:43:09 -0000
Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133)
by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Dec 2006 13:43:09 -0800
Received: from [70.158.47.212] (HELO email3.econnextions.com)
(70.158.47.212)
by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Dec 2006 13:42:58 -0800
Received: from [10.10.212.12] (HELO exchange2.corporate.connextions.net)
by email3.econnextions.com (CommuniGate Pro SMTP 4.1.8)
with ESMTP id 3362767 for [email protected]; Fri, 15 Dec 2006
16:42:34 -0500
Received: by exchange2.corporate.connextions.net with Internet Mail Service
(5.5.2658.3)
id <Y2AK6CH1>; Fri, 15 Dec 2006 16:41:04 -0500
Mailing-List: contact [EMAIL PROTECTED]; run by ezmlm
Precedence: bulk
list-help: <mailto:[EMAIL PROTECTED]>
list-unsubscribe: <mailto:[EMAIL PROTECTED]>
List-Post: <mailto:[email protected]>
Reply-To: "Log4NET User" <[email protected]>
List-Id: <log4net-user.logging.apache.org>
Delivered-To: mailing list [email protected]
X-ASF-Spam-Status: No, hits=2.8 required=10.0
tests=HTML_MESSAGE,INFO_TLD
X-Spam-Check-By: apache.org
Received-SPF: pass (herse.apache.org: local policy)
Message-ID:
<[EMAIL PROTECTED]
t>
From: "Sanders, Brian" <[EMAIL PROTECTED]>
To: [email protected]
Subject: Log4net not working as expected
Date: Fri, 15 Dec 2006 16:41:04 -0500
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2658.3)
Content-Type: multipart/alternative;
boundary="----_=_NextPart_001_01C72091.B8865A13"
X-Virus-Checked: Checked by ClamAV on apache.org
X-SmarterMail-Spam: SPF_Pass
X-Rcpt-To: <[EMAIL PROTECTED]>




Hello,

I have an issue with log4net that I was sure was not an issue before. I have
a project which is made up of a few other projects. There's an exe and 4
other dlls. Logging from the exe works while logging from the dlls does not.
Like I say, I know this has worked before. I've read thru the documentation
and everything looks identical. Does anyone see what I might be doing wrong
here or know what the cause may be? Thanks.

 

Log4net: 1.2.10.0

Cnxengine.exe: Runs as either a service, or a stand-alone exe, depending on
configuration.

Platform: MS.Net

Cnxengine.exe.Config:

...

<log4net>                      

            <appender name="RollingFile"
type="log4net.Appender.RollingFileAppender">

                        <file value="c:\\CNXHeavy\\Logs\\CNXEngine.log" />

                        <appendToFile value="true" />

                        <rollingStyle value="Date" />

                        <datePattern value="yyyyMMdd" />         

                        <staticLogFileName value="true" />

                        <maxSizeRollBackups value="14" />

                        <!--<maximumFileSize value="1GB" />-->

                        <layout type="log4net.Layout.PatternLayout">

                                    <conversionPattern value="%date %level
%logger[%method:%line] - %message%newline" />

                        </layout>

            </appender>

            <root>

                        <level value="DEBUG" />

                        <appender-ref ref="RollingFile" />

            </root>              

</log4net>

...

 

CNXENgine.cs:

public class CNXEngine : System.ServiceProcess.ServiceBase {

protected log4net.ILog log = log4net.LogManager.GetLogger("CNXEngine");

...

 

public CNXEngine() {

      // This call is required by the Windows.Forms Component Designer.


      InitializeComponent();              


      //Initialize the threadlist

      ThreadList = new ArrayList();

 

      //Get the tasks to run

      log.Debug("GetTasksToRun"); <- Works

      TasksToRun = EngineTasksFactory.GetTasksToRun();

      log.Debug("Finished GetTasksToRun"); <- Works

}

 

public static void Main() 

{

log4net.Config.XmlConfigurator.Configure();

...

if (Convert.ToBoolean(ConfigurationSettings.AppSettings["RunAsService"]))

{

      ...

}

Else

{

      ...

}

}

 

EngineTasksFactory.cs:

public class EngineTasksFactory

{

      protected static log4net.ILog log =
log4net.LogManager.GetLogger("EngineTasksFactory");

            ...

 

public static EngineTaskList GetTasksToRun()

{

      log.Info("Creating EngineTaskList"); <- Does not work

      EngineTaskList tasks = new EngineTaskList();

                                          

      tasks.Add(new OrderRoutingTask());

      log.Debug("Created EngineTaskList");

      return tasks;

}

 

Brian Sanders

 

Reply via email to