UTEC Logger
Project description
Aquí tienes un README.md bien estructurado que explica cómo usar tu logger, cómo configurarlo y cómo establecer las credenciales de AWS y CloudWatch.
📄 README.md
# utec_logger
Un logger personalizado para Python con salida en consola a color, guardado en archivos locales y soporte opcional para AWS CloudWatch Logs.
## 🚀 Características
- Logs a consola con colores según el nivel (INFO, WARNING, ERROR, CRITICAL)
- Logs persistentes en archivos locales (`logs/log-<timestamp>.log`)
- Integración opcional con AWS CloudWatch para centralizar logs
- Singleton: mantiene una única instancia del logger
---
## 🧑💻 Instalación
Clona o añade este módulo en tu proyecto:
```bash
git clone <repositorio>
Importa el logger en tus scripts:
from utec_logger.logger import logger, info, warning, error, critical, Level
📝 Uso
logger.info("Este es un mensaje informativo")
logger.warning("Advertencia")
logger.error("Error")
logger.critical("Crítico")
# O usa funciones directas:
info("Mensaje directo tipo info")
🧾 Salida esperada
En consola (con colores):
2025-05-03 12:30:01.123 | INFO | main.py:23 | Este es un mensaje informativo
En archivo:
logs/log-2025-05-03-12-30-01.log
☁️ Integración con AWS CloudWatch (opcional)
Si defines las variables de entorno necesarias, el logger también enviará los eventos a AWS CloudWatch Logs.
🔐 Variables necesarias
Debes definir las siguientes variables de entorno antes de ejecutar tu aplicación:
export AWS_ACCESS_KEY_ID=your-access-key-id
export AWS_SECRET_ACCESS_KEY=your-secret-access-key
export AWS_SESSION_TOKEN=your-session-token # Opcional, si usas roles temporales
export AWS_REGION=us-east-1
export CLOUD_WATCH_GROUP=your-log-group-name
export CLOUD_WATCH_STREAM=your-log-stream-name
Si prefieres usar un archivo .env:
AWS_ACCESS_KEY_ID=your-access-key-id
AWS_SECRET_ACCESS_KEY=your-secret-access-key
AWS_SESSION_TOKEN=your-session-token
AWS_REGION=us-east-1
CLOUD_WATCH_GROUP=my-app-logs
CLOUD_WATCH_STREAM=dev-instance
Y luego en tu código, carga estas variables con python-dotenv:
from dotenv import load_dotenv
load_dotenv()
🧪 Verificación
Al iniciar, el logger mostrará en consola si AWS y CloudWatch han sido correctamente configurados:
AWS Ready: 123456789012
CloudWatch Group: my-app-logs
CloudWatch Stream: dev-instance
CloudWatch Ready
📁 Estructura de logs
- Los archivos
.logse guardan en la carpetalogs/dentro del directorio donde se ejecuta el programa. - Cada archivo de log contiene todos los eventos desde que se inició el script.
✅ Requisitos
- Python 3.7+
boto3- (Opcional)
python-dotenvpara cargar.env
📦 Instalación de dependencias
pip install boto3 python-dotenv
🧊 Ejemplo completo
from utec_logger.logger import logger, info, warning, error, critical
logger.info("Iniciando el sistema")
logger.warning("Este es un warning")
error("Ocurrió un error")
critical("Error crítico")
Créditos
Desarrollado con fines educativos para el curso de Cloud Computing - UTEC.
-
Geraldo Colchado
- gcolchado@utec.edu.pe
- Profesor de Cloud Computing
-
Maykol Morales
- maykol.morales@utec.edu.pe
- ACL de Cloud Computing
-
Gino Daza
- gino.daza@utec.edu.pe
- Ex-Alumno de Cloud Computing
-
Ian Condori
- ian.condori@utec.edu.pe
- Ex-Alumno de Cloud Computing
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file utec_logger-1.3.tar.gz.
File metadata
- Download URL: utec_logger-1.3.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
61d6a1fecdc89718f4cacb8e0b8a277c5780bff6be96ec02646a4902dc4fd7a8
|
|
| MD5 |
ca8f32b6de71714c780ec1ace488434b
|
|
| BLAKE2b-256 |
5af545f0b892909c43caf4e641c7f896aca8e015f83d3b75d7dab18b378ddf6d
|
File details
Details for the file utec_logger-1.3-py3-none-any.whl.
File metadata
- Download URL: utec_logger-1.3-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
42914693ec6f2be393a4c719fdf8d1cafc8a5428211e0c5fd67c3b56b834ec7d
|
|
| MD5 |
7e5a432d6260acc4157fad2ca57cc97a
|
|
| BLAKE2b-256 |
168614b03a7bc8552b2ea4cdac6b08f11129b37b509004c0011b771210d2b135
|