Data Manager di Azure per l'agricoltura

Dopo aver creato un'istanza di risorsa data manager per l'agricoltura, è possibile monitorare come e quando si accede alle risorse e da chi. È anche possibile eseguire il debug per motivi di errore per le richieste del piano dati. A tale scopo, è necessario abilitare la registrazione per Azure Data Manager for Agriculture. È quindi possibile salvare le informazioni di log in una destinazione, ad esempio un account di archiviazione, un hub eventi o un'area di lavoro Log Analytics, specificata.

Questo articolo illustra i passaggi per configurare la registrazione per Azure Data Manager for Agriculture.

Abilitare la raccolta di log

Dopo aver creato una risorsa del servizio Data Manager per l'agricoltura, passare alle impostazioni di diagnostica quindi selezionare add diagnostics settings. Per iniziare a raccogliere e archiviare i log, seguire questa procedura:

  1. Immettere un nome per le impostazioni di diagnostica.
  2. Selezionare le categorie per cui si desidera iniziare a raccogliere i log.
  3. Scegliere la destinazione per la raccolta dall'account di archiviazione, dall'hub eventi o da un'area di lavoro Log Analytics.

Screenshot che mostra i passaggi per creare l'impostazione di diagnostica nel portale di Azure.

È ora possibile passare alla destinazione specificata nell'impostazione di diagnostica per accedere ai log. È possibile accedere alle informazioni di registrazione 10 minuti (al massimo) dopo l'operazione di Data Manager for Agriculture. Nella maggior parte dei casi, è più veloce.

Interpretare i log

Ogni log segue lo schema elencato nella tabella. La tabella contiene i nomi e le descrizioni dei campi:

Nome del campo Descrizione
time Data e ora in formato UTC.
resourceId ID della risorsa di Azure Resource Manager. Per i log, si tratta dell'ID risorsa Data Manager for Agriculture.
operationName Nome dell'operazione, come documentato.
operationVersion Versione dell'API REST richiesta dal client.
category Tipo di risultato.
resultType Risultato della richiesta dell'API REST (esito positivo o negativo).
resultSignature Stato HTTP.
resultDescription Descrizione aggiuntiva del risultato, se disponibile.
durationMs Tempo impiegato per soddisfare la richiesta API REST, in millisecondi.
callerIpAddress Indirizzo IP del client che ha eseguito la richiesta.
level Livello di gravità dell'evento (informativo, avviso, errore, critico).
correlationId GUID facoltativo che è possibile usare per correlare i log.
identity Identità del token presentato nella richiesta API REST. Si tratta in genere di un ID oggetto e di un ID applicazione o di uno dei due.
location Area della risorsa che genera l'evento, ad esempio "Stati Uniti orientali"
properties Per ogni operationName contiene: requestUri (URI della richiesta API), partyId(partyId associato alla richiesta, ove applicabile),dataPlaneResourceId (ID che identifica in modo univoco la risorsa del piano dati nella richiesta) e requestBody (contiene il corpo della richiesta per la chiamata API associata a operationName per tutte le categorie diverse da ApplicationAuditLogs).
Oltre al comune menzionato prima della categoria jobProcessesLogs ha:
1. Questo elenco è di campi in operationNames:
jobRunType (può essere oneTime o periodico), jobId (ID del processo), initiatedBy (indica se un processo è stato attivato da un utente o dal servizio).
2. Questo elenco è di campi per i processi correlati a farmOperation non riusciti:
farmOperationEntityId (ID dell'entità che non è stato possibile creare dal processo farmOperation), farmOperationEntityType(tipo dell'entità che non è stato possibile creare), errorCode(codice per errore del processo), errorMessage(descrizione dell'errore), internalErrorCode(codice di errore fornito dal provider), internalErrorMessage(descrizione dell'errore fornito dal provider), providerId(ID del provider).

Il campo categories per Data Manager per l'agricoltura può avere valori elencati nella tabella seguente:

Tabella Categorie

category Descrizione
FarmManagementLogs Log per operazioni CRUD per parte, Farm, Campo, Campo stagionale, Raccolto, CropVariety, Stagione, Allegato, mappe di prescrizione, prescrizioni, zone di gestione, zone, analisi dei tessuti vegetali e analisi dei nutrienti.
FarmOperationsLogs Log per operazioni CRUD per il processo di inserimento dati FarmOperations, ApplicationData, PlantingData, HarvestingData, TillageData
SatelliteLogs Log per creare e ottenere operazioni per il processo di inserimento dati satellite
WeatherLogs Log per operazioni di creazione, eliminazione e recupero per il processo di inserimento dati meteo
ProviderAuthLogs Log per creare, aggiornare, eliminare, eliminare a catena, ottenere e ottenere tutti per i provider Oauth. Include anche i log per ottieni, ottieni tutto, eliminazione a catena per i token OAuth.
JobProcessedLogs Log per indicare l'esito positivo o negativo e il motivo dell'errore per i processi. Oltre ai log per i processi di eliminazione a catena delle risorse, i processi di inserimento dati contengono anche i log per le operazioni della farm e i processi di gestione degli eventi.
ModelInferenceLogs Log per creare e ottenere operazioni per il processo del modello di biomassa.
InsightLogs Log per ottenere e ottenere tutte le operazioni per informazioni dettagliate.
ApplicationAuditLogs Log per azioni con privilegi, ad esempio le operazioni di creazione, aggiornamento, eliminazione e gestione delle sottoscrizioni del piano dati. L'elenco completo è riportato nella tabella dei nomi dell'operazione seguente.

I valori dei campi operationName sono nel formato Microsoft.AgFoodPlatform/resource-name/read o write o delete o action.

  • Il suffisso /write nel nome dell'operazione corrisponde a una creazione o aggiornamento del nome della risorsa
  • Il suffisso /read nel nome dell'operazione corrisponde a una chiamata API GET/ LIST /GET ALL o allo stato GET per un processo di eliminazione a catena per il nome della risorsa
  • Il suffisso /delete corrisponde all'eliminazione del nome della risorsa
  • Il suffisso /action corrisponde alle chiamate al metodo POST per un nome di risorsa
  • Il suffisso /processed corrisponde al completamento di un processo (una chiamata al metodo PUT). Indica lo stato del processo (esito positivo o negativo).
  • Il suffisso /failures corrisponde all'errore di un processo dell'operazione farm (chiamata al metodo PUT) e contiene una descrizione relativa al motivo dell'errore.

La denominazione dei posti di lavoro è la seguente:

  • Per i processi di inserimento dati: Microsoft.AgFoodPlatform/ingestionJobs/<'resource-name'DataingestionJobs>/write
  • Per i processi di eliminazione: Microsoft.AgFoodPlatform/deletionJobs/<'resource-name'cascadeDeleteJobs>/write

La tabella seguente elenca i valori operationName e i comandi API REST corrispondenti per una categoria come scheda:

FarmManagementLogs

operationName
Microsoft.AgFoodPlatform/farmers/write
Microsoft.AgFoodPlatform/farmers/read
Microsoft.AgFoodPlatform/deletionJobs/farmersCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/farms/write
Microsoft.AgFoodPlatform/farms/read
Microsoft.AgFoodPlatform/farms/delete
Microsoft.AgFoodPlatform/deletionJobs/farmsCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/field/write
Microsoft.AgFoodPlatform/field/read
Microsoft.AgFoodPlatform/field/delete
Microsoft.AgFoodPlatform/deletionJobs/fieldsCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/seasonalField/write
Microsoft.AgFoodPlatform/seasonalField/read
Microsoft.AgFoodPlatform/seasonalField/delete
Microsoft.AgFoodPlatform/deletionJobs/seasonalFieldsCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/boundaries/write
Microsoft.AgFoodPlatform/boundaries/read
Microsoft.AgFoodPlatform/boundaries/delete
Microsoft.AgFoodPlatform/boundaries/action
Microsoft.AgFoodPlatform/deletionJobs/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/seasons/write
Microsoft.AgFoodPlatform/seasons/read
Microsoft.AgFoodPlatform/seasons/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/deletionJobs/prescriptionsCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/prescriptionMaps/write
Microsoft.AgFoodPlatform/prescriptionMaps/read
Microsoft.AgFoodPlatform/prescriptionMaps/delete
Microsoft.AgFoodPlatform/deletionJobs/prescriptionMapsCascadeDeleteJobs/write
Microsoft.AgFoodPlatform/managementZones/write
Microsoft.AgFoodPlatform/managementZones/read
Microsoft.AgFoodPlatform/managementZones/delete
Microsoft.AgFoodPlatform/deletionJobs/managementZonescascadeDeletejobs/write
Microsoft.AgFoodPlatform/zones/write
Microsoft.AgFoodPlatform/zones/read
Microsoft.AgFoodPlatform/zones/delete
Microsoft.AgFoodPlatform/deletionJobs/zonesCascadedeleteJobs/write
Microsoft.AgFoodPlatform/plantTissueanalyses/write
Microsoft.AgFoodPlatform/plantTissueanalyses/read
Microsoft.AgFoodPlatform/plantTissueanalyses/delete
Microsoft.AgFoodPlatform/deletionJobs/plantTissueanalysesCascadedeleteJobs/write
Microsoft.AgFoodPlatform/nutrientAnalyses/write
Microsoft.AgFoodPlatform/nutrientAnalyses/read
Microsoft.AgFoodPlatform/nutrientAnalyses/delete
Microsoft.AgFoodPlatform//deletionJobs/nutrientAnalysescascadeDeletejobs/delete

FarmOperationLogs

operationName
Microsoft.AgFoodPlatform/ingetsionJobs/farmOperationsdataIngestionjobs/write
Microsoft.AgFoodPlatform/applicationData/read
Microsoft.AgFoodPlatform/applicationData/write
Microsoft.AgFoodPlatform/applicationData/delete
Microsoft.AgFoodPlatform/deletionJobs/applicationDatacascadeDeletejob/write
Microsoft.AgFoodPlatform/plantingData/write
Microsoft.AgFoodPlatform/plantingData/read
Microsoft.AgFoodPlatform/plantingData/delete
Microsoft.AgFoodPlatform/deletionJobs/plantingDatacascadeDeletejob/write
Microsoft.AgFoodPlatform/harvestingData/write
Microsoft.AgFoodPlatform/harvestingData/read
Microsoft.AgFoodPlatform/harvestingData/delete
Microsoft.AgFoodPlatform/deletionJobs/harvestingDatacascadeDeletejob/write
Microsoft.AgFoodPlatform/tillageData/Write
Microsoft.AgFoodPlatform/tillageData/Read
Microsoft.AgFoodPlatform/tillageData/Delete
Microsoft.AgFoodPlatform/deletionJobs/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/deletionJobs/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/deletionJobs/satelliteDataDeletionJobs/processed
Microsoft.AgFoodPlatform/ingestionJobs/weatherDataIngestionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/weatherDataDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/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/deletionJobs/applicationDataCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/tillageDataCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/plantingDataCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/harvestDataCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/managementZonesCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/zonesCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/plantTissueAnalysesCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/prescriptionsCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/prescriptionMapsCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/insightsCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/farmersCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/farmsCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/fieldsCascadeDeletionJobs/processed
Microsoft.AgFoodPlatform/deletionJobs/seasonalFieldsCascadeDeletionJobs/processed

ApplicationAuditLogs

Anche i log di scrittura ed eliminazione presenti in altre categorie sono presenti in questa categoria. La differenza tra i log in questa categoria e altre categorie per la stessa chiamata API è che ApplicationAuditLogs non registra il corpo della richiesta, mentre in altre categorie viene popolato il corpo della richiesta. Usare l'ID correlazione per correlare i log di due categorie diverse per ottenere altri dettagli. Di seguito sono elencate alcune delle operazioni del piano di controllo che non fanno parte delle altre categorie.

Nota

Per effettuare chiamate al piano di controllo, è necessario l'accesso proprietario nell'ambito della risorsa ADMA.

operationName
Creare un risorsa di Data Manager per l'agricoltura
Aggiornare data manager per la risorsa agricoltura
Eliminare data manager per la risorsa agricoltura
Creare la sottoscrizione
Aggiornamento di sottoscrizioni
Autenticazione del piano dati

Eseguire query sui log delle risorse in un'area di lavoro Log Analytics

Tutti i categories dei log delle risorse vengono mappati come tabella in Log Analytics. Per accedere ai log per ogni categoria, è necessario creare un'impostazione di diagnostica per inviare dati a un'area di lavoro Log Analytics. In questa area di lavoro è possibile eseguire una query su una qualsiasi delle tabelle elencate per ottenere i log pertinenti.

Elenco di tabelle in Log Analytics e relativo mapping alle categorie nei log delle risorse

Nome della tabella in Log Analytics Categorie nei log delle risorse Descrizione
AgriFoodFarmManagementLogs FarmManagementLogs Log per operazioni CRUD per parte, Farm, Campo, Campo stagionale, Raccolto, CropVariety, Stagione, Allegato, mappe di prescrizione, prescrizioni, zone di gestione, zone, analisi dei tessuti vegetali e analisi dei nutrienti.
AgriFoodFarmOperationsLogs FarmOperationsLogs Log per operazioni CRUD per il processo di inserimento dati FarmOperations, ApplicationData, PlantingData, HarvestingData, TillageData.
AgriFoodSatelliteLogs SatelliteLogs Log per creare e ottenere operazioni per il processo di inserimento dati satellite.
AgriFoodWeatherLogs WeatherLogs Log per operazioni di creazione, eliminazione e recupero per il processo di inserimento dati meteo.
AgriFoodProviderAuthLogs ProviderAuthLogs Log per creare, aggiornare, eliminare, eliminare a catena, ottenere e ottenere tutti per i provider oauth. Include anche i log per ottieni, ottieni tutto, eliminazione a catena per i token OAuth.
AgriFoodInsightLogs InsightLogs Log per ottenere e ottenere tutte le operazioni per informazioni dettagliate.
AgriFoodModelInferenceLogs ModelInferenceLogs Log per creare e ottenere operazioni per il processo del modello di biomassa.
AgriFoodJobProcessedLogs JobProcessedLogs Log per indicare l'esito positivo o negativo e il motivo dell'errore per i processi. Oltre ai log per i processi di eliminazione a catena delle risorse, i processi di inserimento dati. Contiene anche i log per le operazioni della farm e i processi di gestione degli eventi.
AgriFoodApplicationAuditLogs ApplicationAuditLogs Log per azioni con privilegi, ad esempio le operazioni di creazione, aggiornamento, eliminazione e gestione delle sottoscrizioni del piano dati.

Elenco di colonne nelle tabelle di Log Analytics

Nome del campo Descrizione
Ora Data e ora in formato UTC.
ResourceId ID risorsa di Azure Resource Manager per i log di Data Manager per l'agricoltura.
OperationName Nome dell'operazione, come illustrato nella tabella precedente.
OperationVersion Versione dell'API REST richiesta dal client.
Categoria I dettagli delle categorie nei log di Data Manager per l'agricoltura possono essere qualsiasi valore, come indicato nella tabella delle categorie.
ResultType Risultato della richiesta dell'API REST (esito positivo o negativo).
ResultSignature Stato HTTP.
ResultDescription Descrizione aggiuntiva del risultato, se disponibile.
DurationMs Tempo impiegato per soddisfare la richiesta API REST, in millisecondi.
CallerIpAddress Indirizzo IP del client che ha eseguito la richiesta.
Livello Gravità: livello di gravità dell'evento (informativo, avviso, errore, critico).
CorrelationId GUID facoltativo che è possibile usare per correlare i log.
ApplicationId ID applicazione che indica l'identità del chiamante.
ObjectId ID oggetto che indica l'identità del chiamante.
ClientTenantId ID del tenant del chiamante.
SubscriptionId ID della sottoscrizione utilizzata dal chiamante.
Location Area della risorsa che genera l'evento, ad esempio "Stati Uniti orientali"
JobRunType Disponibile solo nella tabella AgriFoodJobProcessesLogs, indica il tipo di esecuzione del processo. Il valore può essere periodico o una sola volta.
JobId Disponibile in AgriFoodJobProcessesLogs, AgriFoodSatelliteLogs, AgriFoodWeatherLogse AgriFoodModelInferenceLogs, indica l'ID del processo.
InitiatedBy Disponibile solo nella tabella AgriFoodJobProcessesLogs. Indica se un processo è stato avviato da un utente o dal servizio.
partyId ID della parte associata all'operazione.
Proprietà Disponibile solo nella tabellaAgriFoodJobProcessesLogs contiene: farmOperationEntityId (ID dell'entità che non è stato possibile creare dal processo farmOperation), farmOperationEntityType(tipo dell'entità che non è stato possibile creare, può essere ApplicationData, PeriodicJob e così via), errorCode(codice per errore del processo in Data Manager per agricoltura)errorMessage(Descrizione dell'errore alla fine del data manager per l'agricoltura),internalErrorCode(codice di errore del processo fornito dal provider),internalErrorMessage(Descrizione dell'errore fornito dal provider),providerId(ID del provider, ad esempio JOHN-DEERE).

È possibile eseguire query su ognuna di queste tabelle creando un'area di lavoro Log Analytics. Informazioni di riferimento sul linguaggio di query sono disponibili qui.

Elenco di query di esempio nell'area di lavoro Log Analytics

Nome query Descrizione
Stato delle operazioni di gestione farm per un'entità Recupera un conteggio dei successi e degli errori delle operazioni all'interno della categoria FarmManagementLogs per ogni parte.
Statistiche di esecuzione del processo per un'entità Fornisce un conteggio dei successi e degli errori di per tutte le operazioni nella categoria JobProcessedLogs per ogni parte.
Autorizzazione non riuscita Identifica un elenco di utenti che non hanno eseguito l'accesso alla risorsa e il motivo di questo errore.
Stato di tutte le operazioni per un'entità Aggrega errori e successi in tutte le categorie per un'entità.
Tendenze di utilizzo per le prime 100 parti in base alle operazioni eseguite Recupera un elenco delle prime 100 parti in base al numero di riscontri ricevuti tra le categorie. Questa query può essere modificata per tenere traccia della tendenza di utilizzo per una determinata parte.

Tutte le query elencate in precedenza possono essere usate come query di base per formare query personalizzate in un'area di lavoro Log Analytics. È anche possibile accedere a questo elenco di query nella scheda Logs della risorsa Azure Data Manager for Agriculture nel portale di Azure.

Passaggi successivi

Informazioni su come configurare i collegamenti privati.