package configs

import (
	"os"

	"github.com/tidbcloud/observability/pkg/common/structs"
	"gopkg.in/yaml.v3"
)

// LoadMonitorSpec used to load monitor specs from file
func LoadMonitorSpec(path string) map[string]structs.MonitorSpec {
	monitorSpecs := make(map[string]structs.MonitorSpec)
	in, err := os.ReadFile(path)
	if err != nil {
		panic(err)
	}
	err = yaml.Unmarshal(in, &monitorSpecs)
	if err != nil {
		panic(err)
	}
	return monitorSpecs
}
