ecomplus / app-bling-erp

E-Com Plus app to integrate Bling ERP
GNU General Public License v3.0
3 stars 4 forks source link

Erros de importação e exportação de pedidos/status #62

Open matheusgnreis opened 3 years ago

matheusgnreis commented 3 years ago

Várias lojas relataram que estão tendo problema com status de pedidos, de exportar pedidos automaticamente para o bling ou importar e no log o erro informado é:

Error: timeout of 30000ms exceeded at createError (/workspace/node_modules/axios/lib/core/createError.js:16:15) at RedirectableRequest.handleRequestTimeout (/workspace/node_modules/axios/lib/adapters/http.js:280:16) at RedirectableRequest.emit (events.js:375:28) at RedirectableRequest.emit (domain.js:532:15) at Timeout._onTimeout (/workspace/node_modules/follow-redirects/index.js:166:12) at listOnTimeout (internal/timers.js:557:17) at processTimers (internal/timers.js:500:7)

Já tem mais ou menos 1 mes que isso está ocorrendo, com algumas lojas tendo pedidos estornados, porque o pedido entra na loja e não é exportado para o Bling, dai a loja só acompanha pedido direto no bling. Ontem isso ocorreu de forma mais assídua, tentei fazer exportação manual e deu esse erro. Alguns, segundo o log, nem pra fila de exportação foi, porque eu pesquisava pelo ID e não mostrava no log, no caso ai deve ser até outro problema com o trigger

leomp12 commented 3 years ago

O que você colou de erro aí não só informa que houve um timeout em alguma request, sem saber qual não ajuda muito 😬 Acompanhou ou procurou nos logs para identificar a config da request ou o arquivo e linha (pelo menos provável) da request?

leomp12 commented 3 years ago

Até aí não dá pra saber, por exemplo, se esse timeout é de algum endpoint do Bling mesmo...

matheusgnreis commented 3 years ago

Esse timeout, foi logo após a exportação manual. No firebase deu 201, mas no log do painel mostrou isso ai. Problema que além disso, alguns pedidos nem foram enviados para a lista de exportação, parece que foram esquecidos mesmo. Outros têm retorno de 201 no log, mas o pedido não foi criado no Bling

leomp12 commented 3 years ago

O ponto é que logo após a exportação manual ou qualquer outro evento, diversas requests podem ser feitas pela cloud function, tanto na nossa API quanto no Bling, então é necessário saber no mínimo até que ponto a função foi executada.

Invariavelmente o primeiro passo é encontrar um erro "único" e pelo menos um pouco conclusivo (adicionando debugs para isso se necessário) ou acompanhar os logs até o erro para tentar identificar o ponto em que a função parou.

O 201 só signifca que foi adicionado na fila, quando não foi adicionado talvez tenha sido por processamento paralelo da própria fila, de qualquer forma os erros não se relacionam.