Superviser Azure Event Hubs

Lorsque vous avez des applications critiques et des processus métier basés sur des ressources Azure, vous voulez superviser ces ressources pour connaître leur disponibilité, leurs performances et leur fonctionnement. Cet article décrit les données de surveillance générées par Azure Event Hubs et explique comment les analyser et créer des alertes à leur sujet avec Azure Monitor.

Qu’est-ce qu’Azure Monitor ?

Azure Event Hubs crée des données de surveillance à l’aide d’Azure Monitor, qui est un service de supervision de pile complète dans Azure. Azure Monitor fournit un ensemble complet de fonctionnalités pour superviser vos ressources Azure. Il peut également superviser des ressources dans d’autres clouds et localement.

Commencez avec l’article Supervision de ressources Azure avec Azure Monitor, qui décrit les concepts suivants :

  • Qu’est-ce qu’Azure Monitor ?
  • Coûts associés à la supervision
  • Analyse des données collectées dans Azure
  • Configuration de la collecte des données
  • Outils standard dans Azure pour l’analyse et la génération d’alertes sur les données analysées

Les sections suivantes s’appuient sur cet article en décrivant les données spécifiques collectées pour Azure Event Hubs. Ces sections fournissent également des exemples de configuration de la collecte de données et d’analyse de ces données à l’aide des outils Azure.

Conseil

Pour comprendre les coûts associés à Azure Monitor, consultez Coût et utilisation d’Azure Monitor. Pour comprendre le temps nécessaire à l’affichage de vos données dans Azure Monitor, consultez Durée d’ingestion des données de journal.

Données de surveillance d’Azure Event Hubs

Azure Event Hubs collecte les mêmes types de données de surveillance que d’autres ressources Azure, lesquelles sont décrites dans Données de surveillance de ressources Azure.

Consultez Informations de référence sur les données de surveillance d’Azure Event Hubs pour obtenir une référence détaillée des journaux et des métriques créés par Azure Event Hubs.

Collecte et routage

Les métriques de plateforme et le journal d’activité sont collectés et stockés automatiquement, mais ils peuvent être acheminés vers d’autres emplacements à l’aide d’un paramètre de diagnostic.

Les journaux de ressources ne sont pas collectés ni stockés tant que vous n’avez pas créé un paramètre de diagnostic et que vous ne les acheminez pas vers un ou plusieurs emplacements.

Pour plus d’informations sur la création d’un paramètre de diagnostic à l’aide du portail Azure, de l’interface CLI ou de PowerShell, consultez Créer un paramètre de diagnostic pour collecter des journaux et métriques de plateforme dans Azure. Lorsque vous créez un paramètre de diagnostic, vous spécifiez les catégories de journaux à collecter. Les catégories pour Azure Event Hubs sont répertoriées dans Informations de référence sur les données de surveillance d’Azure Event Hubs.

Notes

Azure Monitor n’ajoute pas les dimensions dans les données de métrique exportées qui sont envoyées aux destinations de type Stockage Azure, Azure Event Hubs, Log Analytics, etc.

Stockage Azure

Si vous utilisez Stockage Azure pour stocker les informations de journalisation des diagnostics, les informations sont stockées dans les conteneurs nommés insights-logs-operationlogs et insights-metrics-pt1m. Exemple d’URL pour un journal des opérations : https://<Azure Storage account>.blob.core.windows.net/insights-logs-operationallogs/resourceId=/SUBSCRIPTIONS/<Azure subscription ID>/RESOURCEGROUPS/<Resource group name>/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/<Namespace name>/y=<YEAR>/m=<MONTH-NUMBER>/d=<DAY-NUMBER>/h=<HOUR>/m=<MINUTE>/PT1H.json. L’URL d’un journal de métriques est similaire.

Hubs d'événements Azure

Si vous utilisez Azure Event Hubs pour stocker les informations de journalisation des diagnostics, les informations sont stockées dans des instances Event Hubs nommées insights-logs-operationlogs et insights-metrics-pt1m. Vous pouvez également sélectionner un Event Hub existant, à l’exception du Event Hub pour lequel vous configurez les paramètres de diagnostic.

Log Analytics

Si vous utilisez Log Analytics pour stocker les informations sur la journalisation des diagnostics, les informations sont stockées dans des tables nommées AzureDiagnostics / AzureMetrics ou des tables spécifiques à des ressources

Important

L’activation de ces paramètres nécessite des services Azure supplémentaires (compte de stockage, hub d’événements ou Log Analytics), ce qui peut augmenter vos coûts. Pour calculer un coût estimé, consultez la rubrique Calculatrice de prix Azure.

Notes

Quand vous activez les métriques dans un paramètre de diagnostic, les informations de dimension ne sont actuellement pas incluses dans les informations envoyées à un compte de stockage, un hub d’événements ou Log Analytics.

Les métriques et les journaux que vous pouvez collecter sont décrits dans les sections suivantes.

Analyser les métriques

Vous pouvez analyser les métriques d’Azure Event Hubs, ainsi que les métriques d’autres services Azure, en sélectionnant Métriques dans la section Azure Monitor de la page d’accueil de votre espace de noms Event Hubs. Consultez Analyser les métriques avec l’Explorateur de métriques Azure Monitor pour plus d’informations sur l’utilisation de cet outil. Pour obtenir la liste des métriques de plateforme collectées, consultez Informations de référence sur les données de surveillance d’Azure Event Hubs– Métriques.

Capture d’écran montrant Metrics Explorer pour un espace de noms Event Hubs.

Pour référence, vous pouvez voir une liste de toutes les métriques de ressources prises en charge dans Azure Monitor.

Conseil

Les données des métriques d’Azure Monitor sont disponibles pendant 90 jours. Toutefois, la création de graphiques ne permet de visualiser que 30 jours. Par exemple, si vous souhaitez visualiser une période de 90 jours, vous devez la diviser en 3 graphiques de 30 jours sur la période de 90 jours en question.

Filtrer et fractionner

Pour les métriques qui prennent en charge les dimensions, vous pouvez appliquer des filtres à l’aide d’une valeur de dimension. Par exemple, ajoutez un filtre avec EntityName défini sur le nom d’un Event Hub. Vous pouvez également fractionner une métrique par dimension pour comparer différents segments de celle-ci entre eux. Pour plus d’informations sur le filtrage et le fractionnement, consultez Fonctionnalités avancées d’Azure Monitor.

Capture d’écran montrant Metrics Explorer pour un espace de noms Event Hubs avec un filtre.

Analyser les journaux d’activité

L’utilisation d’Azure Monitor Log Analytics vous oblige à créer une configuration de diagnostic et à activer Envoyer des informations à Log Analytics. Pour plus d’informations, consultez la section Collecte et routage. Les données des journaux Azure Monitor sont stockées dans des tables, chacune ayant son propre ensemble de propriétés uniques. Azure Event Hubs a la capacité d’envoyer les journaux vers l’une des deux tables de destination – Azure Diagnostic ou les tables spécifiques aux ressources dans Log Analytics. Pour une référence détaillée des journaux et des métriques, consultez Informations de référence sur la supervision des données Azure Event Hubs.

Important

Quand vous sélectionnez Journaux dans le menu Azure Event Hubs, Log Analytics s’ouvre avec l’étendue de requête définie sur l’espace de travail actuel. Cela signifie que les requêtes de journal n’incluront que les données de cette ressource. Si vous voulez exécuter une requête qui inclut des données d’autres bases de données ou des données provenant d’autres services Azure, sélectionnez Journaux dans le menu Azure Monitor. Pour plus d’informations, consultez Étendue de requête de journal et intervalle de temps dans la fonctionnalité Log Analytics d’Azure Monitor.

Exemples de requêtes Kusto

Important

Quand vous sélectionnez Journaux dans le menu Azure Event Hubs, Log Analytics s’ouvre avec l’étendue de requête définie sur l’espace de noms Azure Event Hubs. Cela signifie que les requêtes de journal n’incluront que les données de cette ressource. Si vous voulez exécuter une requête qui inclut des données provenant d’autres espaces de travail ou d’autres services Azure, sélectionnez Journaux dans le menu Azure Monitor. Pour plus d’informations, consultez Étendue de requête de journal et intervalle de temps dans la fonctionnalité Log Analytics d’Azure Monitor.

Voici des exemples de requêtes que vous pouvez utiliser pour vous aider à superviser vos ressources Azure Event Hubs :

  • Obtenir les erreurs des sept derniers jours

    AzureDiagnostics
    | where TimeGenerated > ago(7d)
    | where ResourceProvider =="MICROSOFT.EVENTHUB"
    | where Category == "OperationalLogs"
    | summarize count() by "EventName"
    
    
  • Obtenir les journaux d’audit du runtime générés au cours de la dernière heure.

    AzureDiagnostics
    | where TimeGenerated > ago(1h)
    | where ResourceProvider =="MICROSOFT.EVENTHUB"
    | where Category == "RuntimeAuditLogs"    
    
  • Obtenir les tentatives d’accès à un coffre de clés ayant provoqué une erreur « clé introuvable ».

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.EVENTHUB" 
    | where Category == "Error" and OperationName == "wrapkey"
    | project Message
    
  • Obtenir les opérations effectuées avec un coffre de clés pour désactiver ou restaurer la clé.

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.EVENTHUB"
    | where Category == "info" and OperationName == "disable" or OperationName == "restore"
    | project Message
    
  • Obtenir les échecs de capture et leur durée en secondes

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.EVENTHUB"
    | where Category == "ArchiveLogs"
    | summarize count() by "failures", "durationInSeconds"    
    

Utiliser les journaux d’exécution

Azure Event Hubs vous permet de surveiller et d’auditer les interactions de plan de données de vos applications clientes à l’aide des journaux d’audit du runtime et des journaux de métriques d’application.

À l’aide des journaux d’audit d’exécution, vous pouvez capturer des informations de diagnostic agrégées pour toutes les opérations d’accès au plan de données, telles que la publication ou la consommation d’événements. Les journaux des métriques d’application capturent les données agrégées sur certaines métriques d’exécution (telles que le décalage du consommateur et les connexions actives) liées aux applications clientes sont connectées à Event Hubs.

Notes

Les journaux d’audit du runtime sont disponibles uniquement avec les niveaux Premium et Dédié.

Activer les journaux d’exécution

Vous pouvez activer la journalisation de l’audit du runtime ou des métriques d’application en sélectionnant Paramètres de diagnostic dans la section Supervision de la page d’espace de noms Event Hubs du portail Azure. Sélectionnez Ajouter un paramètre de diagnostic comme illustré dans l’image suivante.

Capture d’écran montrant la page Paramètres de diagnostic pour un espace de noms Event Hubs.

Vous pouvez ensuite activer les catégories de journaux RuntimeAuditLogs ou ApplicationMetricsLogs en fonction des besoins.

Capture d’écran montrant les journaux d’audit du runtime et des métriques d’application activés.

Une fois les journaux du runtime activés, Event Hubs commence à les collecter et à les stocker selon la configuration des paramètres de diagnostic.

Publier et consommer des exemples de données

Pour collecter des exemples de journaux d’audit du runtime dans votre espace de noms Event Hubs, vous pouvez publier et consommer des exemples de données en utilisant des applications clientes, qui sont basées sur le Kit de développement logiciel (SDK) Event Hubs, lequel utilise le protocole AMQP (Advanced Message Queuing Protocol), ou en utilisant n’importe quelle application cliente Apache Kafka.

Analyser les journaux d’audit d’exécution

Vous pouvez analyser les journaux d’audit d’exécution collectés à l’aide de l’exemple de requête suivant.

AzureDiagnostics
| where TimeGenerated > ago(1h)
| where ResourceProvider == "MICROSOFT.EVENTHUB"
| where Category == "RuntimeAuditLogs"

Jusqu’à l’exécution de la requête, vous devriez être en mesure d’obtenir les journaux d’audit correspondants au format suivant. Image montrant le résultat d’un exemple de requête pour analyser les journaux d’audit du runtime.

En analysant ces journaux, vous devez pouvoir auditer la façon dont chaque application cliente interagit avec Event Hubs. Chaque champ associé aux journaux d’audit du runtime est défini dans les informations de référence sur les journaux d’audit du runtime.

Analyser les métriques de l’application

Vous pouvez analyser les journaux des métriques de l’application collectés à l’aide de l’exemple de requête suivant.

AzureDiagnostics
| where TimeGenerated > ago(1h)
| where Category == "ApplicationMetricsLogs"

Parmi les métriques d’application figurent les métriques de runtime suivantes. Image montrant le résultat d'une requête type pour analyser les métriques d'une application.

Par conséquent, vous pouvez utiliser des métriques d’application pour surveiller les métriques d’exécution telles que le décalage du consommateur ou la connexion active à partir d’une application cliente donnée. Les champs associés aux journaux d’audit du runtime sont définis dans les informations de référence sur les journaux de métriques d’application.

Alertes

Vous pouvez accéder aux alertes pour Azure Event Hubs en sélectionnant Alertes dans la section Azure Monitor de la page d’accueil de votre espace de noms Event Hubs. Pour plus d’informations sur la création d’alertes, consultez Créer, afficher et gérer des alertes de métrique à l’aide d’Azure Monitor.

Étapes suivantes