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:
- Immettere un nome per le impostazioni di diagnostica.
- Selezionare le categorie per cui si desidera iniziare a raccogliere i log.
- Scegliere la destinazione per la raccolta dall'account di archiviazione, dall'hub eventi o da un'area di lavoro Log Analytics.
È 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 , AgriFoodWeatherLogs e 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.