This commit is contained in:
2026-01-12 22:32:18 +01:00
parent cdf6a6c44a
commit a93c0e124e
4 changed files with 16 additions and 11 deletions

View File

@@ -1,6 +1,6 @@
{
"mqtt": {
"broker": "mqtt://172.23.1.102:1883",
"broker": "mqtt://172.23.1.101:8883",
"username": "archiver",
"tlsEnable": "true"
},

View File

@@ -14,9 +14,9 @@
"cem/#"
],
"syslog": {
"enable": "false",
"enable": "true",
"network": "udp",
"server": "syslog-server:514",
"server": "172.20.0.10:514",
"facility": "local0",
"severity": "info",
"tag": "mqtt-archiver"

View File

@@ -13,14 +13,16 @@ func InitSyslog() {
if config.Config.Syslog.Enable == "true" {
// Parse facility
facility := parseFacility(config.Config.Syslog.Facility)
// Parse severity
severity := parseSeverity(config.Config.Syslog.Severity)
// Combine to priority
priority := facility | severity
var err error
// Connect to remote syslog server
syslogWriter, err = syslog.Dial(
config.Config.Syslog.Network,
config.Config.Syslog.Server,
@@ -41,7 +43,7 @@ func WriteSyslog(message Message) {
log.Printf("Failed to marshal message to JSON: %v", err)
return
}
// Send to syslog based on configured severity
switch config.Config.Syslog.Severity {
case "emerg":
@@ -89,7 +91,7 @@ func parseFacility(facility string) syslog.Priority {
"local6": syslog.LOG_LOCAL6,
"local7": syslog.LOG_LOCAL7,
}
if f, ok := facilities[facility]; ok {
return f
}
@@ -107,7 +109,7 @@ func parseSeverity(severity string) syslog.Priority {
"info": syslog.LOG_INFO,
"debug": syslog.LOG_DEBUG,
}
if s, ok := severities[severity]; ok {
return s
}

View File

@@ -14,7 +14,7 @@ type ConfigT struct {
Mqtt struct {
Broker string `json:"broker"`
Username string `json:"username"`
Password string
Password string `json:"password"`
TlsEnable string `json:"tlsEnable"`
} `json:"mqtt"`
IncludeTopics []string `json:"includeTopics"`
@@ -37,5 +37,8 @@ func LoadConfiguration() {
log.Fatalf("Unable to parse configuration: %s", err)
}
Config.Mqtt.Password = os.Getenv("MQTT_PASSWORD")
// Load password from environment variable only if not set in config
if Config.Mqtt.Password == "" {
Config.Mqtt.Password = os.Getenv("MQTT_PASSWORD")
}
}