Partage via


Journalisation d’Azure Data Manager pour l’agriculture

Après avoir créé une instance de ressource Data Manager for Agriculture, vous pouvez surveiller comment et quand vos ressources sont accessibles, et par qui. Vous pouvez également déboguer des raisons de défaillance pour les demandes de plan de données. Pour ce faire, vous devez activer la journalisation pour Azure Data Manager pour l’agriculture. Vous pouvez ensuite enregistrer des informations de journal à une destination telle qu’un compte de stockage, un hub d’événements ou un espace de travail Log Analytics que vous fournissez.

Cet article vous fournit les étapes de configuration de la journalisation pour Azure Data Manager pour l’agriculture.

Activer la collecte des journaux

Après avoir créé une ressource de service Data Manager for Agriculture, accédez aux paramètres de diagnostic, puis sélectionnez add diagnostics settings. Procédez comme suit pour commencer à collecter et stocker des journaux :

  1. Fournissez un nom pour le paramètre de diagnostic.
  2. Sélectionnez les catégories pour lesquelles vous souhaitez commencer à collecter les journaux.
  3. Choisissez la destination pour la collecte à partir du compte de stockage, du hub d’événements ou d’un espace de travail Log Analytics.

Screenshot showing steps to create diagnostics setting in Azure portal.

Vous pouvez maintenant accéder à la destination que vous avez spécifiée dans le paramètre de diagnostic pour accéder aux journaux. Vous pouvez accéder à vos informations de journalisation 10 minutes (au plus) après l’opération Data Manager for Agriculture. Dans la plupart des cas, c’est plus rapide.

Interpréter vos journaux d’activité

Chaque journal suit le schéma répertorié dans la table. La table contient les noms et descriptions des champs :

Nom du champ Description
time Date et heure en temps universel coordonné (UTC).
resourceId ID de ressource Azure Resource Manager. Pour les journaux, il s’agit de l’ID de ressource Data Manager for Agriculture.
operationName Nom de l’opération, comme documenté.
operationVersion Version d’API REST demandée par le client.
category Type de résultat.
resultType Résultat de la demande d’API REST (réussite ou échec).
resultSignature État HTTP
resultDescription Description supplémentaire du résultat, le cas échéant.
durationMs Délai nécessaire pour répondre à la demande API REST, en millisecondes.
callerIpAddress Adresse IP du client qui a effectué la requête.
level niveau de gravité de l’événement (Information, Avertissement, Erreur ou Critique).
correlationId GUID facultatif qui peut être utilisé pour mettre en corrélation les journaux.
identity Identité issue du jeton qui a été présenté dans la requête d’API REST. Il s’agit généralement d’un ID d’objet et d’un ID d’application ou de l’un des deux.
location Région de la ressource qui émet l’événement tel que « USA Est »
properties Pour chacun d’eux operationName , il contient : requestUri (URI de la demande d’API), partyId(partyId associé à la requête, le cas échéant),dataPlaneResourceId (ID qui identifie de manière unique la ressource de plan de données dans la requête) et requestBody (contient le corps de la requête pour l’appel d’API associé à toutes operationName les catégories autres que ApplicationAuditLogs).
Autre que le commun mentionné avant jobProcessesLogs la catégorie a :
1. Cette liste contient des champs entre operationNames :
jobRunType (peut être oneTime ou périodique), jobId (ID du travail), initiatedBy (indique si un travail a été déclenché par un utilisateur ou par le service).
2. Cette liste contient des champs pour les travaux liés à farmOperation ayant échoué :
farmOperationEntityId (ID de l’entité qui n’a pas pu être créée par le travail farmOperation), farmOperationEntityType(type de l’entité qui n’a pas pu être créée), errorCode(code pour échec du travail), errorMessage(description de l’échec), internalErrorCode(code d’échec fourni par le fournisseur), internalErrorMessage(description de l’échec fourni par le fournisseur), providerId(ID du fournisseur).

Le categories champ de Data Manager pour l’agriculture peut avoir des valeurs répertoriées dans le tableau suivant :

Tableau Catégories

catégorie Description
FarmManagementLogs Journaux des opérations CRUD pour les activités de partie, ferme, champ de campagne, champ saisonnier, culture, cropVariety, saison, pièce jointe, cartes d’ordonnances, prescriptions, zones de gestion, zones, analyse des tissus végétaux et analyses de nutriments.
FarmOperationsLogs Journaux des opérations CRUD pour le travail d’ingestion de données FarmOperations, ApplicationData, PlantingData, HarvestingData, TillageData
SatelliteLogs Journaux de création et d’obtention d’opérations pour le travail d’ingestion de données satellites
WeatherLogs Journaux de création, de suppression et d’obtention d’opérations pour le travail d’ingestion de données météorologiques
ProviderAuthLogs Journaux de création, de mise à jour, de suppression, de suppression en cascade, d’obtention et d’obtention de tous les fournisseurs Oauth. Il contient également des journaux d’activité pour obtenir, obtenir tout, supprimer en cascade pour les jetons oauth.
JobProcessedLogs Journaux pour indiquer la réussite ou l’échec et la raison de l’échec des travaux. En plus des journaux d’activité pour les travaux de suppression en cascade de ressources, les travaux d’ingestion de données contiennent également des journaux d’activité pour les opérations de batterie de serveurs et les travaux de gestion des événements.
ModelInferenceLogs Journaux de création et d’obtention d’opérations pour le travail de modèle de biomasse.
InsightLogs Journaux d’activité pour obtenir et obtenir toutes les opérations pour insights.
ApplicationAuditLogs Journaux d’activité pour les actions privilégiées telles que les opérations de création, de mise à jour, de suppression et de gestion des abonnements du plan de données. La liste complète se trouve dans le tableau du nom de l’opération ci-dessous.

Les operationName valeurs de champ sont au format Microsoft.AgFoodPlatform/resource-name/read ou write ou delete ou action .

  • /write Le suffixe dans le nom de l’opération correspond à une création ou à la mise à jour du nom de ressource
  • /readLe suffixe dans le nom de l’opération correspond à un appel d’API GET/ LIST /GET ALL ou à un état GET pour un travail de suppression en cascade pour le nom de ressource
  • /delete le suffixe correspond à la suppression du nom de ressource
  • /action suffixe correspond aux appels de méthode POST pour un nom de ressource
  • /processed le suffixe correspond à l’achèvement d’un travail (un appel de méthode PUT). Cela indique l’état du travail (réussite ou échec).
  • /failures Le suffixe correspond à l’échec d’un travail d’opération de batterie de serveurs (un appel de méthode PUT) et contient une description de la raison de l’échec.

La nomenclature pour les travaux est la suivante :

  • Pour les travaux d’ingestion de données : Microsoft.AgFoodPlatform/ingestionJobs/<'resource-name’DataingestionJobs>/write
  • Pour les travaux de suppression : Microsoft.AgFoodPlatform/deleteJobs/<'resource-name’cascadeDeleteJobs>/write

Le tableau suivant répertorie les valeurs operationName et les commandes d’API REST correspondantes pour une catégorie sous forme d’onglet :

FarmManagementLogs

operationName
Microsoft.AgFoodPlatform/farmers/write
Microsoft.AgFoodPlatform/farmers/read
Microsoft.AgFoodPlatform/deleteJobs/farmersCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/farms/write
Microsoft.AgFoodPlatform/farms/read
Microsoft.AgFoodPlatform/farms/delete
Microsoft.AgFoodPlatform/deleteJobs/farmsCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/field/write
Microsoft.AgFoodPlatform/field/read
Microsoft.AgFoodPlatform/field/delete
Microsoft.AgFoodPlatform/deleteJobs/fieldsCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/seasonalField/write
Microsoft.AgFoodPlatform/seasonalField/read
Microsoft.AgFoodPlatform/seasonalField/delete
Microsoft.AgFoodPlatform/deleteJobs/seasonalFieldsCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/boundaries/write
Microsoft.Ag FoodPlatform/boundaries/read
Microsoft.AgFoodPlatform/boundaries/delete
Microsoft.Ag FoodPlatform/boundaries/action
Microsoft.AgFoodPlatform/deleteJobs/fieldsCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/crops/write
Microsoft.AgFoodPlatform/crops/read
Microsoft.AgFoodPlatform/crops/delete
Microsoft.AgFoodPlatform/cropVarieties/write
Microsoft.AgFoodPlatform/cropVarieties/read
Microsoft.AgFoodPlatform/cropVarieties/delete
Microsoft.AgFoodPlatform/saisons/write
Microsoft.AgFoodPlatform/saisons/read
Microsoft.AgFoodPlatform/saisons/delete
Microsoft.AgFoodPlatform/attachments/write
Microsoft.AgFoodPlatform/attachments/read
Microsoft.AgFoodPlatform/attachments/delete
Microsoft.AgFoodPlatform/prescriptions/write
Microsoft.AgFoodPlatform/prescriptions/read
Microsoft.AgFoodPlatform/prescriptions/delete
Microsoft.AgFoodPlatform/deleteJobs/prescriptionsCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/prescription Cartes/write
Microsoft.AgFoodPlatform/prescription Cartes/read
Microsoft.AgFoodPlatform/prescription Cartes/delete
Microsoft.AgFoodPlatform/deleteJobs/prescription Cartes CascadeDeleteJobs/write
Microsoft.AgFoodPlatform/managementZones/write
Microsoft.AgFoodPlatform/managementZones/read
Microsoft.AgFoodPlatform/managementZones/delete
Microsoft.AgFoodPlatform/deleteJobs/managementZonescascadeDeletejobs/write
Microsoft.AgFoodPlatform/zones/write
Microsoft.AgFoodPlatform/zones/read
Microsoft.AgFoodPlatform/zones/delete
Microsoft.AgFoodPlatform/deleteJobs/zonesCascadedeleteJobs/write
Microsoft.AgFoodPlatform/plantTissueanalyses/write
Microsoft.AgFoodPlatform/plantTissueanalyses/read
Microsoft.AgFoodPlatform/plantTissueanalyses/delete
Microsoft.AgFoodPlatform/deleteJobs/plantTissueanalysesCascadedeleteJobs/write
Microsoft.AgFoodPlatform/nutrientAnalyses/write
Microsoft.AgFoodPlatform/nutrientAnalyses/read
Microsoft.AgFoodPlatform/nutrientAnalyses/delete
Microsoft.AgFoodPlatform//deleteJobs/nutrientAnalysescascadeDeletejobs/delete

FarmOperationLogs

operationName
Microsoft.AgFoodPlatform/ingetsionJobs/farmOperationsdataIngestionjobs/write
Microsoft.AgFoodPlatform/applicationData/read
Microsoft.AgFoodPlatform/applicationData/write
Microsoft.AgFoodPlatform/applicationData/delete
Microsoft.AgFoodPlatform/deleteJobs/applicationDatacascadeDeletejob/write
Microsoft.AgFoodPlatform/plantingData/write
Microsoft.AgFoodPlatform/plantingData/read
Microsoft.AgFoodPlatform/plantingData/delete
Microsoft.AgFoodPlatform/deleteJobs/plantingDatacascadeDeletejob/write
Microsoft.AgFoodPlatform/harvestingData/write
Microsoft.AgFoodPlatform/harvestingData/read
Microsoft.AgFoodPlatform/harvestingData/delete
Microsoft.AgFoodPlatform/deleteJobs/harvestingDatacascadeDeletejob/write
Microsoft.AgFoodPlatform/tillageData/Write
Microsoft.AgFoodPlatform/tillageData/Read
Microsoft.AgFoodPlatform/tillageData/Delete
Microsoft.AgFoodPlatform/deleteJobs/tillageDatacascadeDeletejob/write

SatelliteLogs

operationName
Microsoft.AgFoodPlatform/ingestionJobs/satelliteDataingestionJob/write
Microsoft.AgFoodPlatform/scenes/read

WeatherLogs

operationName
Microsoft.AgFoodPlatform/ingestionJobs/weatherDataingestionJob/write
Microsoft.AgFoodPlatform/weather/read
Microsoft.AgFoodPlatform/deleteJobs/weatherDeletejob/delete

ProviderAuthLogs

operationName
Microsoft.AgFoodPlatform/oauthProviders/write
Microsoft.AgFoodPlatform/oauthProviders/read
Microsoft.AgFoodPlatform/oauthProviders/delete
Microsoft.AgFoodPlatform/oauthTokens/read
Microsoft.AgFoodPlatform/oauthTokens/delete

JobProcessesLogs

operationName
Microsoft.AgFoodPlatform/ingestionJobs/satelliteDataIngestionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/satelliteDataDeletionJobs/processed
Microsoft.AgFoodPlatform/ingestionJobs/weatherDataIngestionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/weatherDataDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/oauthProvidersCascadeDeleteJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/oauthTokensRemoveJobs/processed
Microsoft.AgFoodPlatform/ingestionJobs/biomassModelJobs/processed
Microsoft.AgFoodPlatform/ingestionJobs/ImageProcessingRasterizeJobs/processed
Microsoft.AgFoodPlatform/ingestionJobs/farmOperationDataIngestionJobs/processed
Microsoft.AgFoodPlatform/ingestionJobs/farmOperationDataIngestionJobs/processed/failures
Microsoft.AgFoodPlatform/ingestionJobs/farmOperationPeriodicJobs/processed
Microsoft.AgFoodPlatform/ingestionJobs/farmOperationPeriodicJobs/processed/failures
Microsoft.AgFoodPlatform/ingestionJobs/farmOperationEventHandlingJobs/processed
Microsoft.AgFoodPlatform/ingestionJobs/farmOperationEventHandlingJobs/processed/failures
Microsoft.AgFoodPlatform/deleteJobs/applicationDataCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/tillageDataCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/plantingDataCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/harvestDataCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/managementZonesCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/zonesCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/plantTissueAnalysesCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/prescriptionsCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/prescription Cartes CascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/insightsCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/farmersCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/farmsCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/fieldsCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deleteJobs/seasonalFieldsCascadeDeletionJobs/processed

ApplicationAuditLogs

Les journaux d’activité d’écriture et de suppression présents dans d’autres catégories sont également présents dans cette catégorie. La différence entre les journaux d’activité de cette catégorie et d’autres catégories pour le même appel d’API est que, ApplicationAuditLogs ne journalise pas le corps de la requête, tandis que dans d’autres catégories, le corps de la demande est rempli. Utilisez l’ID de corrélation pour lier les journaux d’activité de deux catégories différentes pour obtenir plus de détails. Certaines opérations du plan de contrôle qui ne font pas partie du reste des catégories sont répertoriées ci-dessous.

operationName
Créer une ressource Data Manager pour l’agriculture
Mettre à jour Data Manager pour la ressource d’agriculture
Supprimer la ressource Data Manager pour l’agriculture
Créer un abonnement
Mettre à jour un abonnement
Authentification du plan de données

Interroger les journaux des ressources dans un espace de travail Log Analytics

Tous les categories journaux de ressources sont mappés en tant que table dans Log Analytics. Pour accéder aux journaux pour chaque catégorie, vous devez créer un paramètre de diagnostic pour envoyer des données à un espace de travail Log Analytics. Dans cet espace de travail, vous pouvez interroger l’une des tables répertoriées pour obtenir les journaux appropriés.

Liste des tables dans Log Analytics et leur mappage aux catégories dans les journaux de ressources

Nom de table dans Log Analytics Catégories dans les journaux de ressources Description
AgriFoodFarmManagementLogs FarmManagementLogs Journaux des opérations CRUD pour les activités de partie, ferme, champ de campagne, champ saisonnier, culture, cropVariety, saison, pièce jointe, cartes d’ordonnances, prescriptions, zones de gestion, zones, analyse des tissus végétaux et analyses de nutriments.
Agri FoodFarmOperationsLogs FarmOperationsLogs Journaux des opérations CRUD pour le travail d’ingestion de données FarmOperations, ApplicationData, PlantingData, HarvestingData, TillageData.
AgriFoodSatelliteLogs SatelliteLogs Journaux de création et d’obtention d’opérations pour le travail d’ingestion de données satellites.
AgriFoodWeatherLogs WeatherLogs Journaux pour la création, la suppression et l’obtention d’opérations pour le travail d’ingestion de données météorologiques.
AgriFoodProviderAuthLogs ProviderAuthLogs Journaux de création, de mise à jour, de suppression, de suppression en cascade, d’obtention et d’obtention de tous les fournisseurs oauth. Il contient également des journaux d’activité pour obtenir, obtenir tout, supprimer en cascade pour les jetons oauth.
AgriFoodInsightLogs InsightLogs Journaux d’activité pour obtenir et obtenir toutes les opérations pour insights.
AgriFoodModelInferenceLogs ModelInferenceLogs Journaux de création et d’obtention d’opérations pour le travail de modèle de biomasse.
AgriFoodJobProcessedLogs JobProcessedLogs Journaux pour indiquer la réussite ou l’échec et la raison de l’échec des travaux. En plus des journaux d’activité pour les travaux de suppression en cascade de ressources, les travaux d’ingestion de données. Il contient également des journaux d’activité pour les opérations de batterie de serveurs et les travaux de gestion des événements.
AgriFoodApplicationAuditLogs ApplicationAuditLogs Journaux d’activité pour les actions privilégiées telles que les opérations de création, de mise à jour, de suppression et de gestion des abonnements du plan de données.

Liste des colonnes dans les tables Log Analytics

Nom du champ Description
Heure Date et heure en temps universel coordonné (UTC).
ResourceId ID de ressource Azure Resource Manager pour les journaux d’activité d’agriculture Data Manager.
OperationName Nom de l’opération, tel que documenté dans la table précédente.
OperationVersion Version d’API REST demandée par le client.
Catégorie Les détails de catégorie dans les journaux d’activité Data Manager for Agriculture peuvent être n’importe quelle valeur, comme indiqué dans la table de catégories.
ResultType Résultat de la demande d’API REST (réussite ou échec).
ResultSignature État HTTP
ResultDescription Description supplémentaire du résultat, si disponible.
DurationMs Délai nécessaire pour répondre à la demande API REST, en millisecondes.
CallerIPAddress Adresse IP du client qui a effectué la requête.
Niveau Niveau de gravité de l’événement (information, avertissement, erreur ou critique).
CorrelationId GUID facultatif qui peut être utilisé pour mettre en corrélation les journaux.
ApplicationId ID d’application indiquant l’identité de l’appelant.
ObjectId ID d’objet indiquant l’identité de l’appelant.
ClientTenantId ID du locataire de l’appelant.
SubscriptionId ID de l’abonnement utilisé par l’appelant.
Emplacement Région de la ressource qui émet l’événement tel que « USA Est »
JobRunType Disponible uniquement dans AgriFoodJobProcessesLogs la table, indique le type de l’exécution du travail. La valeur peut être périodique ou une fois.
JobId Disponible dansAgriFoodJobProcessesLogs, AgriFoodSatelliteLogs, AgriFoodWeatherLogset , et AgriFoodModelInferenceLogs, indique l’ID du travail.
InitiatedBy Disponible uniquement dans la AgriFoodJobProcessesLogs table. Indique si un travail a été initié par un utilisateur ou par le service.
partyId ID de la partie associée à l’opération.
Propriétés Disponible uniquement dansAgriFoodJobProcessesLogs la table, il contient : farmOperationEntityId (ID de l’entité qui n’a pas pu être créée par le travail farmOperation), farmOperationEntityType(Type de l’entité qui n’a pas pu être créée, peut être ApplicationData, PeriodicJob, etc.), (Code pour échec du travail au niveau du gestionnaire de données pour l’agriculture),errorMessage (Description de l’échec à la fin du gestionnaire de données pour l’agriculture),internalErrorCode(Code de défaillance du travail fourni par le fournisseur), errorCodeinternalErrorMessage(Description de l’échec fourni par le fournisseur),providerId(ID du fournisseur tel que JOHN-DEERE).

Chacune de ces tables peut être interrogée en créant un espace de travail Log Analytics. La référence pour le langage de requête est ici.

Liste d’exemples de requêtes dans l’espace de travail Log Analytics

Nom de la requête Description
État des opérations de gestion de batterie de serveurs pour une partie Récupère un nombre de réussites et d’échecs d’opérations dans la FarmManagementLogs catégorie pour chaque partie.
Statistiques d’exécution de travaux pour une partie Fournit un nombre de réussites et d’échecs de toutes les opérations de la JobProcessedLogs catégorie pour chaque partie.
Échec de l’autorisation Identifie une liste d’utilisateurs qui n’ont pas pu accéder à votre ressource et la raison de cet échec.
État de toutes les opérations d’une partie Regroupe les échecs et les réussites entre les catégories d’une partie.
Tendances d’utilisation pour les 100 principales parties en fonction des opérations effectuées Récupère la liste des 100 premières parties en fonction du nombre de correspondances reçues dans les catégories. Cette requête peut être modifiée pour suivre la tendance de l’utilisation d’une partie particulière.

Toutes les requêtes répertoriées ci-dessus peuvent être utilisées comme requêtes de base pour former des requêtes personnalisées dans un espace de travail Log Analytics. Cette liste de requêtes est également accessible sous l’onglet Logs de votre ressource Azure Data Manager for Agriculture sur Portail Azure.

Étapes suivantes

Découvrez comment configurer des liens privés.