43 lines
567 B
Go
43 lines
567 B
Go
package main
|
|
|
|
import (
|
|
// Standard
|
|
"encoding/json"
|
|
"os"
|
|
)
|
|
|
|
type Config struct {
|
|
Network struct {
|
|
Address string
|
|
Port int
|
|
}
|
|
|
|
Logging struct {
|
|
URL string
|
|
System string
|
|
Instance string
|
|
LogDir string
|
|
}
|
|
|
|
Devices []Device
|
|
}
|
|
|
|
type Device struct {
|
|
Name string
|
|
Address string
|
|
Port int
|
|
Username string
|
|
Password string
|
|
Timeout int
|
|
}
|
|
|
|
func readConfig() (config Config, err error) {
|
|
var configData []byte
|
|
configData, err = os.ReadFile(flagConfig)
|
|
if err != nil {
|
|
return
|
|
}
|
|
|
|
err = json.Unmarshal(configData, &config)
|
|
return
|
|
}
|