Documentation
¶
Index ¶
Constants ¶
const ( PluginCodeSuccess = 200 PluginCodeOK = 0 PluginCodeBadRequest = 400 PluginCodeNotFound = 404 PluginCodeTimeout = 408 PluginCodePrecondFailed = 412 PluginCodeNotImplemented = 501 PluginCodeInternalError = 500 PluginCodeBadGateway = 502 )
Plugin error code constants
const ( // Common HTTP status codes HTTPStatusOK = 200 HTTPStatusBadRequest = 400 HTTPStatusForbidden = 403 HTTPStatusNotFound = 404 HTTPStatusInternalServerError = 500 HTTPStatusBadGateway = 502 )
Variables ¶
var ( AIGCServiceCode = NewBcode(http.StatusOK, 10000, "service interface call success") ErrAIGCServiceBadRequest = NewBcode(http.StatusBadRequest, 10001, "bad request") ErrAIGCServiceInitEnv = NewBcode(http.StatusInternalServerError, 10002, "set env failed") ErrAIGCServiceInstallEngine = NewBcode(http.StatusInternalServerError, 10003, "install model engine failed") ErrAIGCServiceStartEngine = NewBcode(http.StatusInternalServerError, 10004, "start model engine failed") ErrGetEngineModelList = NewBcode(http.StatusInternalServerError, 10005, "get model list failed") ErrEnginePullModel = NewBcode(http.StatusInternalServerError, 10006, "pull model failed") ErrAIGCServiceAddProvider = NewBcode(http.StatusInternalServerError, 10007, "provider insert db failed") ErrAIGCServiceProviderIsExist = NewBcode(http.StatusConflict, 10009, "provider already exist") ErrServiceRecordNotFound = NewBcode(http.StatusNotFound, 10011, "service not found") ErrServiceUpdateFailed = NewBcode(http.StatusInternalServerError, 10012, "service edit failed") ErrAddModelService = NewBcode(http.StatusInternalServerError, 10013, "add model service failed") ErrAIGCServiceVersionNotMatch = NewBcode(http.StatusUnprocessableEntity, 10014, "aog version not match") ErrUnSupportAIGCService = NewBcode(http.StatusBadRequest, 10015, "unsupport aog service") ErrUnSupportHybridPolicy = NewBcode(http.StatusBadRequest, 10016, "unsupport hybrid policy") ErrUnSupportFlavor = NewBcode(http.StatusBadRequest, 10017, "unsupport api flavor") ErrUnSupportAuthType = NewBcode(http.StatusBadRequest, 10018, "unsupport auth type") ErrEngineUnSupportService = NewBcode(http.StatusBadRequest, 10019, "engine unsupport current service") ErrServiceIsInstalled = NewBcode(http.StatusBadRequest, 10020, "service is installed") )
var ( ServiceProviderCode = NewBcode(http.StatusOK, 20000, "service provider interface call success") ErrServiceProviderBadRequest = NewBcode(http.StatusBadRequest, 20001, "bad request") ErrProviderInvalid = NewBcode(http.StatusBadRequest, 20002, "provider invalid") ErrProviderModelEmpty = NewBcode(http.StatusBadRequest, 20004, "provider model empty") ErrProviderUpdateFailed = NewBcode(http.StatusInternalServerError, 20005, "provider update failed") ErrProviderAuthInfoLost = NewBcode(http.StatusBadRequest, 20006, "provider api auth info lost") ErrProviderServiceUrlNotFormat = NewBcode(http.StatusBadRequest, 20007, "provider service url is irregular") ErrSystemProviderCannotDelete = NewBcode(http.StatusBadRequest, 20008, "system provider cannot be deleted") ErrProviderNotFound = NewBcode(http.StatusNotFound, 20009, "service provider is not found") )
var ( ModelCode = NewBcode(http.StatusOK, 30000, "service interface call success") ErrModelBadRequest = NewBcode(http.StatusBadRequest, 30001, " bad request") ErrModelIsExist = NewBcode(http.StatusConflict, 30002, "provider model already exist") ErrModelRecordNotFound = NewBcode(http.StatusNotFound, 30003, "model not exist") ErrAddModel = NewBcode(http.StatusInternalServerError, 30004, "model insert db failed") ErrDeleteModel = NewBcode(http.StatusInternalServerError, 30005, "model delete db failed") ErrEngineDeleteModel = NewBcode(http.StatusInternalServerError, 30006, "engine delete model failed") ErrNoRecommendModel = NewBcode(http.StatusNotFound, 30007, "No Recommend Model") ErrModelServiceNotAvailable = NewBcode(http.StatusInternalServerError, 30008, "Model service not available") ErrModelSizeIsTooLarge = NewBcode(http.StatusInternalServerError, 30009, "Model size is too large") ErrModelStatus = NewBcode(http.StatusInternalServerError, 30010, "Model status is not correct") )
var ( TaskCode = NewBcode(http.StatusOK, 40000, "Service interface call success") // Client Error Codes (4xx) - These are returned to users ErrNoTargetProvider = NewBcode(http.StatusNotFound, 40001, "There is no available target provider for the request") ErrReadRequestBody = NewBcode(http.StatusBadRequest, 40002, "Failed to read request body") ErrUnmarshalRequestBody = NewBcode(http.StatusBadRequest, 40003, "Failed to unmarshal request body") ErrUnSupportContentType = NewBcode(http.StatusUnsupportedMediaType, 40004, "Unsupported content type") ErrUnSupportRequestMethod = NewBcode(http.StatusMethodNotAllowed, 40005, "Unsupported request method") ErrUnsupportedCloseNotifier = NewBcode(http.StatusNotImplemented, 40006, "Unsupported CloseNotifier") ErrUnsupportedFlusher = NewBcode(http.StatusNotImplemented, 40007, "Unsupported Flusher") ErrNotExistDefaultProvider = NewBcode(http.StatusNotFound, 40008, "The default provider does not exist") ErrModelUnDownloaded = NewBcode(http.StatusNotFound, 40009, "The model has not been downloaded yet") ErrProviderNotExist = NewBcode(http.StatusNotFound, 40010, "The provider does not exist") ErrUnmarshalProviderProperties = NewBcode(http.StatusInternalServerError, 40011, "Failed to unmarshal provider properties") ErrMiddlewareHandle = NewBcode(http.StatusInternalServerError, 40012, "Middleware handle error") ErrFlavorConvertRequest = NewBcode(http.StatusUnprocessableEntity, 40013, "Flavor convert request error") ErrFlavorConvertResponse = NewBcode(http.StatusInternalServerError, 40014, "Flavor convert response error") ErrReadResponseBody = NewBcode(http.StatusInternalServerError, 40015, "Failed to read response body") ErrReadResponseChunk = NewBcode(http.StatusInternalServerError, 40016, "Failed to read response chunk") ErrInvokeServiceProvider = NewBcode(http.StatusBadGateway, 40017, "Failed to invoke service provider") // New error codes // Service-related errors ErrUnsupportedServiceType = NewBcode(http.StatusNotImplemented, 40030, "Unsupported service type") ErrPrepareRequest = NewBcode(http.StatusBadRequest, 40031, "Failed to prepare request") ErrSendRequest = NewBcode(http.StatusBadGateway, 40032, "Failed to send request to service") ErrReceiveResponse = NewBcode(http.StatusBadGateway, 40033, "Failed to receive response from service") // WebSocket-related errors ErrWebSocketUpgradeFailed = NewBcode(http.StatusBadRequest, 40040, "Failed to upgrade connection to WebSocket") ErrMissingWebSocketConnID = NewBcode(http.StatusBadRequest, 40041, "Missing WebSocket connection ID") ErrWebSocketMessageFormat = NewBcode(http.StatusBadRequest, 40042, "Unrecognized WebSocket message format") ErrWebSocketSendMessage = NewBcode(http.StatusInternalServerError, 40043, "Failed to send message to WebSocket client") ErrWebSocketSessionCreation = NewBcode(http.StatusInternalServerError, 40044, "Failed to create WebSocket session") // Authentication-related errors ErrAuthInfoParsing = NewBcode(http.StatusBadRequest, 40050, "Failed to parse authentication information") ErrAuthenticationFailed = NewBcode(http.StatusUnauthorized, 40051, "Authentication failed") // Data processing-related errors ErrJSONParsing = NewBcode(http.StatusBadRequest, 40060, "Failed to parse JSON data") ErrParameterValidation = NewBcode(http.StatusBadRequest, 40061, "Parameter validation failed") // Task processing-related errors ErrUnknownTaskType = NewBcode(http.StatusBadRequest, 40070, "Unknown task type") ErrTaskProcessing = NewBcode(http.StatusInternalServerError, 40071, "Task processing failed") // GRPC-related errors ErrGRPCStreamSend = NewBcode(http.StatusBadGateway, 40080, "Failed to send data to GRPC stream") ErrGRPCStreamReceive = NewBcode(http.StatusBadGateway, 40081, "Failed to receive data from GRPC stream") ErrGRPCConnection = NewBcode(http.StatusBadGateway, 40082, "Failed to establish GRPC connection") )
var ( ProcessCode = NewBcode(http.StatusOK, 50000, "Process interface call success") // Engine process errors (50001-50019) ErrEngineNotFound = NewBcode(http.StatusNotFound, 50001, "Engine executable not found") ErrEngineStartFailed = NewBcode(http.StatusInternalServerError, 50002, "Engine failed to start") ErrEngineStopFailed = NewBcode(http.StatusInternalServerError, 50003, "Engine failed to stop") ErrEngineNotRunning = NewBcode(http.StatusConflict, 50004, "Engine is not running") ErrEngineAlreadyRunning = NewBcode(http.StatusConflict, 50005, "Engine is already running") // Process management errors (50020-50039) ErrProcessNotFound = NewBcode(http.StatusNotFound, 50020, "Process not found") ErrProcessStartFailed = NewBcode(http.StatusInternalServerError, 50021, "Process failed to start") ErrProcessStopFailed = NewBcode(http.StatusInternalServerError, 50022, "Process failed to stop") ErrProcessTimeout = NewBcode(http.StatusRequestTimeout, 50023, "Process operation timed out") ErrProcessKillFailed = NewBcode(http.StatusInternalServerError, 50024, "Process failed to kill") // Configuration errors (50040-50059) ErrInvalidProcessConfig = NewBcode(http.StatusBadRequest, 50040, "Invalid process configuration") ErrMissingExecutable = NewBcode(http.StatusBadRequest, 50041, "Missing executable path") ErrUnsupportedPlatform = NewBcode(http.StatusBadRequest, 50042, "Unsupported platform") // Service manager errors (50060-50079) ErrServiceNotReady = NewBcode(http.StatusServiceUnavailable, 50060, "Service manager not ready") ErrNoEngineStarter = NewBcode(http.StatusInternalServerError, 50061, "No engine starter available") ErrNoEngineStopper = NewBcode(http.StatusInternalServerError, 50062, "No engine stopper available") ErrEngineNotAvailable = NewBcode(http.StatusServiceUnavailable, 50063, "Engine is not available") )
var ( RagSuccessCode = NewBcode(http.StatusOK, 60000, "rag service interface call success") ErrRagBadRequest = NewBcode(http.StatusBadRequest, 60001, " bad request") ErrRagFileSize = NewBcode(http.StatusBadRequest, 60002, "file size too large") ErrRagFileType = NewBcode(http.StatusBadRequest, 60003, "Unsupported file type") ErrRagServerError = NewBcode(http.StatusInternalServerError, 60004, "Internal server error") ErrRagFileStatus = NewBcode(http.StatusBadRequest, 60005, "File status is invalid") ErrRagSqliteVec = NewBcode(http.StatusBadRequest, 60006, "vec db status error") ErrRagEmbedding = NewBcode(http.StatusBadRequest, 60007, "embedding error") ErrRagRetrieval = NewBcode(http.StatusBadRequest, 60008, "retrieval error") ErrRagAOGBaseService = NewBcode(http.StatusBadRequest, 60009, "AOG service error") )
var ( // Plugin Framework Success PluginCode = NewBcode(http.StatusOK, 100000, "Plugin operation success") // Plugin Framework Errors (100001-100099) ErrPluginNotFound = NewBcode(http.StatusNotFound, 100001, "Plugin not found") ErrPluginLoadFailed = NewBcode(http.StatusInternalServerError, 100002, "Plugin load failed") ErrPluginNotRunning = NewBcode(http.StatusServiceUnavailable, 100003, "Plugin not running") ErrPluginInvalid = NewBcode(http.StatusBadRequest, 100004, "Plugin configuration invalid") ErrPluginTimeout = NewBcode(http.StatusRequestTimeout, 100005, "Plugin request timeout") ErrPluginDuplicateRegistration = NewBcode(http.StatusBadRequest, 100007, "Plugin duplicate registration") // Authentication Errors (100100-100199) - Remote Plugins ErrPluginAuthRequired = NewBcode(http.StatusUnauthorized, 100101, "Plugin authentication required") ErrPluginAuthFailed = NewBcode(http.StatusUnauthorized, 100102, "Plugin authentication failed") ErrPluginAuthExpired = NewBcode(http.StatusUnauthorized, 100103, "Plugin authentication expired") ErrPluginAuthInvalid = NewBcode(http.StatusUnauthorized, 100104, "Plugin authentication invalid") // Engine Errors (100200-100299) - Local Plugins ErrPluginEngineNotInstalled = NewBcode(http.StatusPreconditionFailed, 100201, "Engine not installed") ErrPluginEngineStartFailed = NewBcode(http.StatusInternalServerError, 100202, "Engine start failed") ErrPluginEngineStopFailed = NewBcode(http.StatusInternalServerError, 100203, "Engine stop failed") ErrPluginEngineNotHealthy = NewBcode(http.StatusServiceUnavailable, 100204, "Engine not healthy") ErrPluginEngineNotRunning = NewBcode(http.StatusServiceUnavailable, 100205, "Engine not running") ErrPluginEngineConfigError = NewBcode(http.StatusInternalServerError, 100206, "Engine configuration error") // Model Errors (100300-100399) - Local Plugins ErrPluginModelNotFound = NewBcode(http.StatusNotFound, 100301, "Model not found") ErrPluginModelNotLoaded = NewBcode(http.StatusPreconditionFailed, 100302, "Model not loaded") ErrPluginModelPullFailed = NewBcode(http.StatusBadGateway, 100303, "Model pull failed") ErrPluginModelDeleteFailed = NewBcode(http.StatusInternalServerError, 100304, "Model delete failed") ErrPluginModelLoadFailed = NewBcode(http.StatusInternalServerError, 100305, "Model load failed") ErrPluginModelUnloadFailed = NewBcode(http.StatusInternalServerError, 100306, "Model unload failed") // Service Invocation Errors (100400-100499) ErrPluginServiceError = NewBcode(http.StatusBadGateway, 100401, "Plugin service error") ErrPluginMethodNotFound = NewBcode(http.StatusNotImplemented, 100402, "Plugin method not implemented") ErrPluginBadRequest = NewBcode(http.StatusBadRequest, 100403, "Plugin bad request") ErrPluginInternalError = NewBcode(http.StatusInternalServerError, 100404, "Plugin internal error") )
var ConsoleCode = NewBcode(http.StatusOK, 90000, "control panel interface call success")
var ErrForbidden = NewBcode(HTTPStatusForbidden, HTTPStatusForbidden, "403 Forbidden")
ErrForbidden check user perms failure
var ErrNotFound = NewBcode(HTTPStatusNotFound, HTTPStatusNotFound, "404 Not Found")
ErrNotFound the request resource is not found
var ErrServer = NewBcode(HTTPStatusInternalServerError, HTTPStatusInternalServerError, "The service has lapsed.")
ErrServer an unexpected mistake.
ErrUnauthorized check user auth failure
var ErrUpstreamNotFound = NewBcode(HTTPStatusBadGateway, HTTPStatusBadGateway, "Upstream not found")
ErrUpstreamNotFound the proxy upstream is not found
var HealthCode = NewBcode(http.StatusOK, 80000, "health interface call success")
var PluginCodeToBcode = map[int32]*Bcode{ PluginCodeUnauthorized: ErrPluginAuthFailed, PluginCodeNotFound: ErrPluginModelNotFound, PluginCodePrecondFailed: ErrPluginEngineNotInstalled, PluginCodeBadRequest: ErrPluginBadRequest, PluginCodeTimeout: ErrPluginTimeout, PluginCodeNotImplemented: ErrPluginMethodNotFound, PluginCodeInternalError: ErrPluginInternalError, PluginCodeServiceUnavail: ErrPluginUnavailable, PluginCodeBadGateway: ErrPluginServiceError, }
PluginCodeToBcode maps plugin error codes to Bcode.
var SuccessCode = NewBcode(HTTPStatusOK, HTTPStatusOK, "success")
SuccessCode a success code
var VersionCode = NewBcode(http.StatusOK, 70000, "version interface call success")
Functions ¶
func LogAndReturnError ¶
LogAndReturnError logs the detailed error and returns it This is useful for server errors that should be logged but also returned to the client
func ReturnError ¶
ReturnError Unified handling of all types of errors, generating a standard return structure.
func ReturnHTTPError ¶
ReturnHTTPError Unified handling of all types of errors, generating a standard return structure.
Types ¶
type Bcode ¶
type Bcode struct {
HTTPCode int32 `json:"-"`
BusinessCode int32 `json:"business_code"`
Message string `json:"message"`
}
Bcode business error code
func ConvertPluginCodeToBcode ¶ added in v0.7.0
ConvertPluginCodeToBcode converts plugin error codes to Bcode.
func (*Bcode) SetMessage ¶
SetMessage set new message and return a new error instance