From 39228eb7605c63c6d2f2d60798285acf9008921b Mon Sep 17 00:00:00 2001 From: Cedric Girard Date: Wed, 31 Jul 2019 21:37:31 +0200 Subject: [PATCH] filter abnormal values --- esp32-env-monitor.ino | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/esp32-env-monitor.ino b/esp32-env-monitor.ino index eac4536..6e47cea 100644 --- a/esp32-env-monitor.ino +++ b/esp32-env-monitor.ino @@ -143,17 +143,27 @@ void readBaseline() { void sendMetrics() { String message = "# ESP32 Env monitor Prometheus metrics\n\n"; - message += "# HELP env_temperature The temperature in " + String(tempUnit == BME280::TempUnit_Celsius ? 'C' :'F') + "\n"; - message += "# TYPE env_temperature gauge\n"; - message += "env_temperature " + String(temp) + "\n\n"; + float temperature = temp; + float humidity = hum; + float pressure = pres; - message += "# HELP env_pressure The pressure in " + String(presUnit) + "\n"; - message += "# TYPE env_pressure gauge\n"; - message += "env_pressure " + String(pres) + "\n\n"; + if (temperature < 100) { + message += "# HELP env_temperature The temperature in " + String(tempUnit == BME280::TempUnit_Celsius ? 'C' :'F') + "\n"; + message += "# TYPE env_temperature gauge\n"; + message += "env_temperature " + String(temperature) + "\n\n"; + } - message += "# HELP env_humidity The humidity in %\n"; - message += "# TYPE env_humidity gauge\n"; - message += "env_humidity " + String(hum) + "\n\n"; + if (pressure < 2000) { + message += "# HELP env_pressure The pressure in " + String(presUnit) + "\n"; + message += "# TYPE env_pressure gauge\n"; + message += "env_pressure " + String(pressure) + "\n\n"; + } + + if (humidity < 100){ + message += "# HELP env_humidity The humidity in %\n"; + message += "# TYPE env_humidity gauge\n"; + message += "env_humidity " + String(humidity) + "\n\n"; + } message += "# HELP env_tvoc The TVOC in ppb\n"; message += "# TYPE env_tvoc gauge\n";