Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FeatWS] Desenho da solução para tratamento de erros em folhas de regras #22

Open
maycolacerda opened this issue Aug 21, 2023 · 0 comments
Assignees

Comments

@maycolacerda
Copy link

maycolacerda commented Aug 21, 2023

Criação de um logger que se utilizará de uma estratégia de polling para capturar o status de execução de folhas de regras.

Escopo Geral :

  • Será uma ferramenta não integrada a nenhum serviço ou ferramenta existente dentro do sistema. O logger fará uma requisição a cada intervalo de tempo ( a ser definido) para se atualizar sobre o status de execução de folhas de regras. Esse processamento apresentará apenas um de 3 estados: processando,sucesso e falha. Esses estados servirão para levantamento de métricas relacionadas a taxa de sucesso de processamento de folhas de regras.
  • Folhas de regras com status de sucesso ou falha terão seu pipeline ID armazenado em um banco de dados s3, juntamente com seu status e o erro retornado do processamento. Também serão armazenados data e hora do processamento.
  • Os logs serão gerados constantemente e não terão um prazo de validade.
  • Os logs servirão posteriormente como fonte para investigação de problemas, geração de métricas de sucesso/falha e investigação de problemas gerais e específicos.
  • Uma interface poderá ser criada para facilitar o uso dessa ferramenta por parte do usuário.

Implementação:

Logger: Será desenvolvido na linguagem Go e armazenará os logs em S3 (serviço da AWS) que ja está integrado a infraestrutura do banco.

  • Os IDs serão obtidos através de requisições de uma requisição a API do Gitlab:
  • GET /projects/:id/pipelines/ : retorna os últimos 20 pipelines
  • GET /projects/:id/pipelines/:pipeline_id : Retorna o pipeline específico.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant