| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- // package log_msg -- сообщение логгера.
- package log_msg
- import (
- "fmt"
- mL0 "gitp78su.ipnodns.ru/svi/kern/v4/lev0"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/kspec"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/quark"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/quark/quark_val"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev0/voc"
- )
- const (
- DEBUG = -3
- INFO = -2
- WARN = -1
- ERROR = 0
- )
- // logMsg -- сообщение логгера.
- type logMsg struct {
- level *quark.QStr[quark.Mut]
- createdAt kspec.ITime
- msg *quark.QStr[quark.Fix]
- }
- // NewLogMsg -- возвращает новое сообщение логгера.
- func NewLogMsg(level int, msg string) kspec.ILogMsg {
- sf := &logMsg{
- createdAt: voc.NewETimeAuto(),
- msg: quark.NewQStr(msg),
- }
- sf.check(level)
- return sf
- }
- // String -- возвращает форматированное сообщение лога.
- func (sf *logMsg) String() string {
- strOut := fmt.Sprintf("%v %v %v", sf.level, sf.createdAt, sf.msg)
- return strOut
- }
- // Msg -- возвращает хранимое сообщение.
- func (sf *logMsg) Msg() *quark.QStr[quark.Fix] {
- return sf.msg
- }
- // Level -- возвращает уровень сообщения.
- func (sf *logMsg) Level() *quark.QStr[quark.Mut] {
- return sf.level
- }
- // CreateAt -- когда сообщение создано.
- func (sf *logMsg) CreateAt() kspec.ITime {
- return sf.createdAt
- }
- // Проверяет правильность своего состава.
- func (sf *logMsg) check(level int) {
- switch level {
- case DEBUG:
- quark_val.Set(sf.level.Val(), "DEBU")
- case INFO:
- quark_val.Set(sf.level.Val(), "INFO")
- case WARN:
- quark_val.Set(sf.level.Val(), "WARN")
- case ERROR:
- quark_val.Set(sf.level.Val(), "ERRO")
- default:
- mL0.Hassert(false, "logMsg.check(): unknown level(%v)", level)
- }
- }
|