Partager via


Comment : Utilisez les journaux d'activité

VSPackages peut écrire des messages dans le journal d'activité. Cette fonctionnalité est particulièrement utile pour le débogage des VSPackages dans les environnements commercialisés.

Conseil

Les journaux d'activité est toujours activé.Visual Studio conserve une mémoire tampon enchaînées des pourcentages dernières entrées ainsi que les dix premières entrées, qui ont des données de configuration générales.

Pour écrire une entrée dans le journal d'activité

  1. Insérez ce code dans la méthode d' Initialize ou dans toute autre méthode à l'exception de le constructeur d'un VSPackage :

    Dim log As IVsActivityLog
    log = GetService(GetType(SVsActivityLog))
    If log Is Nothing Then 
        Return 
    End If 
    
    Dim hr As Integer
    hr = log.LogEntry(CType(__ACTIVITYLOG_ENTRYTYPE.ALE_INFORMATION, UInt32),
        Me.ToString(),
        String.Format(CultureInfo.CurrentCulture,
        "Entering initializer for: {0}", Me.ToString()))
    
    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,
        "Entering initializer for: {0}", this.ToString()));
    

    Ce code obtient le service et les casts d' SVsActivityLog il à une interface de IVsActivityLog . LogEntry écrit une entrée d'informations dans le journal d'activité en utilisant le contexte culturel actuel.

  2. chargez le VSPackage.

pour examiner le journal d'activité

  1. Recherchez la connexion d'activité le sous-dossier pour les données de Visual Studio.

    par exemple, %AppData%\Microsoft\VisualStudio\10.0\ActivityLog.XML.

  2. ouvrez le journal d'activité avec n'importe quel éditeur de texte.

    Voici une entrée type :

    50  Entering initializer for: Company.MyApp.MyAppPackage ...
    

Programmation fiable

Étant donné que le journal d'activité est un service, les journaux d'activité est pas disponible dans le constructeur d'un VSPackage.

Vous devez obtenir les journaux d'activité juste avant l'écriture dans celui-ci. Ne mettez pas en cache ou n'enregistrez pas les journaux d'activité pour une utilisation ultérieure.

Voir aussi

Tâches

Comment : Résolvez les VSPackages

Référence

IVsActivityLog

__ACTIVITYLOG_ENTRYTYPE

Autres ressources

VSPackages