ambient-local-exporter/pkg/ambient/config/config.go

37 lines
1.3 KiB
Go
Raw Normal View History

2025-01-12 22:23:32 +00:00
package config
2025-01-08 21:49:31 +00:00
import (
"gitea.libretechconsulting.com/rmcguire/go-app/pkg/config"
)
// This configuration includes all config from go-app/config.AppConfig
type AmbientLocalExporterConfig struct {
MetricPrefix string `yaml:"metricPrefix" default:"weather" env:"AMBIENT_METRIC_PREFIX"`
WeatherStations []WeatherStation `yaml:"weatherStations"` // No env, too complex, not worth the time
*config.AppConfig // Extends app config
}
type WeatherStation struct {
Name string `yaml:"name"` // Human Friendly Name (e.g. Back Yard Weather)
Equipment string `yaml:"equipment"` // Equipment Type (e.g. WS-5000)
2025-01-12 22:23:32 +00:00
// Required if proxying to awn/wu is enabled
WundergroundID string `yaml:"wundergroundID"`
WundergroundPassword string `yaml:"wundergroundPassword"`
AWNPassKey string `yaml:"awnPassKey"`
2025-01-08 21:49:31 +00:00
// Proxy updates to AWN or Wunderground
ProxyToAWN bool `yaml:"proxyToAWN"`
ProxyToWunderground bool `yaml:"proxyToWunderground"`
// Unreliable / unwanted metrics by name of WeatherUpdate Field
2025-01-09 02:28:38 +00:00
// will be excluded if present in discardMetrics
//
// If anything is present in keepMetrics, it is solely applied,
2025-01-12 22:23:32 +00:00
// ignoring discardMetrics.
//
// Check weather.WeatherUpdateField for options
KeepMetrics []string `yaml:"keepMetrics"`
DropMetrics []string `yaml:"dropMetrics"`
2025-01-12 20:30:37 +00:00
}