Interroger des données dans Azure Monitor avec Azure Data Explorer

Azure Data Explorer prend en charge les requêtes interservices entre Azure Data Explorer, Application Insights (AI) et Log Analytics (LA). Vous pouvez ensuite interroger votre espace de travail Log Analytics ou Application Insights à l’aide des outils de requête Azure Data Explorer et d’une requête interservice. L’article montre comment créer une requête interservice et comment ajouter l’espace de travail Log Analytics ou Application Insights à l’interface utilisateur web d’Azure Data Explorer.

Le flux de requêtes interservices Azure Data Explorer :

Diagramme montrant le flux du proxy Azure Data Explorer.

Ajouter un espace de travail Log Analytics/Application Insights aux outils clients Azure Data Explorer

Ajoutez un espace de travail Log Analytics ou Application Insights aux outils clients Azure Data Explorer pour permettre l’exécution de requêtes interservices sur vos clusters.

  1. Vérifiez que votre cluster natif Azure Data Explorer (comme le cluster d’aide) apparaît dans le menu de gauche avant de vous connecter à votre cluster Log Analytics ou Application Insights.

    Capture d’écran montrant le menu gauche avec le cluster d’aide sélectionné en tant que cluster natif Azure Data Explorer.

  2. Dans l’interface utilisateur d’Azure Data Explorer (https://dataexplorer.azure.com/clusters), sélectionnez Ajouter un cluster.

  3. Dans la fenêtre Ajouter un cluster , ajoutez l’URL du cluster Log Analytics (LA) ou Application Insights (AI).

    • Pour Log Analytics (LA) : https://ade.loganalytics.io/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>
    • Pour Application Insights (IA) : https://ade.applicationinsights.io/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.insights/components/<ai-app-name>

    Notes

    Spécifiez https://ade.applicationinsights.io/subscriptions/<subscription-id> pour afficher toutes les bases de données de l’abonnement. Cette syntaxe fonctionne également pour les clusters Log Analytics.

  4. Sélectionnez Ajouter.

    Capture d’écran montrant la fenêtre Ajouter un cluster.

    Notes

    • Il existe différents points de terminaison pour les éléments suivants :
    • Azure Government- adx.monitor.azure.us/
    • Azure Chine - adx.monitor.azure.cn/
    • Si vous ajoutez une connexion à plusieurs espaces de travail Log Analytics/Application insights, donnez un nom différent à chacun d'entre eux. Sinon ils auront tous le même nom dans le volet gauche.
  5. Une fois la connexion établie, votre espace de travail Log Analytics ou Application Insights apparaît dans le volet gauche avec votre cluster Azure Data Explorer natif.

    Capture d’écran montrant les clusters Log Analytics et Azure Data Explorer.

Notes

Les requêtes que vous exécutez à partir d’Azure Data Explorer sur des données dans Azure Monitor sont soumises à des limites de requêtes inter-ressources.

Exécuter des requêtes

Vous pouvez exécuter les requêtes en utilisant des outils clients qui prennent en charge les requêtes Kusto, par exemple : Kusto Explorer, l’interface utilisateur web d’Azure Data Explorer, Jupyter Kqlmagic, Flow, PowerQuery, PowerShell, Lens, l’API REST.

Notes

La fonctionnalité de requête interservice est uniquement utilisée pour l’extraction de données. Pour plus d’informations, consultez Prise en charge des fonctions.

Conseil

  • La base de données doit porter le même nom que la ressource spécifiée dans la requête interservice. Les noms respectent la casse.
  • Dans les requêtes interservices, vérifiez que les noms des applications Application Insights et des espaces de travail Log Analytics sont corrects.
  • Si les noms contiennent des caractères spéciaux, ils sont remplacés par l’encodage d’URL dans la requête interservice.
  • Si les noms contiennent des caractères qui ne respectent pas les règles de nom d’identificateur KQL, ils sont remplacés par le caractère tiret -.

Interrogation directe sur vos espaces de travail Log Analytics ou Application Insights à partir des outils clients Azure Data Explorer

Vous pouvez exécuter des requêtes sur vos espaces de travail Log Analytics ou Application Insights à partir des outils clients Azure Data Explorer.

  1. Vérifiez que votre espace de travail est sélectionné dans le volet gauche.

  2. Exécutez la requête suivante :

Perf | take 10 // Demonstrate cross-service query on the Log Analytics workspace

Capture d’écran montrant l’espace de travail Log Analytics Requête.

Interrogation croisée de votre espace de travail Log Analytics ou Application Insights et du cluster natif Azure Data Explorer

Lorsque vous exécutez des requêtes interservices de cluster, vérifiez que votre cluster natif Azure Data Explorer est sélectionné dans le volet de gauche. Les exemples suivants illustrent la combinaison de tables de cluster Azure Data Explorer (à l’aide de union) avec un espace de travail Log Analytics.

Exécutez les requêtes suivantes :

union StormEvents, cluster('https://ade.loganalytics.io/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>').database('<workspace-name>').Perf
| take 10
let CL1 = 'https://ade.loganalytics.io/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>';
union <ADX table>, cluster(CL1).database(<workspace-name>).<table name>

Capture d’écran montrant une requête interservice effectuée depuis l’interface utilisateur web d’Azure Data Explorer.

Conseil

L'utilisation de l'opérateur join, au lieu de l'opérateur union, peut nécessiter un hint pour l'exécuter sur un cluster natif Azure Data Explorer.

Joindre les données d’un cluster Azure Data Explorer dans un locataire avec une ressource Azure Monitor située dans un autre

Les requêtes interlocataires entre les services ne sont pas prises en charge. Vous êtes connecté à un seul locataire pour exécuter la requête qui couvre les deux ressources.

Si la ressource Azure Data Explorer est dans le locataire « A » et que l’espace de travail Log Analytics est dans le locataire « B », utilisez une des deux méthodes suivantes :

  1. Azure Data Explorer vous permet d’ajouter des rôles pour les principaux dans différents locataires. Ajoutez votre ID d’utilisateur dans le locataire « B » en tant qu’utilisateur autorisé sur le cluster Azure Data Explorer. Validez la propriété 'TrustedExternalTenant' sur le cluster Azure Data Explorer qui contient le locataire « B ». Exécutez la requête croisée intégralement dans le locataire « B ».

  2. Utilisez Lighthouse pour projeter la ressource Azure Monitor dans le locataire « A ».

Se connecter à des clusters Azure Data Explorer à partir de différents locataires

Kusto Explorer vous connecte automatiquement au locataire auquel le compte d’utilisateur appartient à l’origine. Pour accéder aux ressources d’autres locataires avec le même compte d’utilisateur, le tenantId doit être spécifié explicitement dans la chaîne de connexion : Data Source=https://ade.applicationinsights.io/subscriptions/SubscriptionId/resourcegroups/ResourceGroupName;Initial Catalog=NetDefaultDB;AAD Federated Security=True;Authority ID=TenantId

Prise en charge des fonctions

Les requêtes interservices Azure Data Explorer prennent en charge les fonctions d’Application Insights et de Log Analytics. Cela permet aux requêtes interclusters de référencer directement une fonction tabulaire Azure Monitor. Les commandes suivantes sont prises en charge avec la requête interservices :

  • .show functions
  • .show function {FunctionName}
  • .show database {DatabaseName} schema as json

L’image suivante illustre un exemple d’interrogation d’une fonction tabulaire à partir de l’interface utilisateur web d’Azure Data Explorer. Pour utiliser la fonction, exécutez son nom dans la fenêtre de requête.

Capture d’écran montrant une requête de fonction tabulaire depuis l’interface utilisateur web d’Azure Data Explorer.

Exemples de syntaxe supplémentaire

Les options de syntaxe suivantes sont disponibles lors de l’appel des clusters Application Insights ou Log Analytics :

Description de la syntaxe Application Insights Log Analytics
Base de données dans un cluster qui contient uniquement la ressource définie dans cet abonnement (recommandé pour les requêtes entre clusters) cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.insights/components/<ai-app-name>').database('<ai-app-name>') cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>').database('<workspace-name>')
Cluster contenant l’ensemble des applications/espaces de travail de cet abonnement cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>') cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>')
Cluster qui contient l’ensemble des applications/espaces de travail de l’abonnement et qui sont membres de ce groupe de ressources cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>') cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>')
Cluster qui contient uniquement la ressource définie dans cet abonnement cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.insights/components/<ai-app-name>') cluster('https://adx.monitor.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>')
Pour les points de terminaison dans UsGov cluster('https://adx.monitor.azure.us/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>')
Pour les points de terminaison dans China 21Vianet cluster('https://adx.monitor.azure.cn/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<workspace-name>')