gitee.com/h79/goutils@v1.22.10/alarm/alarm.go (about)

     1  package alarm
     2  
     3  import (
     4  	"context"
     5  	"gitee.com/h79/goutils/common/debug"
     6  	"gitee.com/h79/goutils/plugins"
     7  )
     8  
     9  func Do(ctx context.Context, code int32, module, title, detail string, err error) {
    10  	Handle(ctx, debug.DNormalLevel, code, module, title, detail, err)
    11  }
    12  
    13  func Important(ctx context.Context, code int32, module, title, detail string, err error) {
    14  	Handle(ctx, debug.DImportantLevel, code, module, title, detail, err)
    15  }
    16  func Tight(ctx context.Context, code int32, module, title, detail string, err error) {
    17  	Handle(ctx, debug.DTightLevel, code, module, title, detail, err)
    18  }
    19  
    20  func Fatal(ctx context.Context, code int32, module, title, detail string, err error) {
    21  	Handle(ctx, debug.DFatalLevel, code, module, title, detail, err)
    22  }
    23  
    24  func Handle(ctx context.Context, l debug.Level, code int32, module, title, detail string, err error) {
    25  	d := debug.New(code).
    26  		WithModule(module).
    27  		WithDetail(detail).
    28  		WithTitle(title).
    29  		WithError(err).
    30  		WithLevel(l)
    31  	_, _ = plugins.Do(plugins.KAlarm, ctx, "debug", d)
    32  }