Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
9e5bc0d3ea
|
|||
6d3bd13f61
|
|||
b5ca475b3f
|
@@ -112,6 +112,13 @@ func (b *Builder) WithMessage(msg string) *Builder {
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
func (b *Builder) WithStackSkip(stacktraceskip int) *Builder {
|
||||
b.errorData.Caller = callername(stacktraceskip)
|
||||
return b
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Err changes the Severity to ERROR (default)
|
||||
// The error will be:
|
||||
//
|
||||
|
@@ -4,7 +4,10 @@ import (
|
||||
"github.com/rs/xid"
|
||||
"github.com/rs/zerolog"
|
||||
"gogs.mikescher.com/BlackForestBytes/goext/langext"
|
||||
"gogs.mikescher.com/BlackForestBytes/goext/rext"
|
||||
"reflect"
|
||||
"regexp"
|
||||
"strconv"
|
||||
"strings"
|
||||
"time"
|
||||
)
|
||||
@@ -77,7 +80,10 @@ func (ee *ExErr) As(target any) bool {
|
||||
}
|
||||
|
||||
func (ee *ExErr) Log(evt *zerolog.Event) {
|
||||
backup := zerolog.CallerMarshalFunc
|
||||
zerolog.CallerMarshalFunc = customZerologCallerMarshalFunc
|
||||
evt.Msg(ee.FormatLog(LogPrintFull))
|
||||
zerolog.CallerMarshalFunc = backup
|
||||
}
|
||||
|
||||
func (ee *ExErr) FormatLog(lvl LogPrintLevel) string {
|
||||
@@ -164,7 +170,10 @@ func (ee *ExErr) FormatLog(lvl LogPrintLevel) string {
|
||||
}
|
||||
|
||||
func (ee *ExErr) ShortLog(evt *zerolog.Event) {
|
||||
backup := zerolog.CallerMarshalFunc
|
||||
zerolog.CallerMarshalFunc = customZerologCallerMarshalFunc
|
||||
ee.Meta.Apply(evt).Msg(ee.FormatLog(LogPrintShort))
|
||||
zerolog.CallerMarshalFunc = backup
|
||||
}
|
||||
|
||||
// RecursiveMessage returns the message to show
|
||||
@@ -296,3 +305,10 @@ func (ee *ExErr) equalsDirectProperties(other *ExErr) bool {
|
||||
func newID() string {
|
||||
return xid.New().String()
|
||||
}
|
||||
|
||||
var regexZerologCallerClean = rext.W(regexp.MustCompile(`^(\.\./)*/?go/pkg/mod/gogs\.(mikescher|blackforestbytes)\.(com|de)/!black!forest!bytes/?`))
|
||||
|
||||
func customZerologCallerMarshalFunc(pc uintptr, file string, line int) string {
|
||||
file = regexZerologCallerClean.ReplaceAll(file, "", true)
|
||||
return file + ":" + strconv.Itoa(line)
|
||||
}
|
||||
|
@@ -1,5 +1,5 @@
|
||||
package goext
|
||||
|
||||
const GoextVersion = "0.0.250"
|
||||
const GoextVersion = "0.0.253"
|
||||
|
||||
const GoextVersionTimestamp = "2023-08-21T15:34:26+0200"
|
||||
const GoextVersionTimestamp = "2023-08-22T10:36:35+0200"
|
||||
|
Reference in New Issue
Block a user