43 lines
694 B
Go

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 {}
}