Skip to content

Commit e7ae81d

Browse files
author
natalia.gassis
committed
chore: add sentry integration for error monitoring and APM
1 parent 7521a54 commit e7ae81d

File tree

5 files changed

+121
-0
lines changed

5 files changed

+121
-0
lines changed

CHANGELOG

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Changelog
2+
3+
Todas as mudanças notáveis neste projeto serão documentadas neste arquivo.
4+
5+
## [Unreleased]
6+
7+
### Adicionado
8+
- Integração com o Sentry para monitoramento de erros e APM.
9+
- Rota principal que renderiza o template `index.html`.
10+
- Configuração básica do Flask com suporte para configuração de teste.
11+
- Criação automática do diretório de instância se não existir.
12+
13+
### Corrigido
14+
- Nenhuma correção até o momento.
15+
16+
### Alterado
17+
- Nenhuma alteração até o momento.
18+
19+
## [1.0.0] - 2023-10-05
20+
21+
### Adicionado
22+
- Estrutura inicial do projeto Flask.
23+
- Configuração do ambiente virtual e dependências no `requirements.txt`.
24+
- Arquivo `README.md` com instruções de configuração e execução.

CONTRIBUTING.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Contribuindo para o Projeto
2+
3+
Obrigado por considerar contribuir para este projeto! Abaixo estão algumas diretrizes para ajudar você a começar.
4+
5+
## Como Contribuir
6+
7+
### Reportando Problemas
8+
9+
Se você encontrar um bug ou tiver uma sugestão de melhoria, por favor, abra uma issue no repositório. Certifique-se de incluir o máximo de detalhes possível, incluindo passos para reproduzir o problema, se aplicável.
10+
11+
### Enviando Pull Requests
12+
13+
1. **Fork o repositório**: Clique no botão "Fork" no topo da página do repositório.
14+
2. **Clone o seu fork**:
15+
```sh
16+
git clone git@gitlab.luizalabs.com:natalia.gassis/flaskr-sentry.git
17+
cd flaskr-sentry
18+
```
19+
3. **Crie uma branch para a sua feature ou correção**:
20+
```sh
21+
git checkout -b minha-feature
22+
```
23+
4. **Faça as suas mudanças**: Adicione ou modifique o código conforme necessário.
24+
5. **Adicione testes**: Certifique-se de que suas mudanças estão cobertas por testes.
25+
6. **Commit suas mudanças**:
26+
```sh
27+
git commit -m "Descrição das minhas mudanças"
28+
```
29+
7. **Envie a sua branch**:
30+
```sh
31+
git push origin minha-feature
32+
```
33+
8. **Abra um Pull Request**: Vá até a página do repositório original e clique em "New Pull Request". Compare a sua branch com a branch `main` do repositório original e envie o Pull Request.

__init__.py

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
import os
2+
import sentry_sdk
3+
from flask import Flask, render_template
4+
from sentry_sdk.integrations.flask import FlaskIntegration
5+
6+
# Inicializa o Sentry com o DSN correto
7+
sentry_sdk.init(
8+
dsn="https://dc0ebf02fd7083942671659182a50341@sentry.io/4508019434979328",
9+
integrations=[FlaskIntegration()],
10+
traces_sample_rate=1.0,
11+
profiles_sample_rate=1.0,
12+
)
13+
14+
def create_app(test_config=None):
15+
# Cria e configura o aplicativo Flask
16+
app = Flask(__name__, instance_relative_config=True)
17+
app.config.from_mapping(
18+
SECRET_KEY='dev',
19+
DATABASE=os.path.join(app.instance_path, 'flaskr.sqlite'),
20+
)
21+
22+
if test_config is None:
23+
# Carrega a configuração da instância, se existir, quando não estiver testando
24+
app.config.from_pyfile('config.py', silent=True)
25+
else:
26+
# Carrega a configuração de teste, se passada
27+
app.config.from_mapping(test_config)
28+
29+
# Garante que a pasta da instância exista
30+
try:
31+
os.makedirs(app.instance_path)
32+
except OSError:
33+
pass
34+
35+
# Define uma rota simples que renderiza o template index.html
36+
@app.route("/")
37+
def index():
38+
return render_template('index.html')
39+
40+
return app

requirements.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Flask>=2.2.0
2+
sentry-sdk[flask]==1.5.0

templates/index.html

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6+
<title>My Flask App</title>
7+
<script
8+
src="https://js.sentry-cdn.com/dc0ebf02fd7083942671659182a50341.min.js"
9+
crossorigin="anonymous"
10+
></script>
11+
</head>
12+
<body>
13+
<!-- Conteúdo da página -->
14+
<button id="test-error">Trigger Test Error</button>
15+
<script>
16+
const button = document.getElementById('test-error');
17+
button.addEventListener('click', () => {
18+
throw new Error('This is a test error');
19+
});
20+
</script>
21+
</body>
22+
</html>

0 commit comments

Comments
 (0)