From 0dc4bea01a2f51b8a1c8f8b8c586e040c065fe38 Mon Sep 17 00:00:00 2001 From: xengineering Date: Sat, 20 Dec 2025 14:25:45 +0100 Subject: Add startup config logging This is useful during early development to make possible misconfiguration visible. Later it might be dropped especially if the config gets larger. --- config.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'config.go') diff --git a/config.go b/config.go index dfea550..d39efca 100644 --- a/config.go +++ b/config.go @@ -50,6 +50,19 @@ type StartupConfig struct { Homematic HomematicConfig `json:"homematic"` } +func (sc StartupConfig) String() string { + prefix := "" + indent := "\t" + + data, err := json.MarshalIndent(sc, prefix, indent) + if err != nil { + log.Println("Failed to marshal startup configuration.") + return "" + } + + return string(data) +} + func (sc StartupConfig) Validate() error { if !mqttBrokerRegexp.MatchString(sc.MQTT.Broker) { return fmt.Errorf( @@ -152,5 +165,7 @@ func GetStartupConfig(path string) StartupConfig { } } + log.Printf("Startup configuration:\n%v", config) + return config } -- cgit v1.2.3-70-g09d2