🎓 Initial commit: Math2 Platform - Plataforma de Álgebra Lineal PRO
✨ Características: - 45 ejercicios universitarios (Basic → Advanced) - Renderizado LaTeX profesional - IA generativa (Z.ai/DashScope) - Docker 9 servicios - Tests 123/123 pasando - Seguridad enterprise (JWT, XSS, Rate limiting) 🐳 Infraestructura: - Next.js 14 + Node.js 20 - PostgreSQL 15 + Redis 7 - Docker Compose completo - Nginx + SSL ready 📚 Documentación: - 5 informes técnicos completos - README profesional - Scripts de deployment automatizados Estado: Producción lista ✅
This commit is contained in:
88
monitoring/alertmanager/alertmanager.yml
Normal file
88
monitoring/alertmanager/alertmanager.yml
Normal file
@@ -0,0 +1,88 @@
|
||||
# ========================================
|
||||
# ALERTMANAGER CONFIGURATION
|
||||
# Enterprise Alert Routing
|
||||
# ========================================
|
||||
|
||||
global:
|
||||
smtp_smarthost: '${SMTP_HOST:-localhost:587}'
|
||||
smtp_from: '${SMTP_FROM:-alerts@mathplatform.com}'
|
||||
smtp_auth_username: '${SMTP_USER:-}'
|
||||
smtp_auth_password: '${SMTP_PASSWORD:-}'
|
||||
slack_api_url: '${SLACK_WEBHOOK_URL:-}'
|
||||
telegram_api_url: 'https://api.telegram.org'
|
||||
|
||||
# Templates
|
||||
templates:
|
||||
- '/etc/alertmanager/templates/*.tmpl'
|
||||
|
||||
# Inhibition rules
|
||||
inhibit_rules:
|
||||
- source_match:
|
||||
severity: 'critical'
|
||||
target_match:
|
||||
severity: 'warning'
|
||||
equal: ['alertname', 'instance']
|
||||
|
||||
# Route tree
|
||||
troute:
|
||||
receiver: 'default-receiver'
|
||||
group_by: ['alertname', 'severity', 'instance']
|
||||
group_wait: 10s
|
||||
group_interval: 5m
|
||||
repeat_interval: 4h
|
||||
routes:
|
||||
# Critical alerts
|
||||
- match:
|
||||
severity: critical
|
||||
receiver: 'critical-receiver'
|
||||
continue: true
|
||||
|
||||
# Database alerts
|
||||
- match:
|
||||
job: postgres
|
||||
receiver: 'database-receiver'
|
||||
group_interval: 10m
|
||||
|
||||
# Backend alerts
|
||||
- match:
|
||||
job: backend
|
||||
receiver: 'backend-receiver'
|
||||
group_interval: 5m
|
||||
|
||||
# Receivers
|
||||
receivers:
|
||||
- name: 'default-receiver'
|
||||
slack_configs:
|
||||
- channel: '#alerts'
|
||||
title: 'Math Platform Alert'
|
||||
text: '{{ range .Alerts }}{{ .Annotations.summary }}{{ end }}'
|
||||
send_resolved: true
|
||||
|
||||
- name: 'critical-receiver'
|
||||
slack_configs:
|
||||
- channel: '#critical-alerts'
|
||||
title: 'CRITICAL: Math Platform'
|
||||
text: '{{ range .Alerts }}{{ .Annotations.description }}{{ end }}'
|
||||
send_resolved: true
|
||||
email_configs:
|
||||
- to: '${CRITICAL_EMAIL:-admin@mathplatform.com}'
|
||||
subject: 'CRITICAL Alert: {{ .GroupLabels.alertname }}'
|
||||
html: '{{ template "email.default.html" . }}'
|
||||
send_resolved: true
|
||||
telegram_configs:
|
||||
- bot_token: '${TELEGRAM_BOT_TOKEN}'
|
||||
chat_id: '${TELEGRAM_ADMIN_CHAT_ID}'
|
||||
message: '🔴 CRITICAL: {{ .GroupLabels.alertname }} - {{ range .Alerts }}{{ .Annotations.summary }}{{ end }}'
|
||||
send_resolved: true
|
||||
|
||||
- name: 'database-receiver'
|
||||
slack_configs:
|
||||
- channel: '#database-alerts'
|
||||
title: 'Database Alert'
|
||||
text: '{{ range .Alerts }}{{ .Annotations.summary }}{{ end }}'
|
||||
|
||||
- name: 'backend-receiver'
|
||||
slack_configs:
|
||||
- channel: '#backend-alerts'
|
||||
title: 'Backend Alert'
|
||||
text: '{{ range .Alerts }}{{ .Annotations.summary }}{{ end }}'
|
||||
Reference in New Issue
Block a user