Skip to content

Commit f1244cf

Browse files
chore: update README.md
1 parent e7ae81d commit f1244cf

File tree

1 file changed

+94
-1
lines changed

1 file changed

+94
-1
lines changed

README.md

Lines changed: 94 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,94 @@
1-
# sentry-sample
1+
# Instrumentando uma Aplicação com o Sentry
2+
3+
Este projeto demonstra como instrumentar uma aplicação Flask com o Sentry para monitoramento de erros e desempenho (APM - Application Performance Monitoring).
4+
5+
## Funcionalidades
6+
7+
- **Monitoramento de Erros**: Captura e reporta erros ocorridos na aplicação.
8+
- **APM (Application Performance Monitoring)**: Monitora o desempenho da aplicação, incluindo tempos de resposta e gargalos.
9+
10+
## O que é o Sentry?
11+
12+
O Sentry é uma plataforma de monitoramento de erros e desempenho que ajuda desenvolvedores a identificar, rastrear e corrigir problemas em tempo real. Ele oferece:
13+
14+
- **Captura de Erros**: Reporta exceções não tratadas e erros de código.
15+
- **APM**: Monitora o desempenho da aplicação, ajudando a identificar gargalos e melhorar a performance.
16+
17+
## Configuração do Sentry
18+
19+
No arquivo [`__init__.py`](./__init__.py), o Sentry é inicializado com o DSN (Data Source Name) e integrações necessárias:
20+
21+
```python
22+
import sentry_sdk
23+
from sentry_sdk.integrations.flask import FlaskIntegration
24+
25+
sentry_sdk.init(
26+
dsn="https://[email protected]/4508019434979328",
27+
integrations=[FlaskIntegration()],
28+
traces_sample_rate=1.0,
29+
profiles_sample_rate=1.0,
30+
)
31+
```
32+
33+
Para configurar o Sentry, é necessário criar uma conta no [site oficial](https://sentry.io) e criar um projeto. Após a criação do projeto, é possível obter o DSN para integração com a aplicação.
34+
35+
## Executando o projeto localmente
36+
37+
1. Clone o repositório:
38+
39+
```bash
40+
git https://github.com/Tech-Preta/sentry-sample.git
41+
```
42+
43+
2. Crie um ambiente virtual e instale as dependências:
44+
45+
```bash
46+
python -m venv venv
47+
source venv/bin/activate # No Windows use `venv\Scripts\activate`
48+
pip install -r requirements.txt
49+
```
50+
51+
3. Execute a aplicação:
52+
53+
```bash
54+
export FLASK_APP=__init__.py
55+
flask run
56+
```
57+
58+
A aplicação estará disponível em `http://127.0.0.1:5000/`.
59+
60+
## Testando o Sentry
61+
62+
Para testar a integração com o Sentry, você pode clicar no botão "Trigger Test Error" na página inicial (`index.html`). Isso irá gerar um erro de teste que será capturado e reportado pelo Sentry.
63+
64+
```html
65+
<button id="test-error">Trigger Test Error</button>
66+
<script>
67+
const button = document.getElementById('test-error');
68+
button.addEventListener('click', () => {
69+
throw new Error('This is a test error');
70+
});
71+
</script>
72+
```
73+
74+
## CI/CD com Github Actions
75+
76+
O projeto inclui um pipeline de CI/CD configurado no arquivo [`.github`](dependabot.yml) para atualizar as dependências necessárias.
77+
.github/
78+
79+
```yml
80+
version: 2
81+
updates:
82+
- package-ecosystem: "pip"
83+
directory: "/"
84+
schedule:
85+
interval: "weekly"
86+
```
87+
88+
## Contribuindo
89+
90+
Contribuições são bem-vindas! Sinta-se à vontade para abrir issues e pull requests.
91+
92+
## Licença
93+
94+
Este projeto está licenciado sob a licença MIT. Veja o arquivo [LICENSE](./LICENSE) para mais detalhes.

0 commit comments

Comments
 (0)