Ekinlik günlüğünü kullanma

VSPackage'lar etkinlik günlüğüne ileti yazabilir. Bu özellik özellikle perakende ortamlarında VSPackage hatalarını ayıklamak için kullanışlıdır.

İpucu

Etkinlik günlüğü her zaman açıktır. Visual Studio, genel yapılandırma bilgilerine sahip ilk 10 girdinin yanı sıra son 100 girdinin sıralı arabelleğini tutar.

Etkinlik günlüğüne girdi yazmak için

  1. Bu kodu Initialize yöntemine veya VSPackage oluşturucu dışında başka bir yönteme ekleyin:

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

    Bu kod SVsActivityLog hizmetini alır ve bir IVsActivityLog arabirimine yayınlar. LogEntry , geçerli kültürel bağlamı kullanarak etkinlik günlüğüne bir bilgilendirme girdisi yazar.

  2. VSPackage yüklendiğinde (genellikle bir komut çağrıldığında veya bir pencere açıldığında), metin etkinlik günlüğüne yazılır.

Etkinlik günlüğünü incelemek için

  1. Oturumunuz sırasında diske ActivityLog.xml yazmak için Visual Studio'yu /Log komut satırı anahtarıyla çalıştırın.

  2. Visual Studio'yu kapattıktan sonra, Visual Studio verilerinin alt klasöründe etkinlik günlüğünü bulun:

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

  3. Etkinlik günlüğünü herhangi bir metin düzenleyicisiyle açın. İşte tipik bir giriş:

    Called for: Company.MyApp.MyAppPackage ...
    

Düzenleyici Uzantılarındaki İçeri/Dışarı Aktarma Sorunlarını Giderme: MEF Oluşturma Hata Günlüğüne Erişme

Düzenleyici tabanlı bir uzantı yazarken, geçerli VS yüklemesinde mevcut olmayan bir öğeyi içeri aktarmayı denerseniz veya içeri veya dışarı aktarma işleminizi yanlış yazarsanız sorunlarla karşılaşabilirsiniz. Bu sorunları bulmanın ve çözmenin birincil yolu, konumunda depolanan Yönetilen Genişletilebilirlik Çerçevesi (MEF) Oluşturma Hata Günlüğüne başvurmaktır.%localappdata%\Microsoft\VisualStudio{version}\ComponentModelCache\Microsoft.VisualStudio.Default.err Uzantılarınızda MEF kullanma hakkında daha fazla bilgi edinmek için bu belgelere göz atın.

Sağlam programlama

Etkinlik günlüğü bir hizmet olduğundan, etkinlik günlüğü VSPackage oluşturucusunda kullanılamaz.

Etkinlik günlüğünü yazmadan hemen önce almanız gerekir. Etkinlik günlüğünü gelecekte kullanmak üzere önbelleğe alma veya kaydetmeyin.