[v9.4.x] Reqcontext: Use err status code instead of always fallback (#63977)

Reqcontext: Use err status code instead of always fallback (#63974)

(cherry picked from commit 8bd4e2cb25)

Co-authored-by: Ezequiel Victorero <ezequiel.victorero@grafana.com>
This commit is contained in:
Grot (@grafanabot)
2023-03-01 18:48:33 -03:00
committed by GitHub
co-authored by Ezequiel Victorero
parent 8c483cca31
commit 0299b18b88
+5 -1
View File
@@ -103,6 +103,8 @@ func (ctx *ReqContext) WriteErrOrFallback(status int, message string, err error)
func (ctx *ReqContext) writeErrOrFallback(status int, message string, err error) {
data := make(map[string]interface{})
statusResponse := status
traceID := tracing.TraceIDFromContext(ctx.Req.Context(), false)
if err != nil {
@@ -121,6 +123,8 @@ func (ctx *ReqContext) writeErrOrFallback(status int, message string, err error)
data["message"] = publicErr.Message
data["messageId"] = publicErr.MessageID
data["statusCode"] = publicErr.StatusCode
statusResponse = publicErr.StatusCode
} else {
if message != "" {
logMessage = message
@@ -141,7 +145,7 @@ func (ctx *ReqContext) writeErrOrFallback(status int, message string, err error)
data["message"] = message
}
ctx.JSON(status, data)
ctx.JSON(statusResponse, data)
}
func (ctx *ReqContext) HasUserRole(role org.RoleType) bool {