Logging & error handling
[ealt-edge.git] / mecm / mepm / applcm / k8shelm / cmd / helm / main.go
index adcba84..55733e9 100644 (file)
 package main
 
 import (
+       "github.com/sirupsen/logrus"
        "k8shelm/pkg/plugin"
-       "log"
        "os"
 )
 
+const (
+       serverPort = 50051
+       certificate = ""
+       key = ""
+       logFile = "/go/release/logfile"
+       loggerLevel = logrus.InfoLevel
+)
+
 func main() {
-       logger := log.New(os.Stdout, "helm ", log.LstdFlags|log.Lshortfile)
-       serverConfig := plugin.ServerGRPCConfig{Certificate:"", Port:50051, Key:""}
-       server, err := plugin.NewServerGRPC(serverConfig)
+       // Prepare logger
+       file, err := os.Create(logFile)
        if err != nil {
-               logger.Fatalf("failed to create server: %v", err)
+               logrus.Fatal(err)
        }
-       error := server.Listen()
-       if error != nil {
+       defer file.Close()
+
+       var logger = plugin.GetLogger(logFile, loggerLevel, file)
+
+       // Create GRPC server
+       serverConfig := plugin.ServerGRPCConfig{Certificate: certificate, Port:serverPort, Key:key, Logger:logger}
+       server := plugin.NewServerGRPC(serverConfig)
+
+       // Start listening
+       err = server.Listen()
+       if err != nil {
                logger.Fatalf("failed to listen: %v", err)
        }
 }