Limites da GraphQL API
Consulte os limites de linhas, de campos selecionados e de retenção de uma query da GraphQL API, o erro após cada um e o intervalo das linhas agregadas.
A GraphQL API aplica limites fixos a toda query: as linhas que ela retorna, os campos que ela seleciona e a antiguidade máxima dos dados brutos. A duração da janela de tempo também define o intervalo de tempo de cada linha que uma query agregada retorna.
Limites de query
Uma query que ultrapassa um limite de linhas ou de campos retorna HTTP 400, com a mensagem na chave detail de um corpo JSON, não em um array errors da GraphQL. Dados brutos mais antigos que o período de retenção não retornam erro:
| Escopo | Limite | Após o limite |
|---|---|---|
Linhas por query, definidas por limit | 0 a 10.000 linhas | 400 com The value for the query limit is invalid (must be between 0 to 10000 rows). |
| Campos selecionados, datasets do endpoint de metrics | 37 campos | 400 com You have exceeded the limit amount allowed for selected fields (37 fields). |
Campos selecionados, workloadEvents | 36 campos | Com 37 campos, 400 com The query has reached a system limit. Please adjust your query and try again. Com 38 ou mais, 400 com a mensagem de 37 campos. |
| Dados brutos no endpoint de events | Cerca de 7 dias | A query retorna 200 com os registros dentro do período de retenção e nenhum mais antigo. |
Sem limit, uma query retorna 10 linhas. O argumento offset, 0 por padrão, define quantas linhas a API pula antes de retorná-las. O campo de saída de uma função de agregação, como sum, não conta para os 37 campos: uma query de workloadMetrics que seleciona ts, outros 36 campos e sum é bem-sucedida.
Em workloadEvents, o 37º campo retorna a mensagem de limite do sistema, quaisquer que sejam o campo e a janela de tempo. Por exemplo, uma query de workloadEvents que seleciona 37 campos falha, e a mesma query com 36 campos é bem-sucedida.
Esta query pede 10.001 linhas:
A API a recusa com 400 e este corpo:
Todas as mensagens que a API retorna, com a sua causa, estão em Respostas de erro.
Intervalo de tempo das linhas agregadas
Uma query agregada no endpoint de metrics retorna linhas agrupadas em intervalos de tempo. O resolvedor adaptativo define o intervalo a partir da duração da janela de tempo, então uma janela mais longa retorna menos linhas, mais largas:
| Duração da janela de tempo | Intervalo de cada linha |
|---|---|
| Até cerca de 2 dias | 1 minuto |
| A partir de 60 horas | 1 hora |
| A partir de cerca de 60 dias | 1 dia |
Por exemplo, uma janela de 48 horas ou menos retorna uma linha por minuto, como 13:34:00, e uma janela de 59 dias retorna uma linha por hora. A troca para um intervalo mais largo não retorna erro.
Esta query soma as requisições de uma janela de 61 dias por intervalo, da mais recente para a mais antiga:
A resposta contém uma linha por dia:
Para o formato da query, consulte Queries.