Observabilidade: propagação do evento CarolPipelinesExecutionSummary não considera todas os eventos de CarolPipelineExecuted
Description
Pontos de contato
- Furtado
- Robson
Problema
O batchID “16798280332042169d515f4bf3a40052-protheus-1721402659“ teve uma série de propagação dos evento de “CarolPipelineExecuted“ conforme observado abaixo:
Query acima: “Query para listar todos os eventos de um batchID”. Essa query filtra por batchID, pipeline e Data Model Name.
Observamos que o evento “CarolPipelinesExecutionSummary“ possui zero registros no seu pacote.
Entendemos que isso deve estar relacionado ao fato que na tabela “pipeline_process“ foi registrado apenas uma task para o batchID, e no caso acima, tivemos várias tasks executando o mesmo batchID, o que pode ocorrer em ambientes unificados principalmente quando o batchID ainda está aberto recebendo dados e temos tasks processando o batchID em questão.
Na query na tabela “pipeline_process“ notamos que apenas uma task foi vinculada ao batchID, e o evento summary considerou os registros processados apenas por essa task:
select *
from pipeline_process pp
inner join pipeline p on replace(p.id::text,'-','') = replace(pp.pipeline_id::text,'-','')
where batch_id = '16798280332042169d515f4bf3a40052-protheus-1721402659'
and p.carol_app_name = 'gesplanprotheusfree'
and pipeline_name = 'freecontaspagarprevisto'
Criterio de Aceite
O evento “CarolPipelinesExecutionSummary“ deve considerar todos os registros gerado por todos os eventos até o momento (registrados na imagem aicma pelos eventos “CarolPipelineExecuted“).
Sugestão para investigação
- Mapear o job do BQ que gerou o evento de “CarolPipelinesExecutionSummary“
Queries
Query para listar todos os eventos de um batchID:
select
row_number() over(order by tmp) as row,
*
from (
-- Executed
select
created,
event_type,
null as messageId,
carolTaskId,
dataModelName,
goldenRecordCount + rejectedRecordCount as recordsCount,
batch_id,
pipe,
'a' origem,
tmp
from (
select
created,
event_type,
payload->>'taskId' as carolTaskId,
payload->>'dataModelName' as dataModelName,
(payload->>'goldenRecordCount')::int as goldenRecordCount,
(payload->>'rejectedRecordCount')::int as rejectedRecordCount,
batch_id,
payload->>'pipelineName' as pipe,
payload->>'timestamp' as tmp
-- , *
from
observability_event
where
batch_id = '16798280332042169d515f4bf3a40052-protheus-1721402659'
and event_type = 'CarolPipelineExecuted'
and payload->>'dataModelName' = 'freecontaspagarprevisto'
) as ee
union all
-- Summary
select
created,
event_type,
null as messageId,
null as carolTaskId,
dataModelName,
goldenRecordCount + rejectedRecordCount as recordsCount,
batch_id,
pipe,
'b' origem,
tmp
from (
select
e.created,
e.event_type,
d->>'dataModelName' as dataModelName,
(d->>'goldenRecordCount')::int as goldenRecordCount,
(d->>'rejectedRecordCount')::int as rejectedRecordCount,
e.batch_id,
'' as pipe,
payload->>'timestamp' as tmp
from
observability_event as e,
jsonb_array_elements(e.payload->'dataModels') as d
where
e.batch_id = '16798280332042169d515f4bf3a40052-protheus-1721402659'
and e.event_type = 'CarolPipelinesExecutionSummary'
and e.payload->>'appName' = 'gesplanprotheusfree'
and e.payload->>'tenantId' = '158ee83a4c964aeab890bb8cf29a5952'
and d->>'dataModelName' = 'freecontaspagarprevisto'
) as es
union all
-- Sent
select
created,
event_type,
payload->>'messageId' as messageId,
payload->>'taskId' as carolTaskId,
payload->>'dataModelName' as dataModelName,
(payload->>'recordsCount')::int as recordsCount,
batch_id,
'' as pipe,
'c' origem,
payload->>'timestamp' as tmp
from
observability_event
where
batch_id = '16798280332042169d515f4bf3a40052-protheus-1721402659'
and event_type in ('CarolDataModelSubscriptionSent')
and payload->>'appName' = 'gesplanprotheusfree'
and payload->>'tenantId' = '158ee83a4c964aeab890bb8cf29a5952'
and payload->>'dataModelName' = 'freecontaspagarprevisto'
) as r
order by
tmp
Valor anterior do campo deployment date era 2024-08-20T17:49:00.0+0000. Parece ter ocorrido um novo deploy nesta issue - deploy.
Ocorreu o deploy em Produção.
Foi realizado o commit.
Ocorreu o deploy em Produção. Issue movimentada para Done.
Nenhuma issue associada no Jira Produção.
Foi realizado o commit.
Foi realizado o commit.
Esta issue teve o seu status alterado, pois ocorreu o merge da branch CAPL-6409 na branch develop.
Foi aprovado o PR.
Esta issue teve o seu status alterado, pois foi aprovado o PR.
Foi criado o PR.
Foi realizado o commit.
Esta issue teve o seu status alterado, pois foi criada a branch sem a sigla WIP no nome.
@Robson Thanael Poffo ,
@Renan Fernando Schroeder ,
Este issue foi planejada para ser entregue até 2024-09-27. Você pode confirmar consultando o campo Due Date desta issue.
Data já planejadas para esta issue: 2024-09-27
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.