Browse Source

Add a backend for ZGPF.

ZRY 8 months ago
parent
commit
c2545e8bfb
4 changed files with 95 additions and 0 deletions
  1. 8 0
      hiedabke_zgpf/go.mod
  2. 4 0
      hiedabke_zgpf/go.sum
  3. 70 0
      hiedabke_zgpf/zgpf_bke.go
  4. 13 0
      hiedabke_zgpf/zgpf_util.go

+ 8 - 0
hiedabke_zgpf/go.mod

@@ -0,0 +1,8 @@
+module git.swzry.com/zry/GoHiedaLogger/hiedabke_zgpf
+
+go 1.20
+
+require (
+	git.swzry.com/zry/GoHiedaLogger/hiedalog v0.0.0-20230712055224-281f754ce81c
+	git.swzry.com/zry/zry-go-program-framework/core v0.0.0-20230814163048-27836c09f169
+)

+ 4 - 0
hiedabke_zgpf/go.sum

@@ -0,0 +1,4 @@
+git.swzry.com/zry/GoHiedaLogger/hiedalog v0.0.0-20230712055224-281f754ce81c h1:plXCEHwBQ5Ub48r8mtGF715PXHKOMyVKDMg6eeVvb3Y=
+git.swzry.com/zry/GoHiedaLogger/hiedalog v0.0.0-20230712055224-281f754ce81c/go.mod h1:NMU7558kNXCUuK0qKYQMtYK/kn2lhwelnij295H3pdU=
+git.swzry.com/zry/zry-go-program-framework/core v0.0.0-20230814163048-27836c09f169 h1:yX2PxhD5SelqnjRPW5ClI4V79fikg+0i68/x43lqIXw=
+git.swzry.com/zry/zry-go-program-framework/core v0.0.0-20230814163048-27836c09f169/go.mod h1:3qpblCnuLmLKgdagaxqvx7HZyY+cOxuTHOCXupkIrt0=

+ 70 - 0
hiedabke_zgpf/zgpf_bke.go

@@ -0,0 +1,70 @@
+package hiedabke_zgpf
+
+import (
+	"git.swzry.com/zry/GoHiedaLogger/hiedalog"
+	zgpf "git.swzry.com/zry/zry-go-program-framework/core"
+)
+
+var _ hiedalog.HiedaLogBackend = (*ZGPFModuleLoggerBackend)(nil)
+
+type ZGPFModuleLoggerBackend struct {
+	baseLogger zgpf.IModuleLogger
+}
+
+func NewZGPFModuleLoggerBackend(base zgpf.IModuleLogger) *ZGPFModuleLoggerBackend {
+	return &ZGPFModuleLoggerBackend{baseLogger: base}
+}
+
+func (b *ZGPFModuleLoggerBackend) EmitStringLog(module string, level hiedalog.HiedaLogLevel, content string) {
+	l := b.baseLogger.GetSubLog(module)
+	switch level.LevelNumber {
+	default:
+		l.Debug(content)
+		break
+	case 0:
+		l.Fatal(content)
+		break
+	case 1:
+		l.Panic(content)
+		break
+	case 2:
+		l.Error(content)
+		break
+	case 3:
+		l.Warn(content)
+		break
+	case 4:
+		l.Info(content)
+		break
+	case 5:
+		l.Verbose(content)
+		break
+	}
+}
+
+func (b *ZGPFModuleLoggerBackend) EmitComplexLog(module string, level hiedalog.HiedaLogLevel, data map[string]string) {
+	l := b.baseLogger.GetSubLog(module)
+	switch level.LevelNumber {
+	default:
+		l.DebugC(data)
+		break
+	case 0:
+		l.FatalC(data)
+		break
+	case 1:
+		l.PanicC(data)
+		break
+	case 2:
+		l.ErrorC(data)
+		break
+	case 3:
+		l.WarnC(data)
+		break
+	case 4:
+		l.InfoC(data)
+		break
+	case 5:
+		l.VerboseC(data)
+		break
+	}
+}

+ 13 - 0
hiedabke_zgpf/zgpf_util.go

@@ -0,0 +1,13 @@
+package hiedabke_zgpf
+
+import (
+	"git.swzry.com/zry/GoHiedaLogger/hiedalog"
+	zgpf "git.swzry.com/zry/zry-go-program-framework/core"
+)
+
+func CreateHiedaLoggerFromIModuleLogger(base zgpf.IModuleLogger) *hiedalog.HiedaLogger {
+	l := hiedalog.NewHiedaLogger()
+	b := NewZGPFModuleLoggerBackend(base)
+	l.AddBackend(b, l.LevelFilter.NameToID(hiedalog.DLN_DEBUG))
+	return l
+}