feat: added log level setting

This commit is contained in:
Yurii
2024-10-15 04:07:00 +03:00
parent a9e97c15ad
commit 5553a13cc0
13 changed files with 60 additions and 39 deletions

View File

@@ -99,11 +99,10 @@ protected:
tMqtt->disable();
}
if ( Log.getLevel() != TinyLogger::Level::INFO && !settings.system.debug ) {
Log.setLevel(TinyLogger::Level::INFO);
} else if ( Log.getLevel() != TinyLogger::Level::VERBOSE && settings.system.debug ) {
Log.setLevel(TinyLogger::Level::VERBOSE);
if (settings.system.logLevel >= TinyLogger::Level::SILENT && settings.system.logLevel <= TinyLogger::Level::VERBOSE) {
if (Log.getLevel() != settings.system.logLevel) {
Log.setLevel(static_cast<TinyLogger::Level>(settings.system.logLevel));
}
}
} else {
@@ -160,7 +159,7 @@ protected:
this->restartSignalTime = millis();
}
if (!settings.system.debug) {
if (settings.system.logLevel < TinyLogger::Level::VERBOSE) {
return;
}

View File

@@ -270,7 +270,7 @@ protected:
return;
}
if (settings.system.debug) {
if (settings.system.logLevel >= TinyLogger::Level::TRACE) {
Log.strace(FPSTR(L_MQTT_MSG), F("Topic: %s\r\n> "), topic);
if (Log.lock()) {
for (size_t i = 0; i < length; i++) {

View File

@@ -1,5 +1,5 @@
#define PORTAL_CACHE_TIME "max-age=86400"
#define PORTAL_CACHE settings.system.debug ? nullptr : PORTAL_CACHE_TIME
#define PORTAL_CACHE (settings.system.logLevel >= TinyLogger::Level::TRACE ? nullptr : PORTAL_CACHE_TIME)
#ifdef ARDUINO_ARCH_ESP8266
#include <ESP8266WebServer.h>
#include <Updater.h>

View File

@@ -24,7 +24,7 @@ struct NetworkSettings {
struct Settings {
struct {
bool debug = DEBUG_BY_DEFAULT;
uint8_t logLevel = DEFAULT_LOG_LEVEL;
struct {
bool enable = USE_SERIAL;

View File

@@ -62,8 +62,8 @@
#define DEFAULT_STA_PASSWORD ""
#endif
#ifndef DEBUG_BY_DEFAULT
#define DEBUG_BY_DEFAULT false
#ifndef DEFAULT_LOG_LEVEL
#define DEFAULT_LOG_LEVEL TinyLogger::Level::VERBOSE
#endif
#ifndef DEFAULT_STATUS_LED_GPIO

View File

@@ -129,7 +129,9 @@ void setup() {
Log.addStream(telnetStream);
}
Log.setLevel(settings.system.debug ? TinyLogger::Level::VERBOSE : TinyLogger::Level::INFO);
if (settings.system.logLevel >= TinyLogger::Level::SILENT && settings.system.logLevel <= TinyLogger::Level::VERBOSE) {
Log.setLevel(static_cast<TinyLogger::Level>(settings.system.logLevel));
}
// network
network = (new NetworkMgr)

View File

@@ -326,7 +326,7 @@ bool jsonToNetworkSettings(const JsonVariantConst src, NetworkSettings& dst) {
void settingsToJson(const Settings& src, JsonVariant dst, bool safe = false) {
if (!safe) {
dst["system"]["debug"] = src.system.debug;
dst["system"]["logLevel"] = static_cast<uint8_t>(src.system.logLevel);
dst["system"]["serial"]["enable"] = src.system.serial.enable;
dst["system"]["serial"]["baudrate"] = src.system.serial.baudrate;
dst["system"]["telnet"]["enable"] = src.system.telnet.enable;
@@ -459,11 +459,11 @@ bool jsonToSettings(const JsonVariantConst src, Settings& dst, bool safe = false
if (!safe) {
// system
if (src["system"]["debug"].is<bool>()) {
bool value = src["system"]["debug"].as<bool>();
if (!src["system"]["logLevel"].isNull()) {
uint8_t value = src["system"]["logLevel"].as<uint8_t>();
if (value != dst.system.debug) {
dst.system.debug = value;
if (value != dst.system.logLevel && value >= TinyLogger::Level::SILENT && value <= TinyLogger::Level::VERBOSE) {
dst.system.logLevel = value;
changed = true;
}
}