Uploaded image for project: 'Log4net'
  1. Log4net
  2. LOG4NET-33

Ability to use global property to point to log4net configuration file

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 1.2.9
    • 1.2.10
    • Core
    • None
    • Any

    Description

      The log4j tool has the ability to specify a system property to point to the logging configuration file. For instance, when starting a java program (such as tomcat), one can pass "-Dlog4j.configuration=http://mydomain/log4j.xml" as a command line parameter. Log4j checks to see whether this property is available and, if it is, uses the return value from the URL to configure categories and appenders.

      A similar mechanism in log4net would allow a few improvements in logging configuring:

      • No need to use the XmlConfiguratorAttribute in any assemblies
      • No need to know at design time where the log4net config file will be located
      • Ability to configure logging for all components in an app domain by setting a property in the app domain's config file
      • Ability to configure logging for all components on a machine by setting a property in the machine.config file
      • Ability to updating config file contents without updating app or machine config contents.

      I'd propose doing a direct mirror of the log4j capabilities into log4net as follows:

      • Update the LogManager class with a static constructor that mirrors the static block in the LogManager class in log4j
      • Use System.Configuration.ConfigurationSettings.AppSettings.Get(...) instead of java's System.getProperty(...)
      • Don't support the configuratorClass attribute (yet) because the XmlConfigurator seems to be the only logical choice
      • Don't implement the DEFAULT_XML_CONFIGURATION_FILE or DEFAULT_CONFIGURATION_FILE property checks (yet).

      Attachments

        1. LogManager.cs.diff.txt
          3 kB
          patrick conant
        2. configuration.xml.diff.txt
          29 kB
          patrick conant
        3. DefaultRepositorySelector.cs.diff.txt
          5 kB
          patrick conant

        Activity

          People

            nicko Nicko Cadell
            patrick_conant patrick conant
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: