This commit is contained in:
@@ -74,7 +74,7 @@ prometheus.scrape "cadvisor" {
|
|||||||
prometheus.scrape "app_metrics" {
|
prometheus.scrape "app_metrics" {
|
||||||
targets = [{"__address__" = "host.docker.internal:9102"}]
|
targets = [{"__address__" = "host.docker.internal:9102"}]
|
||||||
forward_to = [prometheus.remote_write.prometheus.receiver]
|
forward_to = [prometheus.remote_write.prometheus.receiver]
|
||||||
scrape_interval = "15s"
|
scrape_interval = "1s"
|
||||||
metrics_path = "/metrics"
|
metrics_path = "/metrics"
|
||||||
job_name = "app_metrics"
|
job_name = "app_metrics"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
|
|
||||||
from Logger.LokiLogger import LokiLogger
|
from Logger.LokiLogger import LokiLogger
|
||||||
|
from Logger import PrometheusMetric
|
||||||
|
import time
|
||||||
|
|
||||||
|
|
||||||
def prueba_log():
|
def prueba_log():
|
||||||
@@ -31,5 +33,34 @@ def prueba_log():
|
|||||||
logger.exception(e)
|
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__":
|
if __name__ == "__main__":
|
||||||
prueba_log()
|
prueba_log()
|
||||||
|
# Mantiene el servidor de métricas vivo al menos 3 min para permitir scrapes
|
||||||
|
prueba_metricas()
|
||||||
|
|||||||
Reference in New Issue
Block a user