mirror of
https://github.com/unpoller/unpoller.git
synced 2026-03-31 06:24:21 -04:00
Add config option to suppress unknown device type messages
Adds log_unknown_types config option (default: false) to control logging of unknown UniFi device types. When disabled (default), unknown devices are silently ignored to reduce log volume. When enabled, they are logged as DEBUG messages instead of ERROR. Addresses issue #912. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -7,6 +7,10 @@
|
|||||||
[poller]
|
[poller]
|
||||||
debug = false
|
debug = false
|
||||||
quiet = false
|
quiet = false
|
||||||
|
# log_unknown_types = false # Set to true to log unknown device types as DEBUG messages.
|
||||||
|
# By default, newer UniFi device types that aren't recognized
|
||||||
|
# are silently ignored to reduce log volume. Enable this when
|
||||||
|
# debugging or reporting new device types to developers.
|
||||||
|
|
||||||
[unifi]
|
[unifi]
|
||||||
remote = true
|
remote = true
|
||||||
|
|||||||
@@ -7,6 +7,10 @@
|
|||||||
poller:
|
poller:
|
||||||
debug: false
|
debug: false
|
||||||
quiet: false
|
quiet: false
|
||||||
|
# log_unknown_types: false # Set to true to log unknown device types as DEBUG messages.
|
||||||
|
# By default, newer UniFi device types that aren't recognized
|
||||||
|
# are silently ignored to reduce log volume. Enable this when
|
||||||
|
# debugging or reporting new device types to developers.
|
||||||
|
|
||||||
unifi:
|
unifi:
|
||||||
# Enable remote API mode - automatically discovers all consoles
|
# Enable remote API mode - automatically discovers all consoles
|
||||||
|
|||||||
@@ -11,6 +11,11 @@
|
|||||||
# Recommend enabling debug with this setting for better error logging.
|
# Recommend enabling debug with this setting for better error logging.
|
||||||
quiet = false
|
quiet = false
|
||||||
|
|
||||||
|
# Log unknown device types as DEBUG messages. By default (false), newer UniFi
|
||||||
|
# device types that aren't recognized are silently ignored to reduce log volume.
|
||||||
|
# Enable this when debugging or reporting new device types to developers.
|
||||||
|
# log_unknown_types = false
|
||||||
|
|
||||||
# Load dynamic plugins. Advanced use; only sample mysql plugin provided by default.
|
# Load dynamic plugins. Advanced use; only sample mysql plugin provided by default.
|
||||||
plugins = []
|
plugins = []
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,8 @@
|
|||||||
"poller": {
|
"poller": {
|
||||||
"debug": false,
|
"debug": false,
|
||||||
"quiet": false,
|
"quiet": false,
|
||||||
"plugins": []
|
"plugins": [],
|
||||||
|
"log_unknown_types": false
|
||||||
},
|
},
|
||||||
|
|
||||||
"prometheus": {
|
"prometheus": {
|
||||||
|
|||||||
@@ -9,6 +9,10 @@ poller:
|
|||||||
debug: false
|
debug: false
|
||||||
quiet: false
|
quiet: false
|
||||||
plugins: []
|
plugins: []
|
||||||
|
# log_unknown_types: false # Set to true to log unknown device types as DEBUG messages.
|
||||||
|
# By default, newer UniFi device types that aren't recognized
|
||||||
|
# are silently ignored to reduce log volume. Enable this when
|
||||||
|
# debugging or reporting new device types to developers.
|
||||||
|
|
||||||
prometheus:
|
prometheus:
|
||||||
disable: false
|
disable: false
|
||||||
|
|||||||
@@ -467,6 +467,8 @@ func (u *InfluxUnifi) switchExport(r report, v any) { //nolint:cyclop
|
|||||||
case *unifi.SpeedTestResult:
|
case *unifi.SpeedTestResult:
|
||||||
u.batchSpeedTest(r, v)
|
u.batchSpeedTest(r, v)
|
||||||
default:
|
default:
|
||||||
u.LogErrorf("invalid export type: %T", v)
|
if u.Collector.Poller().LogUnknownTypes {
|
||||||
|
u.LogDebugf("unknown export type: %T", v)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -102,9 +102,10 @@ type Config struct {
|
|||||||
|
|
||||||
// Poller is the global config values.
|
// Poller is the global config values.
|
||||||
type Poller struct {
|
type Poller struct {
|
||||||
Plugins []string `json:"plugins" toml:"plugins" xml:"plugin" yaml:"plugins"`
|
Plugins []string `json:"plugins" toml:"plugins" xml:"plugin" yaml:"plugins"`
|
||||||
Debug bool `json:"debug" toml:"debug" xml:"debug,attr" yaml:"debug"`
|
Debug bool `json:"debug" toml:"debug" xml:"debug,attr" yaml:"debug"`
|
||||||
Quiet bool `json:"quiet" toml:"quiet" xml:"quiet,attr" yaml:"quiet"`
|
Quiet bool `json:"quiet" toml:"quiet" xml:"quiet,attr" yaml:"quiet"`
|
||||||
|
LogUnknownTypes bool `json:"log_unknown_types" toml:"log_unknown_types" xml:"log_unknown_types" yaml:"log_unknown_types"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// LoadPlugins reads-in dynamic shared libraries.
|
// LoadPlugins reads-in dynamic shared libraries.
|
||||||
|
|||||||
@@ -452,6 +452,8 @@ func (u *promUnifi) switchExport(r report, v any) {
|
|||||||
case *unifi.UsageByCountry:
|
case *unifi.UsageByCountry:
|
||||||
u.exportCountryTraffic(r, v)
|
u.exportCountryTraffic(r, v)
|
||||||
default:
|
default:
|
||||||
u.LogErrorf("invalid type: %T", v)
|
if u.Collector.Poller().LogUnknownTypes {
|
||||||
|
u.LogDebugf("unknown type: %T", v)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user