From 30dc6ee2f4f7c2cdb1857c1f2b774a955bdcef63 Mon Sep 17 00:00:00 2001 From: TROMEL LOUIS <58844429+Ash84@users.noreply.github.com> Date: Tue, 14 May 2024 16:37:49 +0200 Subject: [PATCH] distrib version & run start --- .../sava/core/MetricsBasicAuthServlet.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/sava-core/src/main/java/fr/agroclim/sava/core/MetricsBasicAuthServlet.java b/sava-core/src/main/java/fr/agroclim/sava/core/MetricsBasicAuthServlet.java index 5d69dad..cd0b4a5 100644 --- a/sava-core/src/main/java/fr/agroclim/sava/core/MetricsBasicAuthServlet.java +++ b/sava-core/src/main/java/fr/agroclim/sava/core/MetricsBasicAuthServlet.java @@ -1,6 +1,10 @@ package fr.agroclim.sava.core; +import java.io.BufferedReader; import java.io.IOException; +import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import java.time.LocalDateTime; import java.util.Base64; import javax.servlet.ServletException; @@ -8,13 +12,14 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import io.prometheus.client.exporter.MetricsServlet; -import java.nio.charset.StandardCharsets; +import lombok.extern.log4j.Log4j2; /** * SAVA metrics servlet, using basic_auth with context parameters. * * @author ltromel */ +@Log4j2 public class MetricsBasicAuthServlet extends MetricsServlet { /** @@ -60,6 +65,15 @@ public class MetricsBasicAuthServlet extends MetricsServlet { "The total amount of memory in the Java virtual machine, measured in bytes"); SavaUtils.addGauge("jvm_free_memory", "The amount of free memory in the Java Virtual Machine, measured in bytes"); + try { + SavaUtils.addCounter("host_distribution", "Host machine distribution (linux only)", "", "version"); + SavaUtils.incrementCounter("host_distribution", new BufferedReader(new InputStreamReader(new ProcessBuilder("lsb_release", "-ds").start().getInputStream())).readLine()); + } catch (final Exception e) { + LOGGER.trace("Could not init host_distribution."); + } + SavaUtils.addCounter("run_since", "Server run date", "", "instant"); + SavaUtils.incrementCounter("run_since", LocalDateTime.now().toString()); + } /** -- GitLab