API di query di Azure Time Series Insights Gen2
Panoramica
Le API di query sono costituite da tre API REST, un'API ciascuna per eventi, serie e aggregazioni.
Le API query restituiscono lo schema eventi e i conteggi degli eventi in un intervallo di tempo specificato tramite richieste HTTP GET con paginazione facoltativa. Le informazioni sulle serie e sulle serie aggregate vengono esposte anche tramite operazioni GET con paginazione facoltativa.
API | Descrizione |
---|---|
Get Events API | Restituisce un elenco di eventi non elaborati che corrispondono all'intervallo di ricerca e al predicato. |
Get Series API | Consente di eseguire query e recuperare i dati di Time Series Insights dagli eventi acquisiti usando i dati registrati in transito tramite le variabili definite nel modello o fornite inline. |
Aggregate Series API | Consente di eseguire query e recuperare i dati di Time Series Insights dagli eventi acquisiti aggregando i dati registrati usando le funzioni di aggregazione o di esempio. |
Le API supportano anche un'ampia gamma di operazioni personalizzate specificate tramite il corpo JSON della richiesta HTTP. Le definizioni di query possono essere usate per le operazioni comuni.
Importante
- Come parte delle prossime modifiche apportate alle regole di flating e escape JSON, le matrici verranno archiviate come tipo dinamico . Le proprietà del payload archiviate come questo tipo sono accessibili SOLO tramite l'API Get Events.
Risposte agli errori
Se l'esecuzione della query non riesce, il payload della risposta JSON conterrà una risposta di errore conforme alla struttura seguente:
{
"error" : {
"code" : "...",
"message" : "...",
"innerError" : {
"code" : "...",
"message" : "...",
}
}
}
In questo caso, innerError
è facoltativo. Oltre agli errori di base come la richiesta in formato non valido, vengono restituiti gli errori seguenti:
Codice di stato HTTP | Codice di errore | Messaggio di errore di esempio | Codici innerError possibili |
---|---|---|---|
400 | InvalidApiVersion | La versione API '2016' non è supportata. Le versioni supportate sono '2016-12-12', '2018-11-01-preview'. | - |
400 | InvalidUrl | Impossibile analizzare l'URL della richiesta '/a/b'. | - |
400 | InvalidInput | La query specificata 'aggregate' non è valida. Le query supportate sono "getEvents", "getSeries", "aggregateSeries". | InvalidQueryType |
400 | InvalidInput | L'espressione time series '$event.temperature.Double > 0' in 'projectedVariables.temperature.value' non è un'espressione di riferimento di proprietà valida. | InvalidPropertyReferenceExpression |
400 | InvalidInput | L'espressione della serie temporale '$event.temperature.Double' in 'projectedVariables.temperature.filter' non è valida. Può essere solo un'espressione predicato che restituisce un valore booleano. | InvalidPredicateExpression |
400 | InvalidInput | L'espressione della serie temporale '$event.temperature.Double' in 'projectedVariables.temperature.aggregation' non è valida. Non contiene un'espressione di aggregazione. | InvalidAggregateExpression |
400 | InvalidInput | L'espressione time series '$event.temperature.Double > 0' in 'projectedVariables.temperature.value' non è un'espressione valore valida di tipo 'numeric'. | InvalidValueExpression |
400 | InvalidInput | L'espressione time series del valore in 'projectedVariables.temperature.value' non deve essere specificata o deve essere null per la variabile di tipo 'aggregate'. | ValueExpressionShouldNotBeSpecified |
400 | InvalidInput | L'espressione della serie temporale del valore in 'projectedVariables.temperature.value' deve essere specificata per il tipo di variabile 'numeric'. | ValueExpressionShouldBeSpecified |
400 | InvalidInput | Il tipo di variabile 'aggregate' non è valido per l'espressione 'min($value)' in 'projectedVariables.temperature.aggregation'. | InvalidVariableKind |
400 | InvalidInput | L'intervallo di tempo '00.00:01' in 'interval' non è un formato ISO8601 timepan valido. | InvalidTimeSpanFormat |
400 | InvalidInput | L'istanza con timeSeriesId '["ABC123"]' non viene trovata. | InstanceNotFound |
400 | InvalidInput | L'istanza con nome 'timeSeriesName' non viene trovata. | InstanceNotFound |
400 | InvalidInput | Impossibile eliminare l'istanza con timeSeriesId '["ABC321"]". Esistono già eventi inseriti associati a questo ID serie temporale. | CannotDeleteInstance |
400 | InvalidInput | L'ambiente con ID '5e19f688-83fb-4aee-8321-5c123ed016b7' non supporta le API di query time series. | TimeSeriesQueryNotSupported |
400 | InvalidInput | La variabile proiettata con nome 'temperature' non è stata trovata nelle definizioni di tipo o variabile inline. | ProjectedVariableNotFound |
400 | InvalidInput | Impossibile eseguire l'upsert di tipo con ID '7e19g688-83fb-4aee-8321-5c123ed016b7' e nome 'ABC123'. Questo nome è già usato dal tipo con ID '6e19g688-83fb-4aee-8321-5c123ed016b7'. | NameAlreadyExists |
400 | InvalidInput | Impossibile aggiornare la gerarchia con ID '4e19g688-83fb-4aee-8321-7c123ed016b7' e nome 'XYZ123'. Questo nome è già usato dalla gerarchia con ID '8e39g688-83fb-4aee-8321-5c123ed016b7'. | HierarchyNotDefined |
400 | InvalidInput | Il numero di istanze ha superato il limite di '1.000.000'. | NumberOfInstancesExceededLimit |
400 | InvalidInput | Il numero di tipi ha superato il limite di '1000'. | NumberOfTypesExceededLimit |
400 | InvalidInput | Il numero di gerarchie ha superato il limite di '32'. | NumberOfHierarchiesExceededLimit |
400 | InvalidInput | Le dimensioni dell'entità sono superiori alle dimensioni massime consentite '16,384'. | ObjectSizeExceededLimit |
400 | InvalidInput | Il nome dell'oggetto 'ABC123' con lunghezza '6' supera il limite massimo consentito di caratteri '5'. | NameExceededLimit |
408 | RequestTimeout | Timeout della richiesta dopo '30' secondi. | BatchRequestSizeExceededLimit |
503 | TooManyRequests | Numero di richieste simultanee di '30' superato per l'ambiente '95880732-01b9-44ea-8d2d-4d764dfe1904'. | EnvRequestLimitExceeded |
Vedi anche
Per altre informazioni sulla registrazione dell'applicazione e sul modello di programmazione di Azure Active Directory, vedere Azure Active Directory per gli sviluppatori.
Per informazioni sui parametri di richiesta e autenticazione, leggere Autenticazione e autorizzazione.
Gli strumenti che consentono di testare le richieste e le risposte HTTP includono:
Fiddler. Questo proxy di debug Web gratuito può intercettare le richieste REST, in modo da poter diagnosticare i messaggi di richiesta e risposta HTTP.
JWT.io. È possibile usare questo strumento per eseguire rapidamente il dump delle attestazioni nel token di connessione e quindi convalidarne il contenuto.
Postman. Si tratta di uno strumento gratuito di test di richiesta HTTP e risposta per il debug delle API REST.
Altre informazioni su Azure Time Series Insights Gen2 esaminando la documentazione di Gen2.