[MM-18150] plugin panic trace should not be lost (#13559)

* Transit panic from debug to error

* Parse plugin's StdErr and output panic to the mlog.Error

* Add unit tests

* Change log test

* Remove buffer from logger

* Remove 'panic' string filter

* Change *Buffer to io.Writer

Co-authored-by: mattermod <mattermod@users.noreply.github.com>
Этот коммит содержится в:
Shota Gvinepadze
2020-03-11 11:41:11 +04:00
коммит произвёл GitHub
родитель 771574b652
Коммит 5d928b4f94
6 изменённых файлов: 76 добавлений и 6 удалений

Просмотреть файл

@@ -85,3 +85,13 @@ func (l *loggerWriter) Write(p []byte) (int, error) {
}
return len(p), nil
}
type panicLoggerWriter struct {
logFunc func(msg string, fields ...Field)
}
func (l *panicLoggerWriter) Write(p []byte) (int, error) {
trimmed := string(bytes.TrimSpace(p))
l.logFunc(trimmed)
return len(p), nil
}