Frage : Multi-threading log4net Störung

Ich versuche, log4net in multithreading in einer Web-Anwendung zu verwenden, aber sie gibt mir die folgende Störung:

" keine log4net appenders, die in der Configakte "

This geschieht definiert werden nur, wenn ich gleichzeitige Benutzer habe, und nicht mit neuen Benutzern (durch die Anwendung ein stresstest).

I morgens using eine Kategorie, die ist, übernehmen die log4net Kategorie. Code-Stückchen für details.

Can sehen jemand, mir zu erklären, was ich falsch tue?

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
public Kategorie DbInteraction: Blockwinde
{
   //functions definierte hier
}

allgemeine Kategorie Blockwinde
    {
        internes statisches ILog Maschinenbordbuch;

        interne Blockwinde ()
        {
            wenn (ConfigurationSettings.AppSettings [„log4net.config_path“] == Null)
            {
                Wurf neue Ausnahme („log4net Configakte definiert nicht in web.config (Schlüssel sollte sein: log4net.config_path) ");
            }

            Maschinenbordbuch = LogManager.GetLogger (this.GetType ());
            FileInfo configFile = neues FileInfo (AppDomain.CurrentDomain.BaseDirectory + ConfigurationSettings.AppSettings [„log4net.config_path“] .ToString ());

            wenn (! configFile.Exists)
            {
                Wurf neue Ausnahme (String.Format („log4net Configakte existiert nicht, gesucht nach: {0}“, configFile.FullName));
            }

            //log4net.Config.XmlConfigurator.Configure (configFile);

            wenn (Maschinenbordbuch. Logger.Repository.GetAppenders () == Null || Maschinenbordbuch. Logger.Repository.GetAppenders (). Länge == 0)
            {
                Wurf neue Ausnahme („keine log4net appenders definiert in der Configakte“);
            }

        }

    }

Antwort : Multi-threading log4net Störung

Ihre Überprüfungen, wenn die Akte existiert, verursachen die Probleme. Das Dateisystem verriegelt sie temporär, die Probleme verursacht, wenn zwei Fälle sie gleichzeitig überprüfen. Diese eher setzen überprüft innen das Application_Start-event von Ihrem globalen, asax, das alle unerwünschten Verschlüsse verhindern sollte.
Weitere Lösungen  
 
programming4us programming4us