public void SetLogFilePath(string filePath)
    {
        ConfigurationFileMap objConfigPath = new ConfigurationFileMap();
        // App config file path.
        string appPath = AppDomain.CurrentDomain.SetupInformation.ConfigurationFile;

        objConfigPath.MachineConfigFilename = appPath;
        Configuration             entLibConfig                 = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");
        LoggingSettings           loggingSettings              = (LoggingSettings)entLibConfig.GetSection(LoggingSettings.SectionName);
        TraceListenerData         traceListenerData            = loggingSettings.TraceListeners.Get("Flat File Trace Listener");
        FlatFileTraceListenerData objFlatFileTraceListenerData = traceListenerData as FlatFileTraceListenerData;

        objFlatFileTraceListenerData.FileName = filePath;

        IUnityContainer container = new UnityContainer();

        container.AddNewExtension <EnterpriseLibraryCoreExtension>();
        // Configurator will read Enterprise Library configuration
        // and set up the container
        UnityContainerConfigurator configurator = new UnityContainerConfigurator(container);
        var loggingXmlConfigSource = new SerializableConfigurationSource();

        loggingXmlConfigSource.Add(LoggingSettings.SectionName, loggingSettings);
        // Configure the container with our own custom logging
        EnterpriseLibraryContainer.ConfigureContainer(configurator, loggingXmlConfigSource);
        // Wrap in ServiceLocator
        IServiceLocator locator = new UnityServiceLocator(container);

        // And set Enterprise Library to use it
        EnterpriseLibraryContainer.Current = locator;
    }
Ejemplo n.º 2
0
        private static void BootStrapLogger()
        {
            IConfigurationSource configSource = ConfigurationSourceFactory.Create();

            var loggingSettings = configSource.GetSection(LoggingSettings.SectionName) as LoggingSettings;

            var data = loggingSettings.TraceListeners.First(t => t.Name == "Rolling Flat File Trace Listener") as RollingFlatFileTraceListenerData;

            // Change the file name
            data.FileName = "modified.log";

            var loggingXmlSrc = new SerializableConfigurationSource();

            loggingXmlSrc.Add(LoggingSettings.SectionName, loggingSettings);

            var logFactory = new LogWriterFactory(loggingXmlSrc);

            Logger.SetLogWriter(logFactory.Create());
        }