Checkpoint ajustes atuais
This commit is contained in:
@@ -1,60 +0,0 @@
|
||||
# Scheduler de Ranking - Solução para OCP
|
||||
|
||||
## Problema
|
||||
|
||||
Em ambientes OpenShift Container Platform (OCP), não é possível usar cron dentro dos PODs.
|
||||
|
||||
## Solução Implementada
|
||||
|
||||
Loop asyncio nativo Python sem dependências externas.
|
||||
|
||||
### Características
|
||||
|
||||
- **100% Python nativo** - Usa apenas `asyncio` e `datetime`
|
||||
- **Portável** - Funciona em qualquer ambiente Docker/Kubernetes/OCP
|
||||
- **Sem dependências** - Removemos `apscheduler` do requirements.txt
|
||||
- **Simples** - Loop infinito com sleep calculado até próximo horário
|
||||
|
||||
### Funcionamento
|
||||
|
||||
```python
|
||||
# Calcula tempo até próxima execução (ex: 3h da manhã)
|
||||
proxima_execucao = datetime.now().replace(hour=3, minute=0, second=0)
|
||||
if agora >= proxima_execucao:
|
||||
proxima_execucao += timedelta(days=1)
|
||||
|
||||
# Aguarda assincronamente
|
||||
await asyncio.sleep(segundos_ate_proxima)
|
||||
|
||||
# Executa job
|
||||
await job.executar(limpar_antes=True)
|
||||
```
|
||||
|
||||
### Configuração
|
||||
|
||||
Padrão: **3h da manhã** (horário do servidor)
|
||||
|
||||
Para alterar: edite `backend/src/interface/api/app.py` linha 23:
|
||||
|
||||
```python
|
||||
await scheduler.iniciar(hora_alvo=3) # Altere para outra hora
|
||||
```
|
||||
|
||||
### Logs
|
||||
|
||||
```
|
||||
Próxima execução do ranking: 11/12/2025 03:00:00
|
||||
Scheduler do ranking iniciado: job rodará diariamente às 3h
|
||||
```
|
||||
|
||||
### Execução Manual
|
||||
|
||||
Se precisar rodar fora do schedule:
|
||||
|
||||
```bash
|
||||
curl -X POST "http://localhost:8000/api/v1/ranking/processar?limpar=true"
|
||||
```
|
||||
|
||||
### Migração para OCP
|
||||
|
||||
Nenhuma configuração adicional necessária. O container já está pronto.
|
||||
62
backend/logs/auditoria_ranking.csv
Normal file
62
backend/logs/auditoria_ranking.csv
Normal file
@@ -0,0 +1,62 @@
|
||||
id,pos_db,pos_calc,total_db,total_calc,delta,comp_a_db,comp_a_calc,comp_b_db,comp_b_calc,comp_c_db,comp_c_calc,comp_d_db,comp_d_calc,obs
|
||||
12932,1,,775.0,775,0.0,270.0,270,135.0,135,190.0,190,180.0,180,
|
||||
6370,2,,770.0,770,0.0,290.0,290,110.0,110,190.0,190,180.0,180,
|
||||
536531,3,,770.0,770,0.0,300.0,300,100.0,100,190.0,190,180.0,180,
|
||||
8127,4,,760.0,760,0.0,250.0,250,140.0,140,190.0,190,180.0,180,
|
||||
509974,5,,760.0,760,0.0,230.0,230,160.0,160,190.0,190,180.0,180,
|
||||
5420,6,,750.0,750,0.0,240.0,240,140.0,140,190.0,190,180.0,180,
|
||||
7268,7,,750.0,750,0.0,270.0,270,160.0,160,190.0,190,130.0,130,
|
||||
7825,8,,750.0,750,0.0,250.0,250,130.0,130,190.0,190,180.0,180,
|
||||
14527,9,,750.0,750,0.0,240.0,240,140.0,140,190.0,190,180.0,180,
|
||||
5843,10,,740.0,740,0.0,300.0,300,90.0,90,190.0,190,160.0,160,
|
||||
5439,11,,735.0,735,0.0,250.0,250,100.0,100,215.0,215,170.0,170,
|
||||
6392,12,,735.0,735,0.0,240.0,240,125.0,125,190.0,190,180.0,180,
|
||||
510948,13,,735.0,735,0.0,280.0,280,110.0,110,215.0,215,130.0,130,
|
||||
6273,14,,725.0,725,0.0,300.0,300,155.0,155,190.0,190,80.0,80,
|
||||
22484,15,,725.0,725,0.0,220.0,220,110.0,110,215.0,215,180.0,180,
|
||||
16,16,,720.0,720,0.0,220.0,220,130.0,130,190.0,190,180.0,180,
|
||||
11353,17,,720.0,720,0.0,210.0,210,115.0,115,215.0,215,180.0,180,
|
||||
15100,18,,720.0,720,0.0,240.0,240,110.0,110,190.0,190,180.0,180,
|
||||
17385,19,,720.0,720,0.0,310.0,310,100.0,100,230.0,230,80.0,80,
|
||||
510371,20,,720.0,720,0.0,200.0,200,125.0,125,215.0,215,180.0,180,
|
||||
147706,100000,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147709,100001,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147711,100002,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147714,100003,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147722,100004,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147723,100005,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147730,100006,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147732,100007,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147733,100008,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147738,100009,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147739,100010,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147741,100011,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147744,100012,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147749,100013,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147753,100014,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147754,100015,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147756,100016,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147761,100017,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147768,100018,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147770,100019,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
147771,100020,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4864134,350215,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4862416,350214,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4862410,350213,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4862407,350212,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4860839,350211,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4860812,350210,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4860796,350209,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4860722,350208,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4860591,350207,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4859353,350206,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4859351,350205,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4859325,350204,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4859322,350203,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4859100,350202,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4859026,350201,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4859022,350200,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4858994,350199,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4858399,350198,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4858398,350197,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
4857410,350196,,0.0,0,0.0,0.0,0,0.0,0,0.0,0,0.0,0,
|
||||
|
@@ -1,20 +0,0 @@
|
||||
-- Schema para Coordenações de Programa (PPG)
|
||||
-- Dados extraídos de SUCUPIRA_PAINEL via MCP
|
||||
|
||||
CREATE TABLE TB_COORDENACAO_PROGRAMA (
|
||||
ID_PESSOA NUMBER(10) NOT NULL,
|
||||
ID_PROGRAMA_SNPG NUMBER(10) NOT NULL,
|
||||
NM_PROGRAMA VARCHAR2(500),
|
||||
CD_PROGRAMA_PPG VARCHAR2(50),
|
||||
NOTA_PPG VARCHAR2(10),
|
||||
NM_PROGRAMA_MODALIDADE VARCHAR2(100),
|
||||
NM_AREA_AVALIACAO VARCHAR2(200),
|
||||
DT_INICIO_VIGENCIA DATE,
|
||||
DT_FIM_VIGENCIA DATE,
|
||||
DH_CARGA TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT PK_COORDENACAO_PROGRAMA PRIMARY KEY (ID_PESSOA, ID_PROGRAMA_SNPG, DT_INICIO_VIGENCIA)
|
||||
);
|
||||
|
||||
CREATE INDEX IDX_COORD_PPG_PESSOA ON TB_COORDENACAO_PROGRAMA(ID_PESSOA);
|
||||
CREATE INDEX IDX_COORD_PPG_PROGRAMA ON TB_COORDENACAO_PROGRAMA(ID_PROGRAMA_SNPG);
|
||||
CREATE INDEX IDX_COORD_PPG_ATIVO ON TB_COORDENACAO_PROGRAMA(DT_FIM_VIGENCIA);
|
||||
Reference in New Issue
Block a user