Schéma des journaux des métriques d’appels
Ce document explique les journaux ACSCallingMetrics disponibles via Azure Monitor sous la forme de journaux de ressources.
Les journaux de métriques d’appels sont utilisés dans le tableau de bord des insights vocaux et vidéo pour visualiser des graphiques à long terme de fiabilité, de qualité et de performances en fonction du nombre d’appels réussis et ayant échoué d’API du Kit de développement logiciel (SDK) appelant, appels de diverses opérations. Utilisez ces journaux pour mieux comprendre les métriques d’appel agrégées quotidiennes sur plusieurs dimensions pour vos charges de travail de communication. Les journaux de métriques d’appels contiennent des métriques d’appel agrégées dans des emplacements quotidiens en fonction d’attributs tels que la version du Kit de développement logiciel (SDK), le nom du système d’exploitation et le sous-code d’erreur.
Comment utiliser les journaux des appels
Nous vous recommandons de collecter tous les journaux des appels disponibles dans une ressource d’analytique des journaux d’activité afin de pouvoir surveiller votre utilisation des appels et d’améliorer la qualité des appels, et pour pouvoir recevoir de nouveaux journaux d’Azure Communication Services dès que nous les publions.
Vous pouvez utiliser deux outils principaux pour surveiller vos appels et améliorer leur qualité.
Nous vous recommandons d’utiliser les tableaux de bord des insights vocaux et vidéo pour démarrer des investigations de qualité et d’utiliser les diagnostics d’appels si nécessaire pour explorer des appels individuels quand vous avez besoin de détails précis.
Concepts de données
Important
Vous devez collecter les journaux si vous souhaitez les analyser. Pour plus d’informations, veuillez consulter la rubrique Comment stocker les journaux ?
Azure ne stocke pas les données de vos journaux d’appels, sauf si vous activez ces paramètres de diagnostic spécifiques. Vos données d’appels ne sont pas disponibles rétroactivement. Vous accumulez des données une fois les paramètres de diagnostic créés.
Ces métriques sont visualisées dans le tableau de bord Insights vocaux et vidéo, nous vous recommandons de consulter ces visuels pour comprendre comment vous pouvez utiliser ces données si vous souhaitez créer votre propre tableau de bord ou personnaliser les tableaux de bord existants. Vous pouvez modifier le classeur existant dans le tableau de bord Insights vocaux et vidéo pour afficher les requêtes derrière chaque visuel.
Ce schéma de journal comporte une propriété appelée MetricName
qui détaille les différentes métriques envoyées dans ce schéma. Les métriques sont réparties en deux catégories principales : métriques d’API et métriques de diagnostics accessibles à l’utilisateur (UFD). Les métriques UFD sont ensuite divisées en deux groupes qui expliquent le volume des occurrences UFD et la façon dont les UFD se sont remis de ces occurrences pendant les appels.
Puisque ces métriques vous donnent une vue d’ensemble de votre ressource d’appel entière, vous pouvez configurer des alertes automatisées si une métrique tombe. Pour savoir comment configurer des alertes automatisées, veuillez consulter le document : Tutoriel : créer une alerte de recherche de journal pour une ressource Azure
Catégories de métriques
Métriques de l’API
Ces métriques mesurent à la fois les réussites et les défaillances (dcount) des API publiques du Kit de développement logiciel (SDK) appelant, par exemple (désactiver le son, rejoindre, et bien plus encore).
- reliability/api/CreateView/Local
- reliability/api/Join
- reliability/api/StartVideo
- reliability/api/AcceptIncomingCall
- reliability/api/CreateView/Remote
- reliability/api/StopVideo
- reliability/api/CallAgentInit
- reliability/api/StartCall
Métriques de diagnostics accessibles à l’utilisateur (UFD)
- Pour en savoir plus sur les UFD, veuillez consulter la rubrique : Diagnostics accessibles à l’utilisateur
Métriques de legs de diagnostics accessibles par l’utilisateur (UFD) : (nombre dcount de participants (legs) ayant au moins un UFD incorrect lors d’un appel)
Fournit les nombres de participants affectés par un UFD lors d’un appel.
- reliability/leg/UFD/NetworkReconnect
- reliability/leg/UFD/CameraStoppedUnexpectedly
- reliability/leg/UFD/MicrophoneMuteUnexpectedly
- reliability/leg/UFD/NetworkReceiveQuality
- reliability/leg/UFD/MicrophonePermissionDenied
- reliability/leg/UFD/MicrophonePermissionDenied
- reliability/leg/UFD/NoMicrophoneDevicesEnumerated
- reliability/leg/UFD/CameraPermissionDenied
- reliability/leg/UFD/CameraStartFailed
- reliability/leg/UFD/CameraStoppedUnexpectedly
- reliability/leg/UFD/CapturerStartFailed
- reliability/leg/UFD/CameraStartTimedOut
- reliability/leg/UFD/NoSpeakerDevicesEnumerated
- reliability/leg/UFD/CameraFreeze
- reliability/leg/UFD/NetworkRelaysNotReachable
- reliability/leg/UFD/SpeakingWhileMicrophoneIsMuted
- reliability/leg/UFD/NoNetwork
- reliability/leg/UFD/NetworkSendQuality
- reliability/leg/UFD/ScreenshareRecordingDisabled
Métriques de récupération de l’API Diagnostics accessibles à l’utilisateur (UFD) : (nombre dcount d’occurrences qui ont eu un problème, mais qui se sont ensuite remises lors d’un appel)
Fournit les nombres d’UFD déclenchés lors d’un appel par le Kit développement logiciel (SDK) appelant, mais qui se sont remis par la suite pendant l’appel. Par exemple, si l’UFD NetworkReconnect
a été déclenché une fois dans un appel, mais que le réseau s’est correctement remis pendant l’appel. Dans cet exemple, le nombre d’UFD de récupération d’API correcte est supérieur ou égal au nombre de métriques de legs d’UFD incorrectes. Vous pouvez calculer un taux de récupération d’UFD de 100 %.
- reliability/api/UFD/recovery/NetworkReceiveQuality
- reliability/api/UFD/recovery/NetworkReconnect
- reliability/api/UFD/recovery/CameraStoppedUnexpectedly
- reliability/api/UFD/recovery/NetworkSendQuality
- reliability/api/UFD/recovery/MicrophoneMuteUnexpectedly
- reliability/api/UFD/recovery/MicrophoneNotFunctioning
- reliability/api/UFD/recovery/CapturerStoppedUnexpectedly
- reliability/api/UFD/recovery/CameraFreeze
- reliability/api/UFD/recovery/CameraStartFailed
- reliability/api/UFD/recovery/NoMicrophoneDevicesEnumerated
- reliability/api/UFD/recovery/MicrophonePermissionDenied
- reliability/api/UFD/recovery/CameraPermissionDenied
- reliability/api/UFD/recovery/NoSpeakerDevicesEnumerated
- reliability/api/UFD/recovery/CapturerStartFailed
- reliability/api/UFD/recovery/ScreenshareRecordingDisabled
- reliability/api/UFD/recovery/NoNetwork
- reliability/api/UFD/recovery/CameraStartTimedOut
- reliability/api/UFD/recovery/SpeakingWhileMicrophoneIsMuted
- reliability/api/UFD/recovery/NetworkRelaysNotReachable
Définitions des données
Schéma des journaux des métriques d’appels
Ce tableau décrit chaque propriété.
Propriété | Description |
---|---|
TimeGenerated |
Horodatage (UTC) de la génération du journal. |
OperationName |
Opération associée à l’enregistrement de journal. |
OperationVersion |
Version de l’API associée à l’opération. Ou version de l’opération s’il n’y a pas de version d’API. |
Category |
Catégorie de journal de l’événement. Les journaux avec la même catégorie de journal et le même type de ressource partagent les mêmes champs de propriétés. |
CorrelationId |
GUID unique qui met en corrélation des événements dans la même dimension. |
TimestampMax |
Horodatage maximal en UTC pour chaque dimension. |
TimestampBin |
Classe d’horodatage quotidien pour chaque dimension. |
MetricValueAvg |
Valeur moyenne de la métrique pour chaque dimension. |
Unit |
Unité de la métrique. |
Goal |
Seuil défini pour qu’un leg réussisse. |
FailedLegsDcount |
Nombre de participants (legs) ayant échoué par dimension. |
SuccessLegsDcount |
Nombre de participants ayant réussi (legs) par dimension. |
CallsDcount |
Nombre total d’appels par dimension. |
LegsDcount |
Nombre total de participants par dimension. |
SubCode |
Dimension indiquant le sous-code. |
CallType |
Dimension indiquant le type d’appel. |
Platform |
Dimension de la plateforme (par exemple, iOS, Android, Windows). |
ResultType |
Dimension de type de résultat (par exemple, catégorie réussite ou défaillance). |
DeviceModel |
Dimension indiquant le modèle de l’appareil. |
DeviceBrand |
Dimension indiquant la marque de l’appareil. |
DeviceFamily |
Dimension indiquant la famille de l’appareil. |
DeviceOsVersionMajor |
Numéro de la version majeure du système d’exploitation de l’appareil. |
DeviceOsVersionMinor |
Numéro de la version mineure du système d’exploitation de l’appareil. |
DeviceBrowserVersionMinor |
Numéro de la version mineure du navigateur de l’appareil. |
DeviceBrowserVersionMajor |
Numéro de la version majeure du navigateur de l’appareil. |
DeviceOsName |
Nom du système d’exploitation de l’appareil. |
DeviceBrowser |
Nom du navigateur de l’appareil. |
SdkVersion |
Version du Kit de développement logiciel (SDK) en cours d’exécution sur le client. |
MetricName |
Nom de la métrique mesurée. |
Exemples de données pour différents types d’appel
Journal des métriques d’appels P2P et d’appels de groupe
Pour le journal des métriques d’appels, il n’existe aucune différence entre les scénarios d’appels P2P et d’appels de groupe. Le code suivant est un exemple générique montrant le schéma de ces journaux d’activité.
Journaux des métriques d’appels
Voici deux exemples de lignes du journal des métriques d’appels :
"properties": {
"TenantId": "4e7403f8-515a-4df5-8e13-59f0e2b76e3a",
"TimeGenerated": "2025-02-03T05:17:39.1840000Z",
"OperationName": "CallingMetrics",
"OperationVersion": "1.0-dev",
"Category": "CallingMetrics",
"CorrelationId": "1f27dac9e6d64c82cafdd6da73cdb785",
"TimestampMax": "2025-02-02T14:35:55.0000000Z",
"TimestampBin": "2025-02-02T00:00:00.0000000Z",
"MetricValueAvg": 100,
"Unit": "percentage",
"Goal": ">= 100.0",
"FailedLegsDcount": 0,
"SuccessLegsDcount": 2,
"CallsDcount": 1,
"LegsDcount": 2,
"SubCode": 0,
"CallType": "1 to 1",
"Platform": "Web",
"ResultType": "Succeeded",
"DeviceModel": "",
"DeviceBrand": "",
"DeviceFamily": "Other",
"DeviceOsVersionMajor": "",
"DeviceOsVersionMinor": 10,
"DeviceBrowserVersionMinor": 0,
"DeviceBrowserVersionMajor": 132,
"DeviceOsName": "Windows",
"DeviceBrowser": "Edge",
"SdkVersion": "1.32.1.0_stable",
"MetricName": "reliability/leg/UFD/CameraStoppedUnexpectedly",
"SourceSystem": "",
"Type": "ACSCallingMetrics",
"_ResourceId": "/subscriptions/50ad1522-5c2c-4d9a-a6c8-67c11ecb75b8/resourcegroups/calling-sample-apps/providers/microsoft.communication/communicationservices/corertc-test-apps"
}
"properties": {
"TenantId": "4e7403f8-515a-4df5-8e13-59f0e2b76e3a",
"TimeGenerated": "2025-02-03T05:17:39.1840000Z",
"OperationName": "CallingMetrics",
"OperationVersion": "1.0-dev",
"Category": "CallingMetrics",
"CorrelationId": "1f27dac9e6d64c82cafdd6da73cdb785",
"TimestampMax": "2025-02-02T14:35:55.0000000Z",
"TimestampBin": "2025-02-02T00:00:00.0000000Z",
"MetricValueAvg": 100,
"Unit": "percentage",
"Goal": ">= 100.0",
"FailedLegsDcount": 0,
"SuccessLegsDcount": 2,
"CallsDcount": 1,
"LegsDcount": 2,
"SubCode": 0,
"CallType": "1 to 1",
"Platform": "Web",
"ResultType": "Succeeded",
"DeviceModel": "",
"DeviceBrand": "",
"DeviceFamily": "Other",
"DeviceOsVersionMajor": "",
"DeviceOsVersionMinor": 10,
"DeviceBrowserVersionMinor": 0,
"DeviceBrowserVersionMajor": 132,
"DeviceOsName": "Windows",
"DeviceBrowser": "Edge",
"SdkVersion": "1.32.1.0_stable",
"MetricName": "reliability/leg/UFD/CameraStoppedUnexpectedly",
"SourceSystem": "",
"Type": "ACSCallingMetrics",
"_ResourceId": "/subscriptions/50ad1522-5c2c-4d9a-a6c8-67c11ecb75b8/resourcegroups/calling-sample-apps/providers/microsoft.communication/communicationservices/corertc-test-apps"
}
Forum aux questions
Comment stocker les journaux ?
La section suivante décrit cette exigence.
Les journaux Azure Communication Services ne sont pas stockés dans votre compte Azure par défaut. Vous devez donc commencer à les stocker pour que les outils comme le tableau de bord des insights vocaux et vidéo et les diagnostics d’appels fonctionnent. Pour collecter les journaux des appels, vous devez activer un paramètre de diagnostic qui dirige les données d’appel vers un espace de travail Log Analytics.
Les données ne sont pas stockées rétroactivement, par conséquent vous commencez à capturer les journaux des appels uniquement après avoir configuré le paramètre de diagnostic.
Pour ajouter des paramètres de diagnostic à votre ressource, suivez les instructions de Activer les journaux via des paramètres de diagnostic dans Azure Monitor. Nous vous recommandons de collecter tous les journaux initialement. Une fois que vous avez compris les fonctionnalités d’Azure Monitor, déterminez les journaux que vous voulez conserver et pendant combien de temps. Quand vous ajoutez votre paramètre de diagnostic, vous êtes invité à sélectionner des journaux. Pour collecter tous les journaux, sélectionnez allLogs.
Le volume de vos données, leur conservation et leur utilisation dans Log Analytics au sein d’Azure Monitor sont facturés via les compteurs de données Azure existants. Nous vous recommandons d’analyser vos stratégies d’utilisation et de conservation des données pour des considérations de coût si nécessaire. Pour plus d’informations, consultez Contrôler les coûts.
Si vous avez plusieurs ID de ressource Azure Communications Services, vous devez activer ces paramètres pour chaque ID de ressource.
Étapes suivantes
Pour consulter la vue d’ensemble de tous les journaux vocaux et vidéo, consultez : Vue d’ensemble des journaux d’appels Azure Communication Services
Découvrez les bonnes pratiques pour gérer la qualité et la fiabilité de vos appels dans : Améliorer et gérer la qualité des appels
Découvrez le tableau de bord des insights pour surveiller les journaux d’appels vocaux et d’appels vidéo.
Découvrez comment utiliser les journaux d’appel pour diagnostiquer les problèmes de qualité et de fiabilité des appels avec Diagnostics d’appel dans : Diagnostics d’appel