Sherlog é uma plataforma que centraliza o gerenciamento de logs de diversos sistemas de uma empresa em um mesmo local. Sua interface permite a visualização de logs separados por ambiente e apresenta um sistema de busca e ordenação. A aplicação ainda possibilida que logs sejam arquivados e deletados dentro da plataforma.
Projeto desenvolvido em React como uma SPA (single page application) responsiva com backend desenvolvido em Spring e banco de dados em PostgreSQL.
Esse projeto é o trabalho final do Squad 2 do curso AceleraDev Java Women promovido pela Codenation em parceria com o Quinto Andar entre setembro e novembro de 2019.
Endereço da API: Sherlog API
Documentação da API: Postman
Para executar os projetos localmente, siga as instruções contidas em seus READMEs, disponíveis dentro das pastas /backend e /frontend.
Em projetos modernos é cada vez mais comum o uso de arquiteturas baseadas em serviços ou microsserviços. Nestes ambientes complexos, erros podem surgir em diferentes camadas da aplicação (backend, frontend, mobile, desktop) e mesmo em serviços distintos. Desta forma, é muito importante que os desenvolvedores possam centralizar todos os registros de erros em um local, de onde podem monitorar e tomar decisões mais acertadas. Neste projeto vamos implementar um sistema para centralizar registros de erros de aplicações.
- criar endpoints para serem usados pelo frontend da aplicação
- criar um endpoint que será usado para gravar os logs de erro em um banco de dados relacional a API deve ser segura, permitindo acesso apenas com um token de autenticação válido
- deve implementar as funcionalidades apresentadas nos wireframes
- deve ser acessada adequadamente tanto por navegadores desktop quanto mobile
- deve consumir a API do produto
- desenvolvida na forma de uma Single Page Application
- Spring
- Java
- PostgreSQL
- Heroku
- GitHub
- Postman
- Firebase
- Github
- React
- Sass
- Axios
- SweetAlert
- Javascript
- CSS
- HTML
Wireframes da aplicação disponibilizados pela Codenation:
Escolhemos o trello para organizar nossas tarefas, seguindo um modelo simples de kanban.
Primeira versão do projeto entregue em 23/11/2019. Nesta versão estão disponíveis as seguintes funcionalidades:
-
Cadastro de usuário por nome, e-mail e senha; :heavy_check_mark:
-
Login de usuário por e-mail e senha; :heavy_check_mark:
-
Autenticação de usuário para as páginas internas da aplicação por meio de um token JWT gerado pelo backend e com duração de 1h; :heavy_check_mark:
-
Visualização de lista de logs separados por ambiente (Produção, Homolog e Desenvolvimento); ✔️
-
Ordenação dos logs por nível de criticidade e frequência; :heavy_check_mark:
-
Busca de logs por nível de criticidade, descrição e origem; ✔️
-
Possibilidade de arquivar e deletar logs; ✔️
-
Visualizar os detalhes de um log; ✔️
-
Central de notificação de erros; ✔️
-
Páginas de erros 404 (não encontrada) e 500 (erro de servidor); ✔️
-
Design responsivo; ✔️
-
Rotas desenvolvidas como SPA. ✔️
-
Criação dos Endpoints ✔️
-
Criação do banco de dados PostgreSQL ✔️
-
Implementação de Autenticação JWT ✔️
-
Tratamento de Erros e Exceptions ✔️
-
Deploy no Heroku ✔️
Trabalho desenvolvido por: