Problema em mensagens PUB/SUB relacionada com a formatação JSON

Description

CAPL - Internal Support default text according to the team DoR (Definition of Ready)

1 - DESCRIBE THE ISSUE YOU'RE HAVING:

Ambiente exemplo.

https://totvstechfin.carol.ai/tenant9c83f535fd564e66be9dff1a7dcc6729/carol-ui/explore/search/arinvoicepayments/bq/golden/23f594103b2a47df19bb55cbb0d15d34::cfe-ing::1710797826974000?p=1&ps=25&filters=%5B%7B%22recordType%22:%22GOLDEN%22%7D,%7B%22consolidation%22:%22y%22%7D,%7B%22meta-mdmId%22:%5B%2223f594103b2a47df19bb55cbb0d15d34%22%5D%7D%5D

Estamos tentando identificar a causa raiz do problema que ocorreu com as mensagens PUB/SUB de forma geral, em várias tenants e DM’s diferentes com muita frequência. (https://console.cloud.google.com/logs/query;query="Failed to encode Latin1";cursorTimestamp=2024-03-16T01:40:21.548245349Z;startTime=2024-03-13T20:04:32.515Z;endTime=2024-03-16T01:44:32.515Z?project=labs-app-mdm-production&folder=true&organizationId=567051164134&pli=1). A primeira ocorrência foi 2024-03-15 18:55:19.003 e a última foi 2024-03-19 14:00:03.561. O erro é

{"ack":false,"redeliverRecordIds":null,"message":"Failed to encode Latin1"}

.

Exemplo do payload em anexo.

Abaixo o retorno da tratativa do app da mensagem com erro.

Nos logs tem um tratamento da mensagem com retorno 201.
insertId: "2konxgdtyzmg9dut"jsonPayload: {
logger: "com.totvslabs.mdm.worker.handler.pubsub.SubscriptionMessageReceiver"message: "Response of webhook 6897e54abbe64129b46c8c5906cab05c (arinvoicepayments) for tenant 392be9edcdf842599db8c866edf7bc51 - https://fmscash.tab1784.k8s.us-central1.gcp.tks.sh/carol-sync/api/v2/push, message id: 10714064227089103 returned 201 - Created - 96231ms - {"ack":false,"redeliverRecordIds":null,"message":"Failed to encode Latin1"}. Golden IDs[ Total: 10 Inserted: 7 Deleted: 3 InsertedIds: [558dad00e63a57b25c962361df3a473d, f68dab51cb1caa9967b8b1873b478c24, 94d7f1f78391a6e26fcd08e89555d99e, 485cd509584b0cebe723d4990a924cdb, 2e875573ab9ba505f27a401c00a0f3ee, 2ad41e208601ce4b9bd971664212c790, 1414af83b543796c5a3225322774547d] DeletedIds [6c15da5a9b836773c2dfefa4f197fbed, 00c58b6ffd01e7c5eb0cdd4cfa03d2eb, 23f594103b2a47df19bb55cbb0d15d34]]. Trial #1. "messageId: "10714064227089103"sourceLocation: {
file: "com/totvslabs/mdm/worker/handler/pubsub/SubscriptionMessageReceiver.java"function: "com.totvslabs.mdm.worker.handler.pubsub.SubscriptionMessageReceiver.receiveMessage"line: 319
}thread: "sub-group-antecipa-19"timestamp: "2024-03-18T17:35:53.607Z"totalTime: "96231"
}labels: {
compute.googleapis.com/resource_name: "gke-prod-mdm-1-mdm-workers-pubsub-pre-1cee17fe-24jx"k8s-pod/app_kubernetes_io/component: "worker"k8s-pod/app_kubernetes_io/instance: "worker-pubsub"k8s-pod/app_kubernetes_io/name: "worker"k8s-pod/app_kubernetes_io/version: "481eb96094"k8s-pod/pod-template-hash: "b5d9cddf9"
}logName: "projects/labs-app-mdm-production/logs/stdout"receiveTimestamp: "2024-03-18T17:35:54.930369433Z"resource: {
labels: {
cluster_name: "prod-mdm-1"container_name: "worker"location: "us-central1"namespace_name: "mdm"pod_name: "worker-pubsub-b5d9cddf9-pzkv6"project_id: "labs-app-mdm-production"
}type: "k8s_container"
}severity: "INFO"timestamp: "2024-03-18T17:35:53.607514743Z"

Apesar de ter esse tratamento acima com 201 (

{"ack":false,"redeliverRecordIds":null,"message":"Failed to encode Latin1"}

)

O json estava “quebrado”, sem formatação correta, faltando alguns simbolos. Tem exemplos do payload em https://jiraproducao.totvs.com.br/secure/attachment/2289998/2289998_PAYLOG_XAVIER_ERRO_2.json.

Foi algum incidente ou atualização causou o problema nesse período? A ideia é trabalhar um retorno para o questionamento do cliente sobre a causa raiz.

2 - DESCRIBE ALTERNATIVES YOU CONSIDERED: <text>
3 - ADD AS MUCH CONTEXT AS POSSIBLE (LINKS, SLACK CONVERSATIONS, SCREENSHOTS, ETC): <text>

4- Comportamento esperado

  • Mensagem distribuída com Json válido.

Activity

Automation for Jira 3 April 2024, 12:45 Jira Internal Users

Esta issue foi automaticamente movida para WAITING DEPLOY, pois o PR foi mergeado na branch master no Github.

Automation for Jira 3 April 2024, 12:45 Jira Internal Users

Github usuário douglascoimbra aprovou um PR e foi adicionado como Shared Assignee nesta issue.

fix: https://totvsiddia.atlassian.net/browse/CAPL-5698#icft=CAPL-5698 - Update fastjson to avoid json errors and security issues

Automation for Jira 3 April 2024, 12:36 Jira Internal Users

Esta issue foi automaticamente movimentada para QA REVIEW, pois o PR foi aprovado no Github.

Automation for Jira 28 March 2024, 14:12 Jira Internal Users

• Card validado pelo time de QA. Pendente apenas o code review.

Mensagem enviada pelo Slack - plataforma-carol-internal - Douglas Coimbra Lopes

Automation for Jira 27 March 2024, 20:02 Jira Internal Users

Esta issue foi automaticamente movimentada para REVIEW, pois o PR (não DRAFT e não WIP) foi criado no Github.

fix: https://totvslabs.atlassian.net/browse/CAPL-5698#icft=CAPL-5698 - Update fastjson to avoid json errors and security issues

Automation for Jira 26 March 2024, 18:16 Jira Internal Users

@MARCOS STUMPF ,

@Geny Isam Hamud Herrera ,
Esta issue foi planejada para ser entregue até 2024-04-15. Você pode confirmar consultando o campo Due Date desta issue.

Datas já planejadas para esta issue: 2024-04-15

Se o campo External Issue Link estiver preenchido com o link de uma issue válida no Jira Produção o cliente também será notificado no Jira Produção.

Automation for Jira 26 March 2024, 18:15 Jira Internal Users

Link para a thread da mensagem no Slack canal #plataforma-red-phone:

https://totvscarol.slack.com/archives/C03NT4US9J9/p1711476944226379