Udostępnij za pośrednictwem


Używanie dziennika aktywności

Pakiety VSPackage mogą zapisywać komunikaty w dzienniku aktywności. Ta funkcja jest szczególnie przydatna do debugowania pakietów VSPackage w środowiskach detalicznych.

Napiwek

Dziennik aktywności jest zawsze włączony. Program Visual Studio przechowuje bufor kroczący z ostatnich 100 wpisów, a także pierwszych 10 wpisów, które zawierają ogólne informacje o konfiguracji.

Aby zapisać wpis w dzienniku aktywności

  1. Wstaw ten kod w metodzie Initialize lub w dowolnej innej metodzie z wyjątkiem konstruktora VSPackage:

    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()));
    

    Ten kod pobiera usługę SVsActivityLog i rzutuje ją do interfejsu IVsActivityLog . LogEntry zapisuje wpis informacyjny w dzienniku aktywności przy użyciu bieżącego kontekstu kulturowego.

  2. Po załadowaniu pakietu VSPackage (zwykle po wywołaniu polecenia lub otwarciu okna) tekst jest zapisywany w dzienniku aktywności.

Aby sprawdzić dziennik aktywności

  1. Uruchom program Visual Studio z przełącznikiem wiersza polecenia /Log , aby zapisać ActivityLog.xml na dysku podczas sesji.

  2. Po zamknięciu programu Visual Studio znajdź dziennik aktywności w podfolderze danych programu Visual Studio:

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

  3. Otwórz dziennik aktywności za pomocą dowolnego edytora tekstów. Oto typowy wpis:

    Called for: Company.MyApp.MyAppPackage ...
    

Rozwiązywanie problemów z importowaniem/eksportowaniem w rozszerzeniach edytora: uzyskiwanie dostępu do dziennika błędów kompozycji MEF

Podczas pisania rozszerzenia opartego na edytorze mogą wystąpić problemy, jeśli spróbujesz zaimportować coś, co nie istnieje w bieżącej instalacji programu VS lub jeśli niepoprawnie utworzysz import lub eksport. Podstawowym sposobem znalezienia i rozwiązania tych problemów jest odwołanie się do dziennika błędów kompozycji zarządzanej struktury rozszerzalności (MEF) przechowywanego w lokalizacji %localappdata%\Microsoft\VisualStudio{version}\ComponentModelCache\Microsoft.VisualStudio.Default.err. Aby dowiedzieć się więcej na temat korzystania z mef w swoich rozszerzeniach, zapoznaj się z tą dokumentacją.

Niezawodne programowanie

Ponieważ dziennik aktywności jest usługą, dziennik aktywności jest niedostępny w konstruktorze VSPackage.

Przed zapisaniem w nim dziennika aktywności należy uzyskać. Nie buforuj ani nie zapisuj dziennika aktywności do użycia w przyszłości.