alloy captura y guarda cada segundo
Deploy to Coolify / deploy (push) Has been cancelled

This commit is contained in:
2025-11-24 23:17:39 +01:00
parent 5b6a0ddbc2
commit 6a49bd573c
2 changed files with 32 additions and 1 deletions
+1 -1
View File
@@ -74,7 +74,7 @@ prometheus.scrape "cadvisor" {
prometheus.scrape "app_metrics" {
targets = [{"__address__" = "host.docker.internal:9102"}]
forward_to = [prometheus.remote_write.prometheus.receiver]
scrape_interval = "15s"
scrape_interval = "1s"
metrics_path = "/metrics"
job_name = "app_metrics"
}
+31
View File
@@ -1,5 +1,7 @@
from Logger.LokiLogger import LokiLogger
from Logger import PrometheusMetric
import time
def prueba_log():
@@ -31,5 +33,34 @@ def prueba_log():
logger.exception(e)
def prueba_metricas(duracion_segundos: int = 180):
"""
Emite métricas de prueba durante un tiempo para permitir que Alloy las scrappee.
"""
metrics = PrometheusMetric(prefix="pruebas", port=9102)
requests_total = metrics.counter(
"requests_total", "Solicitudes de ejemplo", labels=["endpoint"]
)
latency_seconds = metrics.histogram(
"latency_seconds",
"Latencia simulada",
labels=["endpoint"],
buckets=[0.1, 0.5, 1, 2, 5],
)
workers_active = metrics.gauge("workers_active", "Workers activos", labels=["queue"])
start = time.time()
i = 0
while time.time() - start < duracion_segundos:
requests_total.inc(endpoint="/demo")
latency_seconds.observe(0.2 + (i % 5) * 0.1, endpoint="/demo")
workers_active.set(3 + (i % 4), queue="default")
i += 1
time.sleep(1)
if __name__ == "__main__":
prueba_log()
# Mantiene el servidor de métricas vivo al menos 3 min para permitir scrapes
prueba_metricas()