Skip to content

Commit 84e8961

Browse files
committed
feat: add daily RAM usage report to cron job and document specs
1 parent 44a3241 commit 84e8961

2 files changed

Lines changed: 18 additions & 0 deletions

File tree

cron.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import os
33
import logging
44
import traceback
5+
import resource
56
from telegram.ext import Application
67
from tg_ids import ROZEN_CHATID
78
from bot_logic import _update_groups, felizdia, actualizarRiver
@@ -39,6 +40,17 @@ async def run_update():
3940
error_msg = f"Error en update_groups:\n{traceback.format_exc()}"
4041
await application.bot.send_message(chat_id=ROZEN_CHATID, text=error_msg[:4000])
4142

43+
# Reporte final con uso de RAM de este contenedor
44+
try:
45+
memory_kb = resource.getrusage(resource.RUSAGE_SELF).ru_maxrss
46+
memory_mb = memory_kb / 1024.0
47+
await application.bot.send_message(
48+
chat_id=ROZEN_CHATID,
49+
text=f"Cron job finalizado. RAM máxima utilizada: {memory_mb:.2f} MB"
50+
)
51+
except Exception as e:
52+
logging.error(f"Failed to send memory report: {e}")
53+
4254
asyncio.run(run_update())
4355

4456
if __name__ == "__main__":

docs/spec.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Especificaciones y Tareas Pendientes (TODOs)
2+
3+
## Optimizaciones de Infraestructura (Cloud Run)
4+
- [ ] **TODO:** Revisar cuánto está gastando de RAM el bot principal en producción.
5+
- *Contexto:* Por defecto, Cloud Run asigna 512 MB de RAM a cada contenedor. El bot de Telegram probablemente consuma menos (entre 128 MB y 256 MB). Si se desea optimizar al máximo, se podría reducir la memoria asignada en el archivo de despliegue (`.github/workflows/google-cloudrun-docker.yml`) agregando el flag `--memory=256Mi`.
6+
- *Nota:* Esto es una micro-optimización ya que Cloud Run tiene una capa gratuita generosa y escala a cero, por lo que no genera costos adicionales si no se sobrepasan los límites mensuales.

0 commit comments

Comments
 (0)