package main import ( "fmt" "github.com/gin-gonic/gin" "log" "onvif-agent/config" "onvif-agent/integration/zabbixagent" "onvif-agent/router" ) func main() { if err := config.LoadConfig(); err != nil { log.Fatalf("Error loading config: %v", err) } /** * Web server */ go func() { r := gin.Default() router.SetupRoutes(r) addr := fmt.Sprintf("%s:%d", config.Conf.Server.Host, config.Conf.Server.Port) if err := r.Run(addr); err != nil { fmt.Println("Failed to start server:", err) } }() /** * Zabbix agent */ go func() { err := zabbixagent.Run() if err != nil { fmt.Println("Failed to start Zabbix agent integration:", err) } }() select {} }