Solved

Enable environment variables in Log4Net file name value

Posted on 2010-09-17
6
1,242 Views
Last Modified: 2012-05-10
I'm wondering why I can't seem to use environment variables in the following settings in a .config file for a .net application:

<appender name="RollingLogFile" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="..\\Logg\\Dashboard\\logfilename.log"/>
      <param name="AppendToFile" value="true"/>
      <param name="MaxSizeRollBackups" value="3"/>
      <param name="MaximumFileSize" value="5MB"/>
      <param name="RollingStyle" value="Size"/>
      <param name="StaticLogFileName" value="true"/>
      <param name="CountDirection" value="-1"/>
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] &lt;%X{auth}&gt; - %m%n"/>
      </layout>

Open in new window


If I try to use i.e. ${USERNAME}.log it only creates a new file with the filename ${USERNAME}.log instead of a username.

What is the correct syntax/variable to use for this, if possible at all?

This is a Windows environment
0
Comment
Question by:beester
  • 3
  • 2
6 Comments
 
LVL 13

Expert Comment

by:Corey2
Comment Utility
Try using %USERNAME% I believe with log4net you have to use command line syntax for file name and path.
0
 
LVL 7

Author Comment

by:beester
Comment Utility
Nope, doesn't seem to help. Tried ${%USERNAME%}, env{%USERNAME%}, {%USERNAME%} and just %USERNAME%, and all it does is to create a log file with the name as I write it, it doesn't parse the environment variables...
0
 
LVL 13

Accepted Solution

by:
Corey2 earned 500 total points
Comment Utility
I recall running into an issue with this with the rolling log file appender I have been configuring it through code instead of  Settings.


            Dim apdr As New Appender.RollingFileAppender()

            Dim layout As New log4net.Layout.PatternLayout("%date [%thread] %-5level %logger [%property{NDC}] - %message%newline")

            Dim Folder As String = My.Computer.FileSystem.SpecialDirectories.Temp

            With apdr

                .LockingModel = New log4net.Appender.RollingFileAppender.MinimalLock()

                .Name = "MyApplication Log"

                'Appears to be in bytes so this = 1mb

                .MaxFileSize = 1049000

                .AppendToFile = True

                .File = IO.Path.Combine(Folder, "MyApplication.log")

end with

Open in new window

0
 
LVL 7

Author Comment

by:beester
Comment Utility
I checked with our head programmer, and he said that this wasn't a viable solution for us. But he also said he thought this was solved in a newer Log4Net than the one we use, so I guess I'll try upgrading first...
0
 
LVL 13

Expert Comment

by:Corey2
Comment Utility
Which version of log4net are you using?
0

Featured Post

What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

Join & Write a Comment

In my previous article (http://www.experts-exchange.com/Programming/Languages/.NET/.NET_Framework_3.x/A_4362-Serialization-in-NET-1.html) we saw the basics of serialization and how types/objects can be serialized to Binary format. In this blog we wi…
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
In this tutorial you'll learn about bandwidth monitoring with flows and packet sniffing with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're interested in additional methods for monitoring bandwidt…

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now