X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=cmd%2Fappmgr%2Flogger.go;fp=cmd%2Fappmgr%2Flogger.go;h=b8a7475bc66e0fe3e9fa45b0fd35b7e4d9627302;hb=d732b871ab1dccaf9ef5311dede522879193b45e;hp=877bcbebf154c5d88dd037a52cd5f50cf11d5453;hpb=8492ba318dfe939c74a22a6303144b66c7ab4923;p=ric-plt%2Fappmgr.git diff --git a/cmd/appmgr/logger.go b/cmd/appmgr/logger.go index 877bcbe..b8a7475 100755 --- a/cmd/appmgr/logger.go +++ b/cmd/appmgr/logger.go @@ -19,38 +19,54 @@ package main -/* -#cgo CFLAGS: -I/usr/local/include -#cgo LDFLAGS: -lmdclog -# -#include -void xAppMgr_mdclog_write(mdclog_severity_t severity, const char *msg) { - mdclog_write(severity, "%s", msg); -} -*/ -import "C" - import ( - "fmt" "net/http" "time" + mdclog "gerrit.o-ran-sc.org/r/com/golog" ) -func mdclog(severity C.mdclog_severity_t, msg string) { - msg = fmt.Sprintf("%s:: %s ", time.Now().Format("2019-01-02 15:04:05"), msg) +type Log struct { + logger *mdclog.MdcLogger +} + +func NewLogger(name string) *Log { + l, _ := mdclog.InitLogger(name) + return &Log{ + logger: l, + } +} + +func (l *Log) SetLevel(level int) { + l.logger.LevelSet(mdclog.Level(level)) +} + +func (l *Log) SetMdc(key string, value string) { + l.logger.MdcAdd(key, value) +} + +func (l *Log) Error(pattern string, args ...interface{}) { + l.SetMdc("time", time.Now().Format("2019-01-02 15:04:05")) + l.logger.Error(pattern, args...) +} + +func (l *Log) Warn(pattern string, args ...interface{}) { + l.SetMdc("time", time.Now().Format("2019-01-02 15:04:05")) + l.logger.Warning(pattern, args...) +} - C.mdclog_mdc_add(C.CString("XM"), C.CString("1.0.1")) - C.xAppMgr_mdclog_write(severity, C.CString(msg)) +func (l *Log) Info(pattern string, args ...interface{}) { + l.SetMdc("time", time.Now().Format("2019-01-02 15:04:05")) + l.logger.Info(pattern, args...) } -func mdclogSetLevel(severity C.mdclog_severity_t) { - C.mdclog_level_set(severity) +func (l *Log) Debug(pattern string, args ...interface{}) { + l.SetMdc("time", time.Now().Format("2019-01-02 15:04:05")) + l.logger.Debug(pattern, args...) } -func Logger(inner http.Handler) http.Handler { +func LogRestRequests(inner http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { inner.ServeHTTP(w, r) - s := fmt.Sprintf("Logger: method=%s url=%s", r.Method, r.URL.RequestURI()) - mdclog(C.MDCLOG_DEBUG, s) + Logger.Info("Logger: method=%s url=%s", r.Method, r.URL.RequestURI()) }) }