Partager via


Résoudre les problèmes de requêtes KQL pour le lac de données Microsoft Sentinel

Utilisez la liste de contrôle suivante pour résoudre les problèmes courants lors de l’utilisation des requêtes et des travaux KQL (Langage de requête Kusto) dans le lac de données Microsoft Sentinel.

  • Vérifiez les prérequis avant d’exécuter des requêtes ou des travaux. Pour plus d’informations, consultez Rôles et autorisations pour le lac de données Microsoft Sentinel.

  • Vérifiez que vous avez sélectionné les espaces de travail appropriés avant d’exécuter des requêtes ou des travaux KQL.

  • Vérifiez que toutes les tables et espaces de travail référencés existent et sont accessibles.

  • Utilisez uniquement les opérateurs et commandes KQL pris en charge pour éviter les erreurs d’exécution.

  • Ajustez la requête avec des filtres tels que l’intervalle de temps pour éviter les délais d’expiration des requêtes.

Validation spécifique à l'emploi :

  • Vérifiez que vous disposez du rôle approprié pour le workspace cible lors de la création de nouvelles tables personnalisées via des tâches. Pour plus d’informations, consultez Rôles et autorisations pour le lac de données Microsoft Sentinel.

  • Testez les requêtes dans un éditeur KQL pour intercepter la syntaxe et les erreurs logiques avant de les soumettre en tant que travaux.

  • Vérifiez que les noms des travaux sont uniques dans tous les travaux du locataire, y compris les travaux Notebooks.

  • Vérifiez que le schéma de sortie de requête s’aligne sur la table de destination dans les noms de colonnes et les types de données.

  • Vérifiez l’état du travail et suivez la progression.

  • Reportez-vous aux tableaux d’erreurs suivants pour connaître les messages d’erreur et les étapes de résolution spécifiques.

Remarque

Les données promues au niveau analytique peuvent prendre 15 à 30 minutes pour apparaître dans Advanced Hunting en fonction de la taille des données et de la complexité des requêtes. Les résultats partiels peuvent être promus si la requête du travail dépasse la limite d’une heure.

Messages d’erreur de requête KQL

Message d'erreur Origine Actions suggérées
La table est introuvable ou est vide. La table référencée n’existe pas, est vide ou l’utilisateur n’a pas les autorisations requises. Vérifiez le nom de la table, confirmez la disponibilité des données et vérifiez que l’utilisateur dispose d’un accès approprié. Pour plus d’informations, consultez Rôles et autorisations pour le lac de données Microsoft Sentinel.
Impossible d’accéder à un objet supprimé. Une erreur de service interne s’est produite dans le service principal. Réessayez. Ouvrez un ticket de support si le problème persiste.
Les requêtes expirent au Gateway. Requêtes longues sans filtres de temps. Appliquer des filtres de temps ou appliquer des filtres supplémentaires.
Aucun intervalle de temps défini. Ajoutez un paramètre de temps pour contrôler le coût des requêtes et éviter les délais d’expiration. Les requêtes qui ont une rétrospective illimitée peuvent entraîner des délais d'attente. Appliquer des filtres de temps ou appliquer des filtres supplémentaires.
Fonction non prise en charge. Modifiez votre requête pour supprimer les fonctions qui ne sont pas prises en charge dans le lac de données : ingestion_time(). Les requêtes sur le lac de données ne prennent pas en charge la ingestion_time() fonction. Supprimez ingestion_time() de votre requête et réessayez.
L’exécution des requêtes a pris plus de temps que le délai d’attente affecté et a été abandonnée. • La requête peut être trop complexe ou récupérer un jeu de données volumineux, ce qui lui permet de dépasser le temps d’exécution autorisé.
• Une structure de requête inefficace, telle que des jointures inutiles ou un filtrage excessif, peut contribuer à ralentir les performances.
Optimisez votre requête et réessayez.
401-Non autorisé : cela représente normalement une erreur permanente, et il est peu probable que réessayer soit utile. Détails de l’erreur : DataSource={clusterUri}, DatabaseName={databaseName}. • Le jeton d’authentification utilisé pour accéder au lac de données peut être non valide ou expiré.
• Vous n’avez pas les autorisations nécessaires pour interroger la base de données spécifiée.
Réauthentifier et vérifier les autorisations d’accès.
La requête a appelé une URL externe. L’appel d’une URL externe n’est pas pris en charge pour les requêtes dans Lake. Les requêtes KQL exécutées dans l’environnement data lake ne prennent pas en charge l’appel de points de terminaison externes. Supprimez l’appel d’URL externe de la requête.
L’exécution des requêtes a dépassé les limites autorisées. Les requêtes interactives KQL dans le lac de données sont limitées à 500 000 lignes. Exécutez la requête dans un travail KQL ou utilisez Notebooks.
Impossible de trouver des tables ou elles peuvent ne pas contenir de données. Vérifiez si des tables existent, disposent de données ou d’autorisations pour l’utilisateur. • Les tables spécifiées peuvent ne pas exister dans la base de données.
Vous n’avez peut-être pas les autorisations nécessaires pour accéder aux tables.
• Les tables peuvent exister mais n’ont pas de données, ce qui n’entraîne aucune sortie significative.
Vérifiez l’existence de la table, la disponibilité des données et les autorisations utilisateur.
Le texte de la requête a dépassé la longueur maximale autorisée après l’extension interne. Cela peut se produire lorsque l’opérateur in() est utilisé avec une variable qui contient une grande liste d’éléments. • L’opérateur in() peut être employé avec une liste volumineuse, ce qui peut amener la requête développée à dépasser les limites de requête.
• La requête peut contenir du contenu généré dynamiquement qui entraîne une longueur excessive.
Réduisez la taille de la liste ou simplifiez la requête.
L’exécution des requêtes a dépassé les limites autorisées. Optimisez votre requête et réessayez.
Erreurs sémantiques et de syntaxe, par exemple :
  • Erreur sémantique : opérateur 'projet' : Échec de la résolution de l’expression scalaire nommée 'Timestamp'
  • Erreur sémantique : opérateur 'where' : Échec de résolution de l'expression scalaire nommée 'Type'
  • Erreur de syntaxe : l’opérateur ne peut pas être le premier opérateur dans une requête.
  • Erreur de syntaxe : expression manquante
  • Échec de l’exécution de la requête KQL avec des erreurs de validation : le fragment incomplet est inattendu.
La requête est incorrecte et fait référence à des tables ou des colonnes qui n’existent pas ou qui utilisent des fonctions scalaires non valides. Vérifiez votre requête et réessayez.
Le client ne dispose d'aucun accès à des espaces de travail, ou a fourni des espaces de travail invalides dans le cadre spécifié. La requête utilise un ID d’espace de travail non valide. Entrez l’ID d’espace de travail approprié et réessayez.
Commande de contrôle inattendue L’utilisation des commandes de contrôle (par exemple, show) n’est pas autorisée. Aucune action n’est nécessaire.

Messages d’erreur de travail KQL

Message d'erreur Origine Actions suggérées
La table cible spécifiée n’existe pas dans l’espace de travail de destination. Le nom de la table est incorrect, a été supprimé ou n’a pas encore été créé. Vérifiez le nom de la table et assurez-vous qu’il existe dans l’espace de travail cible avant d’envoyer le travail.
La table source spécifiée n’existe pas. Une ou plusieurs tables sources n’existent pas dans les espaces de travail spécifiés ou ont été récemment supprimées de votre espace de travail. Vérifiez que les tables sources existent dans l’espace de travail spécifié.
L’espace de travail ou le nom de la base de données fourni dans la requête n’est pas valide ou inaccessible. La base de données référencée n’existe pas ou le travail ne dispose pas d’autorisations d’accès. Vérifiez que le nom de la base de données est correct et accessible à partir du contexte de travail.
L’espace de travail cible spécifié n’existe pas dans vos abonnements Azure. L’ID ou le nom de l’espace de travail n’est pas valide ou n’existe pas dans un abonnement Azure dans votre locataire. Validez l’ID de l’espace de travail.
Le schéma de sortie de requête ne correspond pas au schéma de la table de destination. Le nombre ou les noms de colonnes dans la sortie de requête diffèrent du schéma de table de destination. Mettez à jour le schéma de requête ou de table pour vous assurer qu’ils sont alignés.
Les types de données d’une ou plusieurs colonnes dans la sortie de requête ne correspondent pas au schéma de table de destination. Incompatibilité de type entre la sortie de requête et le schéma de table, par exemple chaîne et date/heure. Vérifiez que chaque colonne de la sortie de requête correspond au type de données attendu dans le schéma de table.
La requête KQL n’a pas pu s’exécuter en raison d’erreurs de syntaxe ou de logique. La requête contient une syntaxe non valide, des fonctions non prises en charge, des types de données non pris en charge ou des références incorrectes. Testez la requête dans les requêtes KQL ou Azure Data Explorer avant d’utiliser la requête dans le travail KQL.
Le nom du travail KQL doit être unique. Le nom du travail existe déjà dans le locataire. Indiquez un nom unique pour le travail.
Nom de colonne non valide. Il doit commencer par une lettre et contenir uniquement des lettres, des chiffres et des traits de soulignement (_), _ResourceId. Le travail présente des colonnes de sortie contenant un format non pris en charge. Mettez à jour la requête et renommez les colonnes.