SSE: Return error messages instead of 500 on SSE command parse errors (#109480)
fixes #108897 --------- Co-authored-by: Kyle Brandt <kyle@grafana.com>
This commit is contained in:
co-authored by
Kyle Brandt
parent
76af73b3f3
commit
bdf9583ada
@@ -75,6 +75,25 @@ func MakeDependencyError(refID, depRefID string) error {
|
||||
return DependencyError.Build(data)
|
||||
}
|
||||
|
||||
var parsErrStr = "failed to parse expression [{{ .Public.refId }}]: {{.Public.error}}"
|
||||
|
||||
var ParseError = errutil.NewBase(
|
||||
errutil.StatusBadRequest, "sse.parseError").MustTemplate(
|
||||
parsErrStr,
|
||||
errutil.WithPublic(parsErrStr))
|
||||
|
||||
func MakeParseError(refID string, err error) error {
|
||||
data := errutil.TemplateData{
|
||||
Public: map[string]interface{}{
|
||||
"refId": refID,
|
||||
"error": err.Error(),
|
||||
},
|
||||
Error: err,
|
||||
}
|
||||
|
||||
return ParseError.Build(data)
|
||||
}
|
||||
|
||||
var unexpectedNodeTypeErrString = "expected executable node type but got node type [{{ .Public.nodeType }} for refid [{{ .Public.refId}}]"
|
||||
|
||||
var UnexpectedNodeTypeError = errutil.NewBase(
|
||||
|
||||
Reference in New Issue
Block a user