APIs de consulta do Azure Time Series Insights Gen2
Visão geral
As APIs de consulta são constituídas por três APIs REST, uma API para eventos, séries e agregações.
As APIs de Consulta retornam o esquema de eventos e as contagens de eventos em um intervalo de tempo especificado por meio de solicitações HTTP GET com paginação opcional. As informações de série e de série agregada também são expostas por meio de operações GET com paginação opcional.
API | Descrição |
---|---|
Obter API de Eventos | Retorna uma lista de eventos brutos que correspondem ao intervalo de pesquisa e predicado. |
Obter API de Série | Habilita a consulta e a recuperação de dados do Time Series Insights de eventos capturados usando dados gravados na transmissão por meio das variáveis definidas no modelo ou fornecidas embutidas. |
API de série agregada | Habilita a consulta e a recuperação de dados do Time Series Insights de eventos capturados agregando dados registrados usando as funções de agregação ou de exemplo. |
As APIs também dão suporte a uma variedade de operações personalizadas especificadas por meio do corpo JSON da solicitação HTTP. As definições de consulta podem ser usadas para operações comuns.
Importante
- Como parte das alterações futuras nas regras de saída e mesclagem de JSON, as matrizes serão armazenadas como um tipo Dinâmico. As propriedades de payload armazenadas como esse tipo SÓ podem ser acessadas por meio da API Get Events.
Respostas de erro
Se a execução da consulta falhar, o conteúdo da resposta JSON conterá uma resposta de erro em conformidade com a seguinte estrutura:
{
"error" : {
"code" : "...",
"message" : "...",
"innerError" : {
"code" : "...",
"message" : "...",
}
}
}
Aqui, innerError
é opcional. Além de erros básicos, como solicitação malformada, os seguintes erros são retornados:
Código http status | Código do erro | Mensagem de erro de exemplo | Possíveis códigos innerError |
---|---|---|---|
400 | InvalidApiVersion | Não há suporte para a versão da API '2016'. As versões com suporte são '2016-12-12', '2018-11-01-preview'. | - |
400 | InvalidUrl | A URL de solicitação '/a/b' não pôde ser analisada. | - |
400 | InvalidInput | A consulta fornecida 'aggregate' não é válida. As consultas com suporte são 'getEvents', 'getSeries','aggregateSeries'. | InvalidQueryType |
400 | InvalidInput | A expressão de série temporal '$event.temperature.Double > 0' em 'projectedVariables.temperature.value' não é uma expressão de referência de propriedade válida. | InvalidPropertyReferenceExpression |
400 | InvalidInput | A expressão de série temporal '$event.temperature.Double' em 'projectedVariables.temperature.filter' é inválida. Só pode ser uma expressão de predicado que retorna um booliano. | InvalidPredicateExpression |
400 | InvalidInput | A expressão de série temporal '$event.temperature.Double' em 'projectedVariables.temperature.aggregation' é inválida. Ele não continha uma expressão de agregação. | InvalidAggregateExpression |
400 | InvalidInput | A expressão de série temporal '$event.temperature.Double > 0' em 'projectedVariables.temperature.value' não é uma expressão de valor válida do tipo 'numérico'. | InvalidValueExpression |
400 | InvalidInput | A expressão de série temporal de valor em 'projectedVariables.temperature.value' não deve ser especificada ou deve ser nula para variável do tipo 'aggregate'. | ValueExpressionShouldNotBeSpecified |
400 | InvalidInput | A expressão de série temporal de valor em 'projectedVariables.temperature.value' deve ser especificada para o tipo de variável 'numeric'. | ValueExpressionShouldBeSpecified |
400 | InvalidInput | O tipo de variável 'aggregate' é inválido para a expressão 'min($value)' em 'projectedVariables.temperature.aggregation'. | InvalidVariableKind |
400 | InvalidInput | O intervalo de tempo '00.00:01' em 'interval' não é um formato de timespan ISO8601 válido. | InvalidTimeSpanFormat |
400 | InvalidInput | A instância com timeSeriesId '["ABC123"]' não foi encontrada. | InstanceNotFound |
400 | InvalidInput | A instância com o nome 'timeSeriesName' não foi encontrada. | InstanceNotFound |
400 | InvalidInput | A instância com timeSeriesId '["ABC321"]' não pode ser excluída. Já há eventos ingeridos associados a essa ID de série temporal. | CannotDeleteInstance |
400 | InvalidInput | O ambiente com a ID '5e19f688-83fb-4aee-8321-5c123ed016b7' não dá suporte a APIs de consulta de série temporal. | TimeSeriesQueryNotSupported |
400 | InvalidInput | A variável projetada com o nome 'temperature' não foi encontrada nas definições de tipo ou variável embutida. | ProjectedVariableNotFound |
400 | InvalidInput | Não é possível upsert type with ID '7e19g688-83fb-4aee-8321-5c123ed016b7' e name 'ABC123'. Esse nome já é usado pelo tipo com a ID '6e19g688-83fb-4aee-8321-5c123ed016b7'. | NameAlreadyExists |
400 | InvalidInput | Não é possível upsert hierarchy with ID '4e19g688-83fb-4aee-8321-7c123ed016b7' and name 'XYZ123'. Esse nome já é usado pela hierarquia com a ID '8e39g688-83fb-4aee-8321-5c123ed016b7'. | HierarchyNotDefined |
400 | InvalidInput | O número de instâncias excedeu o limite de '1.000.000'. | NumberOfInstancesExceededLimit |
400 | InvalidInput | O número de tipos excedeu o limite de '1000'. | NumberOfTypesExceededLimit |
400 | InvalidInput | O número de hierarquias excedeu o limite de '32'. | NumberOfHierarchiesExceededLimit |
400 | InvalidInput | O tamanho da entidade é maior que o tamanho máximo permitido '16.384'. | ObjectSizeExceededLimit |
400 | InvalidInput | O nome do objeto 'ABC123' com comprimento '6' excede o limite máximo de caracteres permitido de '5'. | NameExceededLimit |
408 | RequestTimeout | A solicitação atingiu o tempo limite após '30' segundos. | BatchRequestSizeExceededLimit |
503 | TooManyRequests | Contagem de solicitações simultâneas de '30' excedida para o ambiente '95880732-01b9-44ea-8d2d-4d764dfe1904'. | EnvRequestLimitExceeded |
Confira também
Para obter mais informações sobre o registro de aplicativo e o modelo de programação do Azure Active Directory, consulte Azure Active Directory para desenvolvedores.
Para saber mais sobre os parâmetros de solicitação e autenticação, leia Autenticação e autorização.
As ferramentas que auxiliam no teste de solicitações e respostas HTTP incluem:
Fiddler. Esse proxy de depuração da Web gratuito pode interceptar suas solicitações REST, para que você possa diagnosticar as mensagens de solicitação e resposta HTTP.
JWT.io. Você pode usar essa ferramenta para despejar rapidamente as declarações em seu token de portador e, em seguida, validar seu conteúdo.
O Postman. Essa é uma ferramenta gratuita de teste de solicitação HTTP e resposta para depuração de APIs REST.
Saiba mais sobre Azure Time Series Insights Gen2 examinando a documentação do Gen2.