Resolução de problemas

Acesso

Não foi possível adicionar Timeseries Insights DataSet Owner à conta de serviço

A função "Proprietário do conjunto de dados de estatísticas de séries cronológicas" pode não ser apresentada na IU. Pode usar o ID da função roles/timeseriesinsights.datasetsOwner com o comando gcloud para conceder o acesso necessário.

 gcloud projects add-iam-policy-binding "${PROJECT_ID}" \
      --member="serviceAccount:${SVC_ACCOUNT}" \
      --role=roles/timeseriesinsights.datasetsOwner \
      --condition=None

Deteção de anomalias

Esta secção apresenta alguns passos de depuração comuns para compreender as respostas da API Timeseries Insights se forem diferentes das suas expetativas.

Fatias vazias

Quando executa uma consulta do Timeseries Insights num conjunto de dados carregado, pode receber uma resposta vazia.

Example empty response,
{'name': 'projects/demo-project/datasets/demo-dataset',
'slices': []}

Os slices vazios indicam que não existem pontos de dados nos intervalos de tempo pedidos [detectionTime - TimeseriesParams.forecastHistory, detectionTime + TimeseriesParams.granularity].

Em alternativa, pode tentar consultar uma fatia explícita que espera estar presente no conjunto de dados através da API evaluateSlice. Isto força o sistema a devolver a série cronológica para a fatia especificada e o respetivo estado de avaliação.

ForecastResult.label INSUFFICIENT_DATA

Quando executa uma consulta da API Timeseries Insights ou evaluateSlice, pode observar INSUFFICIENT_DATA como a ForecastResultLabel por fatia. Isto significa que não temos dados suficientes para classificar as fatias específicas.

status code: 3. message: Got density = xx. Densidade mínima = yy

No exemplo de código seguinte, o utilizador pediu à API Timeseries Insights para fazer a classificação se 90% dos pontos de dados estiverem presentes nos intervalos de tempo pedidos [detectionTime - TimeseriesParams.forecastHistory, detectionTime]. A API Timeseries Insights não pode fornecer uma classificação porque apenas 1% dos pontos de dados não está vazio no intervalo da série cronológica.

"status": {
  "code": 3,
  "message": "Got density = 1. Min density = 90"
}

Experimente os seguintes parâmetros no pedido para compreender por que motivo os pontos de dados podem não existir.

  • detectionTime e TimeseriesParams

    • Certifique-se de que [detectionTime - TimeseriesParams.forecastHistory, detectionTime + TimeseriesParams.granularity] é um subintervalo de todos os eventos disponíveis no seu conjunto de dados, para que haja histórico suficiente para a API Timeseries Insights funcionar. Isto pode exigir que escolha um detectionTime próximo do fim da série cronológica.

    • A API Timeseries Insights cria uma série cronológica retrocedendo no tempo a partir do detectionTime. A quantidade de tempo que recuamos e o número de pontos incluídos na série cronológica são determinados por TimeseriesParams.forecastHistory e TimeseriesParams.granularity.

    • Comece com um minDensity = 0.0 se não tiver a certeza da densidade real dos eventos no conjunto de dados. Ajuste o parâmetro para uma melhor precisão mais tarde.

Consulte também Conceitos de séries cronológicas para ver as definições dos parâmetros.