Freigeben über


Verwenden des Aktivitätsprotokolls

VSPackages können Nachrichten in das Aktivitätsprotokoll schreiben. Dieses Feature ist besonders hilfreich beim Debuggen von VSPackages in Einzelhandelsumgebungen.

Tipp

Das Aktivitätsprotokoll ist immer aktiviert. Visual Studio behält einen rollierenden Puffer der letzten 100 Einträge sowie die ersten 10 Einträge bei, die allgemeine Konfigurationsinformationen enthalten.

So schreiben Sie einen Eintrag in das Aktivitätsprotokoll

  1. Fügen Sie diesen Code in die Initialize-Methode oder in eine andere Methode mit Ausnahme des VSPackage-Konstruktors ein:

    IVsActivityLog log = GetService(typeof(SVsActivityLog)) as IVsActivityLog;
    if (log == null) return;
    
    int hr = log.LogEntry((UInt32)__ACTIVITYLOG_ENTRYTYPE.ALE_INFORMATION,
        this.ToString(),
        string.Format(CultureInfo.CurrentCulture,
        "Called for: {0}", this.ToString()));
    

    Dieser Code ruft den SVsActivityLog-Dienst ab und wandelt ihn in eine IVsActivityLog-Schnittstelle um. LogEntry schreibt mithilfe des aktuellen kulturellen Kontexts einen Informationseintrag in das Aktivitätsprotokoll.

  2. Wenn vsPackage geladen wird (in der Regel, wenn ein Befehl aufgerufen oder ein Fenster geöffnet wird), wird der Text in das Aktivitätsprotokoll geschrieben.

So überprüfen Sie das Aktivitätsprotokoll

  1. Führen Sie Visual Studio mit dem Befehlszeilenwechsel "/Log " aus, um während der Sitzung ActivityLog.xml auf den Datenträger zu schreiben.

  2. Suchen Sie nach dem Schließen von Visual Studio das Aktivitätsprotokoll im Unterordner für Visual Studio-Daten:

    *%AppData%\Microsoft\VisualStudio\{version}\ActivityLog.xml

  3. Öffnen Sie das Aktivitätsprotokoll mit einem beliebigen Text-Editor. Hier ist ein typischer Eintrag:

    Called for: Company.MyApp.MyAppPackage ...
    

Problembehandlung bei Import-/Exportproblemen in Editorerweiterungen: Zugreifen auf das MEF Composition-Fehlerprotokoll

Beim Schreiben einer editorbasierten Erweiterung treten möglicherweise Probleme auf, wenn Sie versuchen, etwas zu importieren, das in der aktuellen VS-Installation nicht vorhanden ist, oder wenn Sie den Import oder Export falsch erstellen. Die primäre Möglichkeit, diese Probleme zu finden und zu beheben, besteht darin, auf das MEF-Kompositionsfehlerprotokoll (Managed Extensibility Framework) zu verweisen, das unter %localappdata%\Microsoft\VisualStudio{version}\ComponentModelCache\Microsoft.VisualStudio.Default.err. Weitere Informationen zur Verwendung von MEF in Ihren Erweiterungen finden Sie in dieser Dokumentation.

Stabile Programmierung

Da das Aktivitätsprotokoll ein Dienst ist, ist das Aktivitätsprotokoll im VSPackage-Konstruktor nicht verfügbar.

Sie sollten das Aktivitätsprotokoll direkt vor dem Schreiben in das Aktivitätsprotokoll abrufen. Speichern Sie das Aktivitätsprotokoll nicht zwischen, oder speichern Sie es nicht für die zukünftige Verwendung.