34 lines
764 B
Go

package main
import (
"context"
"errors"
"log"
"os"
"os/signal"
"syscall"
"weatherstation/internal/server"
"weatherstation/internal/tools"
)
func main() {
server.SetupLogger()
// If CAIYUN_TOKEN is provided, enable wind override automatically.
opts := tools.ExporterOptions{}
if token := os.Getenv("CAIYUN_TOKEN"); token != "" {
opts.OverrideWindWithCaiyun = true
opts.CaiyunToken = token
log.Printf("[service-exporter] wind override enabled via CAIYUN_TOKEN")
}
exp := tools.NewExporterWithOptions(opts)
ctx, stop := signal.NotifyContext(context.Background(), os.Interrupt, syscall.SIGTERM)
defer stop()
if err := exp.Start(ctx); err != nil && !errors.Is(err, context.Canceled) {
log.Fatalf("service-exporter failed: %v", err)
}
}