Ai
1 Star 0 Fork 0

SasukeBo/go-micro

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
status.go 889 Bytes
一键复制 编辑 原始数据 按行查看 历史
汪波 提交于 2023-02-23 10:27 +08:00 . fix: 替换包名
package opencensus
import (
"fmt"
microerr "gitee.com/sasukebo/go-micro/v4/errors"
"go.opencensus.io/trace"
"google.golang.org/genproto/googleapis/rpc/code"
)
var microCodeToStatusCode = map[int32]code.Code{
400: code.Code_INVALID_ARGUMENT,
401: code.Code_UNAUTHENTICATED,
403: code.Code_PERMISSION_DENIED,
404: code.Code_NOT_FOUND,
409: code.Code_ABORTED,
500: code.Code_INTERNAL,
}
func getResponseStatus(err error) trace.Status {
if err != nil {
microErr, ok := err.(*microerr.Error)
if ok {
statusCode := microErr.Code
code, ok := microCodeToStatusCode[microErr.Code]
if ok {
statusCode = int32(code)
}
return trace.Status{
Code: statusCode,
Message: fmt.Sprintf("%s: %s", microErr.Id, microErr.Detail),
}
}
return trace.Status{
Code: int32(code.Code_UNKNOWN),
Message: err.Error(),
}
}
return trace.Status{}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/sasukebo/go-micro.git
git@gitee.com:sasukebo/go-micro.git
sasukebo
go-micro
go-micro
6e18eb58b836

搜索帮助