Partager via


Analyser les journaux de diagnostic du calendrier pour les boîtes aux lettres Exchange Online

Pour diagnostiquer les problèmes de réunion pour les boîtes aux lettres Exchange Online, vous pouvez analyser les journaux de diagnostic du calendrier (CDL). Pour obtenir les journaux de diagnostic du calendrier pour une réunion, consultez Obtenir les journaux de diagnostic du calendrier pour les boîtes aux lettres Exchange Online.

Les sections suivantes vous guident tout au long du processus d’analyse.

Conditions préalables

Utilisez le script Get-CalendarDiagnosticObjectsSummary.ps1 pour générer le fichier Microsoft Excel suivant pour une réunion :

CalLogSummary_<ID de courte réunion>.xlsx

Le fichier doit contenir l’ensemble de feuilles de calcul suivant pour chaque participant clé :

  • <participant SMTP address>_TimeLine: contient la chronologie
  • <participant SMTP address> : contient les CDLs améliorés
  • <participant SMTP address>_Raw: contient les CDLs bruts

Remarque

  • Le script télécharge et traite les CDLs brutes pour fournir des CDLs améliorées et une chronologie succincte des actions de réunion.
  • L’analyse CDL brute est en dehors de l’étendue de cet article.

Analyser la chronologie des actions de réunion

Les lignes supérieures de la feuille de calcul de chronologie d’un participant fournissent des informations générales sur la réunion, telles que l’ID de réunion, l’objet et l’organisateur. Ces lignes sont suivies d’un résumé de haut niveau et horodaté des actions de réunion liées au participant. Vous pouvez utiliser la chronologie pour résoudre les problèmes de réunion de base.

Par exemple, envisagez un scénario dans lequel vous souhaitez savoir qui a annulé une réunion. Dans la capture d’écran suivante, la feuille de calcul de chronologie d’un délégué montre que le délégué a annulé la réunion dans Outlook sur le web.

Capture d’écran d’une feuille de calcul de chronologie pour un délégué.

Remarque

Chaque entrée numérotée dans la chronologie correspond à une ligne de la feuille de calcul CDL brute. Les nombres ignorés correspondent aux lignes CDL brutes qui ont des actions de réunion ignorées.

Dans la capture d’écran suivante, la feuille de calcul de chronologie d’un utilisateur montre que l’utilisateur a supprimé la réunion dans Outlook.

Capture d’écran d’une feuille de calcul de chronologie pour un utilisateur.

Analyser des CDLs améliorées

Les CDL améliorés d’un participant fournissent un compte rendu détaillé des actions de réunion qui concernent ce dernier. Bien que la feuille de calcul CDL améliorée contienne les mêmes actions de réunion dans le même ordre que la feuille de calcul CDL brute, elle présente les avantages suivants :

  • Les en-têtes de colonne disposent de filtres que vous pouvez utiliser pour masquer les actions de réunion non pertinentes. En filtrant, vous pouvez réduire considérablement le nombre d’entrées que vous passez en revue.

  • La feuille de calcul comporte de nouvelles colonnes qui ajoutent des informations à chaque action de réunion. Par exemple:

    • Colonne LogType qui classe chaque action de réunion. Si vous filtrez sur cette colonne, vous pouvez masquer toutes les actions de réunion étiquetées comme étant ignorées, telles que certaines actions système ou actions de nettoyage.

    • Colonne FreeBusy qui fournit l'état de disponibilité lors de la réunion après chaque action enregistrée.

    • Colonne ResponsibleUser qui spécifie l’utilisateur ou le composant responsable de l’action de réunion.

Colonnes de feuille de calcul CDL améliorées

Le tableau suivant décrit chaque colonne de la feuille de calcul CDL améliorée de gauche à droite. Les noms de colonnes qui ont des astérisques indiquent des données de diagnostic importantes.

Description de la colonne
LogRow Valeurs de ligne qui correspondent aux numéros de ligne dans la feuille de calcul brute CDL, mais sont décalées d'un en raison de l'en-tête de cette feuille de calcul.
LogTimestamp Date et heure UTC auxquelles l’action de réunion a été enregistrée.
LogType* Type d’action de réunion :
  • Core: une action importante lors de la réunion.
  • Ignorable: action système de routine que vous pouvez ignorer. Par exemple, une action de réunion effectuée par un assistant événementiel Microsoft (EBA) ou un assistant temporel (TBA).
  • Cleanup: action de maintenance de routine que vous pouvez ignorer. Par exemple, une action Outlook automatique qui supprime une réponse de réunion.
SubjectProperty* Objet de la réunion
Client* Nom court du client qui a effectué l’action sur un élément de calendrier. Par exemple:
  • Outlook : Desktop : MAPI: un utilisateur a utilisé le client de bureau Outlook pour effectuer l’action de réunion.
  • OWA-ModernCalendarSharing: un utilisateur a utilisé l’application web Outlook pour effectuer l’action de réunion.
  • Other EBA: Un EBA a effectué l'action de tenir une réunion.
  • Transport: l’action de réunion s’est produite pendant le transport de l’élément de calendrier.
LogClientInfoString Nom long du client qui a effectué l’action sur un élément de calendrier.
TriggerAction* Action en amont qui a déclenché l’action de réunion, par exemple :
  • Create: un utilisateur crée un élément de calendrier.
  • Update: un utilisateur met à jour un élément de calendrier.
  • Move: un utilisateur déplace un élément de calendrier vers un autre dossier Outlook.
  • MoveToDeletedItems: un utilisateur déplace un élément de calendrier vers le dossier Éléments supprimés dans Outlook.
  • SoftDelete: un utilisateur supprime de manière réversible un élément de calendrier.
  • HardDelete: un utilisateur supprime en dur un élément de calendrier.
Les actions de déclencheur se produisent fréquemment en paires, séparées par quelques secondes. Par exemple:
  • Une Create action de déclencheur pour une réunion est généralement suivie d’une Create action de déclencheur ou d’une Update sur un élément de réunion IPM.Appointment.
  • Une Create action de déclencheur pour une acceptation est généralement suivie d'une Update action de déclencheur sur un élément de IPM.Appointment réunion pour définir son état libre/occupé sur Busy.
  • Une Transport action de déclencheur qui se produit lorsqu’un participant envoie une réponse de demande de réunion est généralement suivie d’une Update action de déclencheur sur un élément de IPM.Appointment réunion.
ItemClass* Classe de l’élément de calendrier, par exemple :
  • IPM.Appointment: point à l'ordre du jour.
  • IPM.Schedule.Meeting.Request: élément de demande de réunion.
  • IPM.Schedule.Meeting.Canceled: élément d’annulation de réunion. Pour cette classe d’élément, seule l’action Create de déclencheur est intéressante.
  • IPM.Schedule.Meeting.Notification.Forward: élément de notification de transfert de réunion généré lorsqu’une réunion est transférée à un nouvel utilisateur. Pour cette classe d’élément, seule l’action Create de déclencheur est intéressante.
  • IPM.Schedule.Meeting.Resp.Pos: élément de réponse de réunion accepté. Pour cette classe d’élément, seule l’action Create de déclencheur est intéressante.
  • IPM.Schedule.Meeting.Resp.Tent: élément de réponse de réunion provisoire. Pour cette classe d’élément, seule l’action Create de déclencheur est intéressante.
  • IPM.Schedule.Meeting.Resp.Neg: réponse refusée à une invitation à une réunion. Pour cette classe d’élément, seule l’action Create de déclencheur est intéressante.
Remarque : Sauf si vous résolvez un problème de suivi des réponses, vous pouvez ignorer les IPM.Schedule.Meeting.Resp.Pos/Tent/Neg classes d’éléments.
Seq :Exp :ItemVersion Valeur composée de :
  • AppointmentSequenceNumber: numéro de séquence d’un rendez-vous ou d’une réunion. Mise à jour des modifications majeures apportées à l’heure, à la date ou à l’emplacement.
  • ExceptionNumber: numéro de séquence d’une exception.
  • ItemVersion: Version de l’élément de calendrier.
Organisateur* Adresse e-mail de l’organisateur d’un rendez-vous ou d’une réunion. Pour une réponse à une réunion, l’organisateur est l’utilisateur qui a répondu.
De Adresse SMTP de l’organisateur d’un rendez-vous ou d’une réunion.
FreeBusyStatus État de disponibilité d’un élément de calendrier, par exemple :
  • Free
  • Busy
  • Tentative
  • Out of office
ResponsibleUser* Utilisateur ou composant responsable de l’action de réunion.
Expéditeur Adresse SMTP de l’expéditeur de l’élément de calendrier.
LogFolder Dossier de boîte aux lettres dans lequel l’entrée du journal a été trouvée. En règle générale, vous pouvez ignorer cette colonne.
Remarque : Les entrées de journalisation dans le dossier Journalisation du calendrier sont supprimées après 31 jours.
OriginalLogFolder Dossier de boîte aux lettres où l'élément de calendrier a été initialement livré.
SharedFolderName
  • Si le dossier est partagé, la valeur est le nom du propriétaire du dossier.
  • Si le dossier n’est pas partagé, la valeur est Not Shared.
ProvientDuCalendrierPartagé Valeur booléenne qui indique si l’élément de calendrier provient d’un calendrier partagé.
ExternalSharingMasterId Identificateur unique de l’élément de calendrier maître partagé en externe. Si l’entrée CDL provient d’une autre boîte aux lettres, la valeur est NotFound.
ReçuPar Adresse e-mail du destinataire de l’élément de calendrier ou valeur vide. En règle générale, vous pouvez ignorer cette colonne.
ReçuEnReprésentation Adresse e-mail du délégué qui a reçu l’élément de calendrier pour le compte du destinataire.
MeetingRequestType Type de demande de réunion, par exemple :
  • NewMeetingRequest
  • FullUpdate
  • InformationalUpdate
  • Response
StartTime* Heure de début de la réunion.
EndTime Heure de fin de la réunion.
OriginalStartDate Date de début d’origine de la réunion. Sauf si une réunion est replanifiée, la valeur est vide.
Fuseau horaire Fuseau horaire de la réunion.
Lieu Emplacement de la réunion.
CalendarItemType Type d’élément de calendrier, par exemple :
  • Single: élément de calendrier non récupérant.
  • Occurrence: élément de calendrier périodique.
  • RecurringMaster: parent d’un ensemble d’éléments de calendrier périodiques.
IsException Valeur booléenne qui indique si l’élément de calendrier est une exception à une série de calendriers périodique.
recurrencePattern Fréquence de périodicité de l’élément de calendrier, par exemple :
  • DailyRecurrence: fréquence de récurrence en jours.
  • WeeklyRecurrence: fréquence de récurrence en semaines et jours.
  • RelativeMonthlyRecurrence: modèle de périodicité mensuelle relative.
  • AbsoluteYearlyRecurrence: Modèle de périodicité annuelle.
Si l’élément de calendrier n’est pas récupérateur, la valeur est vide.
AppointmentAuxiliaryFlags Ensemble d’indicateurs qui fournissent des informations supplémentaires sur le rendez-vous ou la réunion. Si aucun indicateur n’est appliqué, la valeur est vide.
DisplayAttendeesAll Liste des participants pour une demande de réunion. Pour les autres éléments de calendrier, la valeur est NotFound.
AttendeeCount Nombre de participants.
AppointmentState Les valeurs combinées des états de rendez-vous ou de réunion, telles que :
  • Meeting
  • Received
  • Cancelled
Par exemple, la valeur peut indiquer Meeting, Cancelled qu’une réunion a été annulée.
ResponseType* Type de réponse du participant, par exemple :
  • None
  • Organizer
  • Tentative
  • Accept
  • Decline
  • NotResponded
ClientIntent Intention de l’application cliente qui a effectué l’action qui a déclenché l’entrée de journal, par exemple :
  • None
  • MeetingMessageDelivery
La valeur spécifie seulement quelques intentions et est souvent vide.
RendezVousRécurrent Valeur booléenne qui indique si le rendez-vous ou la réunion est périodique.
HasAttachment Valeur booléenne qui indique si l’élément de calendrier a des pièces jointes.
IsCancelled Valeur booléenne qui indique si l’élément de calendrier est annulé.
IsAllDayEvent Valeur booléenne qui indique si l’élément de calendrier est un événement d’une journée entière.
IsSeriesCancelled Valeur booléenne qui indique si la série entière de l’élément de calendrier périodique est annulée. Pour les éléments non récurrents du calendrier, la valeur est vide.
SendMeetingMessagesDiagnostics Valeur composée qui fournit des métriques de modification de réunion que vous pouvez utiliser pour diagnostiquer pourquoi une mise à jour de réunion n’a pas été envoyée à tous les participants à la réunion. Par exemple, considérez la valeur suivante :
RID=194b9d80-3a78-732c-3365-26041d4e76ec;SMMM=2;OAC=4;NAC=;AC=False;IIOM=;PC=4(Item.Body,Item.Subject)
Dans cet exemple, les métriques significatives sont les suivantes :
  • SMMM
    • 0: une notification de mise à jour de réunion n’a pas été envoyée à un participant.
    • 1: une notification de mise à jour de réunion a été envoyée uniquement aux participants ajoutés ou supprimés.
    • 2: une notification de mise à jour de réunion a été envoyée à tous les participants.
  • OAC : nombre d’origine de participants à la réunion.
  • NAC : Nouveau nombre de participants à la réunion. Si le nombre n’est pas modifié, la valeur est vide.
  • AC : valeur booléenne qui indique si la liste des participants a changé.
  • PC : nombre de propriétés de réunion qui ont changé et une liste partielle des propriétés modifiées. Les propriétés modifiées telles que Item.Body ou Item.Subject sont suffisamment importantes pour déclencher une notification de mise à jour de réunion générée par le système pour tous les participants.
Remarque : Certaines métriques peuvent être vides.
AttendeeCollection Liste des participants et détails de leurs réponses, telles que :
  • Adresse e-mail du participant
  • Type de participant :
    • 0: Non spécifié
    • 1:Obligatoire
    • 2:Optionnel
    • 3:Ressource
  • Type de réponse du participant :
    • 0 : Aucun
    • 1:Organisateur
    • 2:Provisoire
    • 3:Accepter
    • 4:Décliner
    • 5: Non répondu
  • Horodatage UTC de la réponse du participant
Si vous n’utilisez pas le -TrackingLogs commutateur lorsque vous exécutez le script Get-CalendarDiagnosticObjectsSummary.ps1, la valeur est vide.
CalendarLogRequestId Identificateur unique de la demande de journal du calendrier.
CleanGlobalObjectId ID de réunion immuable unique.

Filtres de feuille de calcul CDL améliorés

Étant donné que les listes cdL contiennent souvent une grande quantité de données, nous vous recommandons de filtrer les informations inutiles avant de commencer votre analyse. Pour filtrer un CDL, procédez comme suit :

  1. Filtrez la colonne LogType pour n'afficher que les entrées Core.

  2. Filtrez la colonne ItemClass pour supprimer les entrées suivantes :

    • Meeting.Response
    • IPM.Schedule.Meeting.Notification.Forward
  3. Filtrez la colonne LogTimestamp pour supprimer les entrées de journal en dehors de la période d’intérêt.