Transformations de la collecte de données dans Azure Monitor
Avec les transformations dans Azure Monitor, vous pouvez filtrer ou modifier des données entrantes avant qu’elles ne soient envoyées à l’espace de travail Log Analytics. Cet article fournit une description simple des transformations et de la façon dont elles sont implémentées. Il fournit des liens vers d’autres contenus permettant de créer une transformation.
Les transformations sont effectuées dans Azure Monitor dans le pipeline d’ingestion de données une fois que la source de données a remis les données et avant leur envoi à la destination. La source de données peut effectuer son propre filtrage avant d’envoyer des données, mais s’appuie ensuite sur la transformation pour d’autres manipulations avant qu’elles ne soient envoyées à destination.
Les transformations sont définies dans une règle de collecte de données (DCR) et utilisent une instruction KQL (Kusto Query Language) qui est appliquée individuellement à chaque entrée dans les données entrantes. Elle doit comprendre le format des données entrantes et créer la sortie dans la structure attendue par la destination.
Le diagramme suivant illustre le processus de transformation des données entrantes et montre un exemple de requête qui peut être utilisé. Pour plus d’informations sur la création de requêtes de transformation, consultez Structure de transformation dans Azure Monitor.
Pourquoi utiliser les transformations
Le tableau suivant décrit les différents objectifs que vous pouvez atteindre en utilisant des transformations.
Category | Détails |
---|---|
Supprimer des données sensibles | Vous avez probablement une source de données qui envoie des informations que vous ne souhaitez pas stocker pour des raisons de confidentialité ou de conformité. Filtrez les informations sensibles. Filtrez des lignes entières ou des colonnes particulières qui contiennent des informations sensibles. Obfusquez les informations sensibles. Remplacez les informations, telles que les chiffres d’une adresse IP ou d’un numéro de téléphone, par un caractère commun. Envoyez à une autre table. Envoyez des enregistrements sensibles à une autre table avec une autre configuration de contrôle d’accès en fonction du rôle. |
Enrichir des données avec des informations supplémentaires ou calculées | Utilisez une transformation pour ajouter des informations aux données qui fournissent un contexte métier ou simplifie l’interrogation des données ultérieurement. Ajoutez une colonne avec davantage d’informations. Par exemple, vous pouvez ajouter une colonne identifiant si une adresse IP dans une autre colonne est interne ou externe. Ajoutez des informations spécifiques à l’entreprise. Par exemple, vous pouvez ajouter une colonne indiquant une division d’entreprise en fonction des informations d’emplacement dans d’autres colonnes. |
Réduire les coûts des données | Étant donné que des coûts d’ingestion vous sont facturés pour toute donnée envoyée à un espace de travail Log Analytics, vous souhaitez filtrer les données dont vous n’avez pas besoin pour réduire ces coûts. Supprimez toute la ligne. Par exemple, vous avez probablement un paramètre de diagnostic pour collecter les journaux d’une ressource en particulier, mais n’avez pas besoin de toutes les entrées de journal qu’elle génère. Créez une transformation qui filtre les enregistrements qui correspondent à un certain critère. Supprimez une colonne de chaque ligne. Par exemple, vos données incluent probablement des colonnes avec des données redondantes ou dont la valeur est minimale. Créez une transformation qui filtre les colonnes qui ne sont pas requises. Analysez les données importantes d’une colonne. Vous avez probablement une table avec des données précieuses qui se cachent dans une colonne particulière. Utilisez une transformation pour analyser les données précieuses dans une nouvelle colonne et supprimer l’original. Envoyez certaines lignes vers les journaux de base. Envoyez des lignes dans vos données qui nécessitent des fonctionnalités de requête de base à des tables de journaux de base pour un coût d’ingestion inférieur. |
Mettre en forme les données pour la destination | Vous pouvez avoir une source de données qui envoie des données dans un format qui ne correspond pas à la structure de la table de destination. Utilisez une transformation pour reformater les données vers le schéma requis. |
Tables prises en charge
Consultez Tables qui prennent en charge les transformations dans les journaux Azure Monitor pour obtenir la liste des tables qui peuvent être utilisées avec des transformations. Vous pouvez également utiliser la référence de données Azure Monitor qui répertorie les attributs de chaque table, notamment si elle prend en charge les transformations. En plus de ces tables, toutes les tables personnalisées (suffixe de _CL) sont également prises en charge.
- Toute table Azure listée dans Tables prenant en charge les transformations dans les journaux Azure Monitor. Vous pouvez également utiliser la référence de données Azure Monitor qui répertorie les attributs de chaque table, notamment s’il prend en charge les transformations.
- Toute table personnalisée créée pour l’agent Azure Monitor. (La table personnalisée MMA ne peut pas utiliser de transformations)
Créer une transformation
Il existe plusieurs méthodes pour créer des transformations en fonction de la méthode de collecte de données. Le tableau suivant répertorie des conseils pour différentes méthodes de création de transformations.
Collecte de données | Référence |
---|---|
API d’ingestion de journaux | Envoyer des données aux journaux Azure Monitor à l’aide de l’API REST (portail Azure) Envoyer des données aux journaux Azure Monitor à l’aide de l’API REST (modèles Azure Resource Manager) |
Machine virtuelle avec l’agent Azure Monitor | Ajouter une transformation au journal Azure Monitor |
Cluster Kubernetes avec Container Insights | Transformations de données dans Container Insights |
Azure Event Hubs | Tutoriel : ingérer des événements d'Azure Event Hubs dans les journaux Azure Monitor (préversion publique) |
Coût des transformations
Bien que les transformations par elles-mêmes n’entraînent pas de coûts directs, les scénarios suivants peuvent entraîner des frais supplémentaires :
- Si une transformation augmente la taille des données entrantes, par exemple en ajoutant une colonne calculée, le taux d’ingestion standard des données supplémentaires vous sera facturé.
- Si une transformation réduit les données ingérées de plus de 50 %, nous vous facturerons la quantité de données filtrées au-dessus de 50 %.
Pour calculer les frais de traitement des données résultant de transformations, utilisez la formule suivante :
[Go filtré par les transformations] – ([Total Go ingéré par le pipeline] / 2). Le tableau suivant contient des exemples.
Données ingérées par le pipeline | Données déposées par transformation | Données ingérées par l’espace de travail Log Analytics | Frais de traitement des données | Frais d’ingestion |
---|---|---|---|---|
20 Go | 12 Go | 8 Go | 2 Go 1 | 8 Go |
20 Go | 8 Go | 12 Go | 0 Go | 12 Go |
1 Ces frais excluent les frais pour les données ingérées par l’espace de travail Log Analytics.
Pour éviter ces frais, nous vous recommandons de filtrer les données entrantes à l’aide d’autres méthodes avant d’appliquer des transformations. En procédant ainsi, vous pouvez réduire la quantité de données traitées par les transformations et, par conséquent, réduire les coûts supplémentaires.
Consultez les Tarifs Azure Monitor pour connaître les frais actuels d’ingestion et de conservation des données de journal dans Azure Monitor.
Important
Si Azure Sentinel est activé pour l’espace de travail Log Analytics, l’ingestion de filtrage n’est pas facturé, quelle que soit la quantité de données filtrées par la transformation.