Soluciona problemas

Acceso

No se pudo agregar Timeseries Insights DataSet Owner a la cuenta de servicio

El “Propietario de DataSets de Timeseries Insights” no se muestren en la IU. Puedes usar el ID de rol roles/timeseriesinsights.datasetsOwner con el de gcloud para otorgar el acceso necesario.

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

Detección de anomalías

En esta sección, se establecen algunos pasos comunes de depuración para comprender el Respuestas de la API de Timeseries Insights si son diferentes de tus expectativas.

Porciones vacías

Cuando ejecutas una consulta de estadísticas de series temporales en un conjunto de datos cargado, podrías recibir un estado respuesta.

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

Un campo slices vacío indica que no hay datos en la hora solicitada. intervalos [detectionTime - TimeseriesParams.forecastHistory, detectionTime + TimeseriesParams.granularity].

De forma alternativa, puedes intentar consultar por una porción explícita que esperas estar presentes en el conjunto de datos mediante el evaluateSlice API de gcloud. Esto obliga al sistema a mostrar las series temporales de la porción determinada y su estado de evaluación.

ForecastResult.label INSUFFICIENT_DATA

Cuando ejecutas una API de Timeseries Insights búsqueda o evaluateSlice, podrías observar INSUFFICIENT_DATA como ForecastResultLabel por porción. Esto significa que no tenemos suficientes datos para clasificar los segmentos particulares.

Código de estado: 3. Mensaje: Densidad obtenida = xx. Densidad mínima = yy

En el siguiente ejemplo de código, el usuario le pidió a la API de Timeseries Insights que hiciera la Clasificación si el 90% de los datos está presente en el tiempo solicitado intervalos [detectionTime - TimeseriesParams.forecastHistory, detectionTime]. La API de Timeseries Insights no puede brindar una clasificación, ya que solo el 1% de la los datos no están vacíos en el intervalo de series temporales.

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

Intenta experimentar con los siguientes parámetros en la solicitud para comprender por qué es posible que los datos no existan.

  • DetectionTime y TimeseriesParams

    • Asegúrate de que [detectionTime - TimeseriesParams.forecastHistory, detectionTime + TimeseriesParams.granularity] un subrango de todos los eventos disponibles en tu conjunto de datos para que haya suficiente historial para API de Timeseries Insights para trabajar. Esto podría requerir te permite elegir una detectionTime que esté cerca del final de la serie temporal.

    • La API de Timeseries Insights crea una serie temporal retrocediendo en el tiempo desde la detectionTime TimeseriesParams.forecastHistory y TimeseriesParams.granularity determinan cuánto retrocedemos en el tiempo y cuántos puntos se incluyen en la serie temporal.

    • Comienza con un minDensity = 0.0 si no estás seguro de la la densidad de los eventos en el conjunto de datos. Ajusta el parámetro para obtener una mejor la precisión más adelante.

Consulta también los conceptos de series temporales para las definiciones de parámetros.