Queries API GraphQL
As queries são o ponto de partida para consultar informações. Você usa uma query para solicitar informações de um banco de dados. A API GraphQL conta com as queries para buscar valores e retornar os dados solicitados em formato semelhante a um arquivo JSON.
O uso de queries possibilita solicitar e buscar dados específicos. Assim, mesmo utilizando uma query breve, você consegue receber uma resposta para a sua solicitação apenas com os dados que deseja, sem demais dados que não sejam essenciais naquele momento. O uso de queries também proporciona respostas mais rápidas, já que a API não busca uma quantidade desnecessária de dados.
As queries também facilitam adicionar ou deletar informações de seus requests. Por exemplo, se você faz um request de dados de httpMetrics
:
query HttpQuery {
httpMetrics(
limit: 2
filter: {
tsRange: {begin:"2022-10-20T10:10:10", end:"2022-10-23T10:10:10"}
}
)
{
ts
sourceLocPop
requests
}
}
E decide que quer adicionar dados de idnsQueriesMetrics
ao seu request, você pode adicionar uma query semelhante, modificando apenas o dataset que você deseja buscar, e rodar outro request:
query IdnsQuery {
idnsQueriesMetrics(
limit: 2
filter: {
tsRange: {begin:"2022-10-20T10:10:10", end:"2022-10-23T10:10:10"}
}
)
{
ts
sourceLocPop
requests
}
}
As queries também melhoram a organização dos seus requests e responses. Devido à habilidade de adaptação da GraphQL, você pode realizar diversas chamadas para a API e ainda assim receber apenas os dados que você solicitou através de um resultado no formato JSON.
Usar a API GraphQL e seus recursos também melhoram seu desempenho.
Operadores
Operadores são chaves especiais que permitem que você personalize sua query para realizar desde comparações lógicas básicas até mais complexas. Você pode usar eles tanto para a Metrics GraphQL como para a Events GraphQL.
Dependendo do operador que você usar, você muda a condição que está consultando e recebe resultados diferentes. Os seguintes operadores podem ser utilizados com a GraphQL:
Chave | Descrição | Operador da GraphQL |
---|---|---|
eq | Consulta dados que são uma combinação exata do valor especificado. | Eq |
ne | Consulta dados que são diferentes do valor especificado. | Ne |
like | Consulta dados que são semelhantes ao valor especificado, considerando maiúsculas e minúsculas. | Like |
ilike | Consulta dados que são semelhantes ao valor especificado, sem considerar maiúsculas e minúsculas. | Ilike |
is_null | Consulta dados que são nulos ou não são nulos em relação ao valor especificado, usando true ou false . |
IsNull |
in | Consulta dados que são parte de uma determinada lista de acordo com o valor especificado. | In |
not_in | Consulta dados que não estão contidos em uma determinada lista de acordo com o valor especificado. | NotIn |
lt | Consulta dados com valores menores do que o valor especificado. | Lt |
lte | Consulta dados com valores menores ou iguais ao valor especificado. | Lte |
gt | Consulta dados com valores maiores do que o valor especificado. | Gt |
gte | Consulta dados com valores maiores ou iguais ao valor especificado. | Gte |
range | Consulta dados que são parte de uma determinada faixa de valores de acordo com os valores especificados. | Range |
Se você usar os operadores Like
e Ilike
, você também deve passar o identificador %
dentro do campo na posição que desejar:
Posição do identificador | Descrição | Exemplo |
---|---|---|
Fim | Qualquer string que começa com os caracteres. | “Braz%” |
Início | Qualquer string que termina com os caracteres. | “%ao Paulo” |
Fim e início | Qualquer string que contém os caracteres. | “%ttp%” |
Veja exemplos de alguns campos com operadores:
Operador | Exemplo | Descrição |
---|---|---|
Eq | upstreamCacheStatusEq: “HIT” | Busca todos os dados que têm uma combinação exata com o valor HIT no campo upstreamCacheStatus. |
Ne | geolocCountryNameNe: “Brazil” | Busca todos os dados que não contêm Brazil no campo geolocCountryName. |
Like | hostLike: “%mysite.com%” | Busca todos os dados de hosts com o padrão mysite.com , considerando maiúsculas e minúsculas. |
Ilike | hostIlike: “%mysite.com%” | Busca todos os dados de hosts com o padrão mysite.com , sem considerar maiúsculas e minúsculas. |
Dependendo do tipo de campo de um conjunto de dados que você está consultando, você poderá usar operadores diferentes:
Tipo de campo | Possíveis operadores |
---|---|
String | Eq , Ne , Like , Ilike , In , NotIn , IsNull |
Integer, Float, DateTime | Eq , Lt , Lte , Gt , Gte , Ne , In , NotIn , IsNull , Range |
Não encontrou o que procurava? Abra um ticket.