本文介绍调用API接口发生错误时的通用错误码。

当API请求发生错误的时候,服务端会返回错误信息,包括HTTP的Status Code和响应Body中的具体错误细节。其中响应Body中的错误细节为如下格式:

{
"errorCode" : <ErrorCode>,
"errorMessage" : <ErrorMessage>
}

在服务端返回的错误信息中,适用于大部分API接口,但存在部分错误信息为某些API所独有的情况。下表描述API错误响应信息中的通用错误码,它们会在多个API错误响应信息中出现。每个API所独有的错误码会在对应API文件文档中单独描述。

表 1. 通用错误码
HTTP状态码(Status Code) 错误码(Error Code) 错误消息(Error Message) 描述(Description)
400 MissingContentType Content-Type does not exist in http header when body is not empty. 请求Body不为空时,缺少Content-Type。请您检查请求头,确认存在Content-Type。
400 MissingBodyRawSize x-log-bodyrawsize does not exist in header when it is necessary. 压缩场景下没有提供必须的x-log-bodyrawsize请求头。请您检查请求头,确认存在x-log-bodyrawsize。
400 InvalidBodyRawSize x-log-bodyrawsize is invalid. x-log-bodyrawsize的值无效。请您检查请求头,确认其取值为有效数字。
400 InvalidCompressType x-log-compresstype type is unsupported. 不支持x-log-compresstype指定的压缩方式。请您检查请求头,确认其值为lz4或Deflate。
400 MissingHost Host does not exist in http header. 请求头缺少Host。请您检查请求头,确认存在Host。
400 MissingDate Date does not exist in http header. 请求头缺少Date。请您检查请求头,确认存在Date。
400 InvalidDateFormat Date date must follow RFC822. 请求头中Date的值不符合RFC822标准。请您检查请求头,确认Date取值符合RFC822标准。
400 MissingAPIVersion x-log-apiversion does not exist in http header. 请求头缺少x-log-apiversion。请您检查请求头,确认存在x-log-apiversion。
400 InvalidAPIVersion x-log-apiversion version is unsupported. HTTP请求头x-log-apiversion的值不支持。请您检查请求头,确认支持API版本。
400 MissAccessKeyId x-log-accesskeyid does not exist in header. 没有在Authorization头部提供AccessKey ID。请检查请求头,确认Authorization头部存在AccessKey ID。
400 MissingSignatureMethod x-log-signaturemethod does not exist in http header. 没有提供HTTP请求头x-log-signaturemethod。请您检查请求头,确认存在x-log-signaturemethod。
400 InvalidSignatureMethod signature method method is unsupported. x-log-signaturemethod头部指定的签名方法不支持。请您检查请求头,确认支持的签名方法。
400 RequestTimeTooSkewed Request time exceeds server time more than 15 minutes. 请求的发送时间超过当前服务处理时间前后15分钟的范围。
401 SignatureNotMatch Signature signature is not matched. 请求的数字签名不匹配。请您重试或更换AccessKey后重试。
401 Unauthorized The AccessKeyId is unauthorized. 提供的AccessKey ID值未授权。请确认您的AccessKey ID有访问日志服务权限。
The security token you provided is invalid. STS Token不合法。请检查您的STS接口请求,确认STS Token是合法有效的。
The security token you provided has expired. STS Token已经过期。请重新申请STS Token后发起请求。
AccessKeyId not found: AccessKey ID AccessKey ID不存在。请检查您的AccessKey ID,重新获取后再发起请求。
AccessKeyId is disabled: AccessKey ID AccessKey ID是禁用状态。请检查您的AccessKey ID,确认为已启动状态后重新发起请求。
Your SLS service has been forbidden. 日志服务已经被禁用。请检查您的日志服务状态,例如是否已欠费。
401 InvalidAccessKeyId The access key id you provided is invalid: AccessKey ID. AccessKey ID不合法。请检查您的AccessKey ID,确认AccessKey ID是合法有效的。
Your SLS service has not opened. 日志服务没有开通。请登录日志服务控制台或者通过API开通日志服务后,重新发起请求。
403 WriteQuotaExceed Write quota is exceeded. 超过写入日志限额。请您优化写入日志请求,减少写入日志数量。
403 ReadQuotaExceed Read quota is exceeded. 超过读取日志限额。请您优化读取日志请求,减少读取日志数量。
404 ProjectNotExists The Project does not exist : name 日志项目(Project)不存在。请您检查Project名称,确认已存在该Project。
411 MissingContentLength Content-Length does not exist in http header when it is necessary. 请求头中缺少Content-Length。请您检查请求头,确认存在Content-Length。
415 InvalidContentType Content-Type type is unsupported. 不支持该类型的Content-Type。请您检查Content-Type定义是否正确。
500 InternalServerError Internal server error message. 服务器内部错误。请您稍后重试。
503 ServerBusy The server is busy, please try again later. 服务器正忙,请稍后再试。

错误消息中斜体部分为出错相关的具体信息。例如,ProjectNotExists的错误消息中name,表示错误消息中该部分会被具体的Project名称来替换。