Error 429 al recuperar datos de la base de datos

Creo que de nuevo no está funcionando bien después de la solución de Exact Online: The remote server returned an error: (429) Too Many Requests. (Too Many Requests). Vuelvo a recibir el mensaje «Too many requests» sin que se esté haciendo nada diferente a otros días/semanas.

¿Podría añadir una captura de pantalla de las Estadísticas de Uso de Licencias en la pantalla principal, tal como se muestra arriba?

Si los números aparecen en rojo, ¿podría también añadir los tres valores (un porcentaje y dos números) que se muestran al pasar el cursor del ratón sobre la barra?

232%
33.393 segundos
14.400 segundos

El consejo es revisar en la línea de tiempo qué solicitudes tienen un tiempo de procesamiento largo. Puede encontrarla en el menú del lado izquierdo en Invantive Cloud.

Por ejemplo, esta solicitud tarda 10 minutos, mientras que con PjtTimeTransactionsIncremental probablemente esté lista en cuestión de segundos:

Además, se recomienda no iniciar todas las descargas al mismo tiempo; varíe los horarios de inicio eligiendo momentos no redondos, como las 04:53 en lugar de las 05:00.

También se recomienda no iniciar descargas alrededor de las 02:00; en ese horario los sistemas suelen estar inactivos por mantenimiento, y el tiempo adicional de ejecución sí cuenta, o bien cuenta en los totales. Es mejor a partir de las 04:00 UTC.

El siguiente ejemplo muestra cómo muchas se ejecutan (y esperan) de forma masiva al mismo tiempo:

Además, se analizará si es posible añadir temporalmente más margen al limitador de velocidad (rate limiter) de duración reciente.

Me parece que un tiempo de procesamiento largo no tiene relación con “too many requests”, ¿verdad?

Aun así, gracias por el comentario, porque eso sí quiero solucionarlo.

¿Cómo puedo averiguar a qué informe corresponde esto? La instrucción SQL solo devuelve esto “[Division] = :w1”

He mezclado la actualización en cuanto al horario. Lamentablemente no puedo seleccionar por minutos. Power BI Service solo permite horas enteras y medias horas.

El mensaje “Too Many Requests” es un mensaje genérico (estado HTTP 429) según el estándar HTTP que indica que se ha hecho un uso demasiado intensivo del servicio. Dentro de Invantive Cloud, esto puede deberse a la cantidad de solicitudes realizadas, pero también a la superación de otros límites, como la duración, el número de llamadas a la API o el número de filas.

Para poder rastrear el origen, se recomienda añadir una referencia tal como se describe en:

Por ejemplo, utilizando en cada consulta el siguiente OData.Feed, variando enter-your-chosen-id-for-the-source:

    Bron = OData.Feed("https://bridge-online.cloud/3279/odata4/", null, [Implementation="2.0", ODataVersion=4, OmitValues=ODataOmitValues.Nulls, Headers=[Referer = "enter-your-chosen-id-for-the-source" ], Timeout=#duration(0,4,0,0)]),

Con el referer mostrado en la solicitud, se puede entonces determinar el origen.

Me vuelve a pasar, aunque en realidad no hace nada diferente respecto al pasado. El día apenas empieza.
¿Pueden arreglarlo rápido? El cliente tiene que reportar cifras hoy.

Las recomendaciones son:

  • Recomendación 1: Después de añadir el referer, seguir los pasos descritos en la respuesta anterior:
  • Recomendación 2: además, puede añadir aquí el ID de solicitud que genera un mensaje de error. Los encabezados HTTP de este contienen qué criterios se han superado.
  • Recomendación 3: por último, se recomienda añadir una captura de pantalla de las Estadísticas de Uso de Licencia, tal como se muestran en la página de inicio de Invantive Cloud o Invantive Bridge Online.

Consejo 1: ya se había hecho:
Consejo 2: veo varios en rojo, pero por ejemplo 0HNJIOCHK3BGE:00000013
Consejo 3: ver captura de pantalla

Se ha establecido de forma temporal una ampliación de la duración de frescura de hasta un 500%.

Se recomienda optimizar las descargas tal como se describe anteriormente.

Está renovando, pero el ID 0HNJJ6QQ3ES03:0000000F está tardando muchísimo.

select t.\[Account\], t.\[AmountDC\], t.\[CostCenter\], t.\[CostUnit\], t.\[Date\], t.\[Description\], t.\[Division\], t.\[FinancialPeriod\], t.\[FinancialYear\], t.\[GLAccount\], t.\[InvoiceNumber\], t.\[Item\], t.\[JournalCode\], t.\[Quantity\], t.\[Type\]
from   ExactOnlineREST.Incremental.TransactionLinesIncremental@eol t
where  Division in (:w1, :w2, :w3, :w4)

¿Qué tiene esto de especial para que tarde tanto?

Esto puede deberse a diversos motivos. La ruta más práctica para un primer análisis es buscar esta solicitud en la pantalla «Historial» mediante el Request ID.

Allí podrá encontrar diversas características, como la duración del procesamiento, el número de llamadas a la API y la cantidad de datos.

También puede hacer clic en el botón «Sesión I/O’s» para acceder a la duración, los horarios y la extensión de las llamadas a la API correspondientes.

Puede encontrar información más general sobre las tablas *Incremental en:

Esta pregunta se cerró automáticamente tras 1 semana de inactividad. La última respuesta proporcionada se marcó como solución.

Si el problema vuelve a surgir, por favor plantea una nueva pregunta en un tema aparte. Te pedimos que incluyas en la nueva pregunta un enlace a este tema pegando su URL en el texto.