#include #include "log.h" #include "mqtt.h" #include "wifi.h" bool debugEnabled = false; void log(const char *level, const char *format, va_list vl) { char datetime[26]; getDateTime(datetime, sizeof datetime); char header[20]; snprintf(header, sizeof header, " | %-5s | ", level); char message[500]; vsnprintf(message, sizeof message, format, vl); Serial.print(datetime); Serial.print(header); Serial.print(message); Serial.println(); mqttPublishLog(datetime, header, message); } void debug(const char *format, ...) { if (!debugEnabled) { return; } va_list vl; va_start(vl, format); log("DEBUG", format, vl); va_end(vl); } void info(const char *format, ...) { va_list vl; va_start(vl, format); log("INFO", format, vl); va_end(vl); } void error(const char *format, ...) { va_list vl; va_start(vl, format); log("ERROR", format, vl); va_end(vl); } void setDebugEnabled(const bool enabled) { debugEnabled = enabled; } bool isDebugEnabled() { return debugEnabled; }