formatter.go 834 B

123456789101112131415161718192021222324252627282930313233
  1. package hiedabke_writer
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. )
  6. type HiedaComplexLogFormatter interface {
  7. FormatHiedaComplexLog(module string, level string, data map[string]string) string
  8. }
  9. type HiedaStringLogFormatter interface {
  10. FormatHiedaStringLog(module string, level string, data string) string
  11. }
  12. type HiedaComplexLogJsonFormatter struct {
  13. }
  14. func (f *HiedaComplexLogJsonFormatter) FormatHiedaComplexLog(module string, level string, data map[string]string) string {
  15. jd, err := json.Marshal(data)
  16. if err != nil {
  17. return "{}"
  18. }
  19. ps := string(jd)
  20. return fmt.Sprintf("[%s] <%s> %s", module, level, ps)
  21. }
  22. type HiedaStringLogDefaultFormatter struct {
  23. }
  24. func (f *HiedaStringLogDefaultFormatter) FormatHiedaStringLog(module string, level string, data string) string {
  25. return fmt.Sprintf("[%s] <%s> %s", module, level, data)
  26. }