/
main.go
44 lines (36 loc) · 1.18 KB
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package main
import (
"flag"
"github.com/astaxie/beego"
"github.com/ZTE/Knitter/knitter-monitor/infra"
_ "github.com/ZTE/Knitter/knitter-monitor/routers"
"github.com/ZTE/Knitter/knitter-monitor/services"
"github.com/ZTE/Knitter/pkg/klog"
"github.com/ZTE/Knitter/pkg/version"
)
func main() {
//todo modify the configuration file loading method
cfgPath := flag.String("cfg", "", "config file path")
kubeconfig := flag.String("kubeconfig", "", "absolute path to the kubeconfig file")
flag.Parse()
confObj, err := version.GetConfObject(*cfgPath, "monitor")
if err != nil {
klog.Error("ParseInputParams failed, err: ", err.Error())
return
}
err = services.InitConfigurations4Monitor(confObj, *kubeconfig)
if err != nil {
klog.Errorf("services.InitConfigurations4Monitor err, error is [%v]", err)
return
}
err = infra.InitKubernetesClientset(*kubeconfig)
createPortForPodController, err := services.NewCreatePortForPodController()
if err != nil {
klog.Errorf("services.NewCreatePortForPodController(*kubeconfig:[%v]) err, error is [%v]", *kubeconfig, err)
return
}
var stopCh <-chan struct{}
go createPortForPodController.Run(1, stopCh)
beego.Run()
klog.Infof("main END")
}