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 muestre en la IU. Puedes usar el ID de rol roles/timeseriesinsights.datasetsOwner con el comando 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 de depuración comunes 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].

Como alternativa, puedes intentar consultar una porción explícita que esperas que esté presente en el conjunto de datos con la API de evaluateSlice. Esto obliga al sistema a mostrar las series temporales para 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: Se obtuvo densidad = 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 ofrecer 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 no existan los datos.

  • DetectionTime y TimeseriesParams

    • Asegúrate de que [detectionTime - TimeseriesParams.forecastHistory, detectionTime + TimeseriesParams.granularity] sea un subrango de todos los eventos disponibles en tu conjunto de datos para que haya suficiente historial con el que funcione la API de Timeseries Insights. 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 Cuánto retrocedemos en el tiempo y cuántos puntos se incluyen de las series temporales son determinados por TimeseriesParams.forecastHistory y TimeseriesParams.granularity,

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

Además, consulta Conceptos de las series temporales para ver las definiciones de los parámetros.