none
Exception beim Schreiben von Meldungen mittels My.Log in das Ereignisprotokoll der lokalen Maschine RRS feed

  • Frage

  • Hallo,

    alles gemäß http://msdn.microsoft.com/de-de/library/5cz98azz.aspx durchgeführt. Es "funktioniert", nur daß ich eine Exception beim Schreiben eines Ereignisses bekomme:

    Die Quelle wurde nicht gefunden, einige oder alle Ereignisprotokolle konnten jedoch nicht durchsucht werden. Um die Quelle zu erstellen, benötigen Sie die Leseberechtigung für alle Ereignisprotokolle, um sicherzustellen, dass der neue Quellname eindeutig ist. Protokolle, auf die nicht zugegriffen werden kann: Security.

    Es sieht so aus, als ob ich da aktiv etwas im Ereignisprotokoll einrichten muß - inklusive Berechtigungen. Was muß ich da genau tun?

    Danke im Voraus!

    MfG

     

    Mittwoch, 23. Februar 2011 06:56

Antworten

  • Hallo,

    wird die ASP.Net Anwendung unter dem lokalen System ausgeführt? IIS oder IIS Express (also vom Visual Studio)?

    Vorschlag:

    Wichtig zu wissen ist welche Benutzer den Application Pool ausführt wenn es der Netzwerkdienst ist kannst du folgendes probieren:

    Dem Netzwerkdienst die Rechte auf das ASP.Net geben mit aspnetreg_iis -ga Netzwerkdienst respektive Networkservice.

    GA steht für grant access afaik.

    -> Das ganze danach noch einmal ausprobieren.

     

    Generell

    Wie ist der Event Log eingestellt? Nur mit hoher Priorität mitschneiden? Versuche einmal den Log Level runterzuschrauben das "weniger wichtige" Events mitgeschnitten werden.

    Unter Vista und Windows 7 sind die Benutzerkontensteuerung in der regel ein wenig im weg. (Kannst du ausprobieren in dem du die zum testen deaktivierst.)

    Viele Grüße

    Timo

    Montag, 7. März 2011 11:36

Alle Antworten

  • Hallo,

    wird die ASP.Net Anwendung unter dem lokalen System ausgeführt? IIS oder IIS Express (also vom Visual Studio)?

    Vorschlag:

    Wichtig zu wissen ist welche Benutzer den Application Pool ausführt wenn es der Netzwerkdienst ist kannst du folgendes probieren:

    Dem Netzwerkdienst die Rechte auf das ASP.Net geben mit aspnetreg_iis -ga Netzwerkdienst respektive Networkservice.

    GA steht für grant access afaik.

    -> Das ganze danach noch einmal ausprobieren.

     

    Generell

    Wie ist der Event Log eingestellt? Nur mit hoher Priorität mitschneiden? Versuche einmal den Log Level runterzuschrauben das "weniger wichtige" Events mitgeschnitten werden.

    Unter Vista und Windows 7 sind die Benutzerkontensteuerung in der regel ein wenig im weg. (Kannst du ausprobieren in dem du die zum testen deaktivierst.)

    Viele Grüße

    Timo

    Montag, 7. März 2011 11:36
  • Nun habe ich das Problem selbst lösen können:

     

    1.

    Die Quelle/das Protokoll müssen eingerichtet werden:

           EventLog.CreateEventSource("MeineQuelle", "Mein Protokoll") einmalig ausführen, z.B. zum Installationszeitpunkt.

     

    Danach erscheint "MeineQuelle" im Ergeignisprotokoll.

     

    2.

    In der Konfiguration, z.B. "web.config" muß nun noch das Ereignisprotokoll als Ziel der Loggingnachrichten konfiguriert werden:

     

      <system.diagnostics>
        <sources>
          <source name="DefaultSource" switchName="DefaultSwitch">
            <listeners>
              <add name="EventLog" />
            </listeners>
          </source>
        </sources>
        <switches>
          <add name="DefaultSwitch" value="Information" />
        </switches>
        <sharedListeners>
          <add name="EventLog"
                type="System.Diagnostics.EventLogTraceListener,
                    System, Version=2.0.0.0,
                    Culture=neutral, PublicKeyToken=b77a5c561934e089"
                initializeData="MeineQuelle" />
        </sharedListeners>
      </system.diagnostics>

     

    Die Dokumentation zum Thema My.Log und Inhalte web.config ist entweder lausig oder irgendwie nicht wirklich auffindbar.

    Freitag, 11. März 2011 08:45