Skip to content
This repository was archived by the owner on Dec 30, 2024. It is now read-only.

Commit a5e7c6e

Browse files
authored
Merge pull request #16 from ezr-ondrej/breadcrumbs_with_level
Add breadcrumbs support for WriteLevel
2 parents 262337b + 518c55f commit a5e7c6e

File tree

1 file changed

+16
-9
lines changed

1 file changed

+16
-9
lines changed

writer.go

+16-9
Original file line numberDiff line numberDiff line change
@@ -93,19 +93,26 @@ func (w *Writer) Write(data []byte) (n int, err error) {
9393
// implements zerolog.LevelWriter
9494
func (w *Writer) WriteLevel(level zerolog.Level, p []byte) (n int, err error) {
9595
n = len(p)
96-
if _, enabled := w.levels[level]; !enabled {
96+
97+
event, ok := w.parseLogEvent(p)
98+
if !ok {
99+
return
100+
}
101+
event.Level, ok = levelsMapping[level]
102+
if !ok {
97103
return
98104
}
99105

100-
event, ok := w.parseLogEvent(p)
101-
event.Level = levelsMapping[level]
106+
if _, enabled := w.levels[level]; !enabled {
107+
// if the level is not enabled, add event as a breadcrumb
108+
w.addBreadcrumb(event)
109+
return
110+
}
102111

103-
if ok {
104-
w.hub.CaptureEvent(event)
105-
// should flush before os.Exit
106-
if event.Level == sentry.LevelFatal {
107-
w.hub.Flush(w.flushTimeout)
108-
}
112+
w.hub.CaptureEvent(event)
113+
// should flush before os.Exit
114+
if event.Level == sentry.LevelFatal {
115+
w.hub.Flush(w.flushTimeout)
109116
}
110117
return
111118
}

0 commit comments

Comments
 (0)