Thomas,
 
I've successfully set up log4net logging for a serviced component which is hosted inside the IIS (.NET remoting service) using .NET 1.1.
 
To do this, the application (e.g. IIS) has to have write access to the folder where the log file is to be created (this seems to be okay in your setting).
 
Next, I've added the following log4net declaration in one class (e.g. a base class of a class hierarchy) of each project which should use log4net:
 
[assembly: log4net.Config.Repository("Server")]
[assembly: log4net.Config.XmlConfigurator(ConfigFile="Web.config")]
The repository name should be the name of the assembly - but if you use several projects and therefore have several assemblies you have to use the same repository name in each project (at least I needed to do this, because otherwise only one assembly was able to successfully use log4net, and the other silently failed).
 
You also have to find out the root folder of your component, which depends on the application that uses your component.
 
Hope this information is not completely wrong and might be of any help to you...
 
 
Michael

_______________________________________
DATATRAK Deutschland GmbH
Michael Hinkel
Software Developer
Rochusstrasse 65
53123 Bonn

Tel +49 (228) 97983-602
Fax +49 (228) 97983-34
[EMAIL PROTECTED]
http://www.datatrak.net
 

 


From: Thomas, Cord [mailto:[EMAIL PROTECTED]
Sent: Monday, March 06, 2006 10:36 PM
To: [email protected]
Subject: Log4net with .net 2.0 for com+ servicedcomponent

I have a working c# exchange event sink (serviced component) that will do things like autoaccept, log message activities in a database and route messages.  I wanted to use log4net with this but am having problems
 
The core problem is that i am not getting any log messages (though i tried various configurations)
 
log4net compiled from source in .net using NET_2_0 compile directive
 
Again, my component is doing work - and i can use a FileStream to write to the ..\logs\CurrentLog directory - but not log4net - so, the component has write access...
 
I am now going to try the log4net internal debugging - but wondered if i had anything fundamentally wrong.  Below are my config and code
 
AssemblyInfo.cs
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Log4Net.config", Watch = true)]
 
EventSink.cs
    using log4net
    using log4net.Config
    ...
    private static readonly ILog log = LogManager.GetLogger(typeof(ExchEventSink));
    ...
    OnSave()
       log.Debug("Some debug message");
       // also tried adding various entries of  XmlConfigurator.Configure with no luck
 
Log4Net.config
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
  <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
    <file value="..\\logs\\CurrentLog" />
    <appendToFile value="true" />
    <datePattern value="yyyyMMdd" />
    <rollingStyle value="Date" />
    <filter type="log4net.Filter.LevelRangeFilter">
        <acceptOnMatch value="true" />
        <levelMin value="DEBUG" />
        <levelMax value="FATAL" />
    </filter>
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern  value="%-5p %d %5rms %-22.22c{1} %-18.18M - %m%n" />
    </layout>
  </appender>
  <root>
    <level value="DEBUG" />
    <appender-ref ref="RollingLogFileAppender" />
   </root>
  </log4net>
 
 
 
............................................................
Cord Thomas
Information Services and Technology (IST)
RAND
1776 Main Street
Santa Monica CA 90407
Phone: 310.393.0411 x6672
e-mail: [EMAIL PROTECTED]
 


This email message is for the sole use of the intended recipient(s) and may contain privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message.


Reply via email to