Detalhe da execução
const url = 'https://api-connect.zoppy.com.br/connectors/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/runs/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api-connect.zoppy.com.br/connectors/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/runs/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \ --header 'Authorization: Bearer <token>'Passos de cada fatia (chamadas, consultas ao banco local e logs) com dados pessoais mascarados, guardados 30 dias; o erro com o stack nas linhas do TypeScript; as requisições que um ensaio mandaria; as escritas feitas como leitura; os contadores.
Authorizations
Seção intitulada “Authorizations”Parameters
Seção intitulada “Parameters”Path Parameters
Seção intitulada “Path Parameters”Id do conector
Id do conector
Id da execução
Id da execução
Responses
Seção intitulada “Responses”A execução
object
Id da execução
Id do conector
Versão do conector que rodou
O que começou
Live grava de verdade; dry_run é ensaio
Escopo do ensaio; null numa real
Situação da execução
Por que falhou ou estourou o tempo (error, time, slices, calls, quarantine, crash…)
Ensaio amostra que parou com mais a ler
Fatias já fechadas
Contadores de ctx.count, por objeto
object
object
Registros lidos da origem
Registros criados no destino
Registros atualizados no destino
Registros sem nada a mudar
Registros que falharam
Registros que a execução mandou para a quarentena
Escritas que saíram de verdade para outro sistema
Escritas de uma execução real que não saíram: guardadas para confirmação ou planejadas atrás dela
Execução real com escrita que não saiu: o ponto de onde ela parou não vale, a próxima recomeça do último ponto bom
A primeira escrita num sistema ficou guardada e espera a confirmação de uma pessoa
POST/PUT/PATCH/DELETE feitos como leitura (ctx.http.request)
object
Método HTTP da leitura que não foi GET
Host chamado
Caminho chamado, sem query
Quantas vezes a execução fez essa chamada
Problemas do ensaio que impedem publicar mesmo com status succeeded; connect.write_without_lookup: um POST criou registro sem consulta anterior na mesma coleção
object
Código estável do problema (connect.write_without_lookup)
O que está errado e como corrigir, em português
Método da chamada que causou o problema
Host da chamada
Caminho da chamada
Quantas vezes aconteceu na execução
Início
Fim; null enquanto roda
Passos de todas as fatias guardadas, em ordem
object
Quando aconteceu
Chamada HTTP, consulta ao banco local ou log
Método da chamada
URL ou banco chamado, com os segredos como marcadores
Status da resposta
Duração da chamada
Código de recusa do gateway
Resumo do que foi enviado, dados pessoais mascarados
Resumo do que voltou, dados pessoais mascarados
Texto do log
Dados do log, mascarados
Nível do log (info, warn ou error); só nos passos de log
Agente local que rodou a consulta; só nos passos sql, null quando não se sabe
Parte dos passos já saiu do lake (guardados 30 dias)
O erro da última fatia que falhou
object
Stack trace nas linhas do TypeScript
Frames do stack que apontam para arquivos TypeScript
object
Função do frame
Arquivo TypeScript do conector
Linha no TypeScript
Coluna no TypeScript
A requisição que eu mandaria: escritas que não saíram
object
Quando o código pediu a escrita
Método
URL, com segredos como marcadores
Parâmetros da query string
object
Cabeçalhos, com segredos como marcadores
object
Corpo (resumo)
Example
{ "trigger": "cron", "mode": "live", "rehearsalScope": "sample", "status": "running", "steps": [ { "kind": "http", "level": "info" } ]}Parâmetros inválidos
object
Código estável do erro, para máquinas (ex.: connect.connector_not_found)
Nome da classe do erro
Status HTTP
Mensagem em pt-BR, segura para mostrar a quem usa a tela
Id de correlação: passe ao suporte para achar o rastro completo
Detalhes estruturados seguros para a tela (erros de campo, ids)
object
Example generated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "requestId": "example", "meta": { "additionalProperty": "example" }}Token ausente, inválido ou expirado (connect.unauthorized)
object
Código estável do erro, para máquinas (ex.: connect.connector_not_found)
Nome da classe do erro
Status HTTP
Mensagem em pt-BR, segura para mostrar a quem usa a tela
Id de correlação: passe ao suporte para achar o rastro completo
Detalhes estruturados seguros para a tela (erros de campo, ids)
object
Example generated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "requestId": "example", "meta": { "additionalProperty": "example" }}Papel sem acesso ou Connect não liberado (connect.forbidden_role, connect.feature_disabled)
object
Código estável do erro, para máquinas (ex.: connect.connector_not_found)
Nome da classe do erro
Status HTTP
Mensagem em pt-BR, segura para mostrar a quem usa a tela
Id de correlação: passe ao suporte para achar o rastro completo
Detalhes estruturados seguros para a tela (erros de campo, ids)
object
Example generated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "requestId": "example", "meta": { "additionalProperty": "example" }}Execução não existe neste conector
object
Código estável do erro, para máquinas (ex.: connect.connector_not_found)
Nome da classe do erro
Status HTTP
Mensagem em pt-BR, segura para mostrar a quem usa a tela
Id de correlação: passe ao suporte para achar o rastro completo
Detalhes estruturados seguros para a tela (erros de campo, ids)
object
Example
{ "type": "connect.run_not_found", "title": "Não encontramos esta execução.", "status": 404}