调用CreateIndex接口为指定Logstore创建索引。

请求语法

POST /logstores/<logstoreName>/index HTTP/1.1
Authorization: <AuthorizationString>
x-log-bodyrawsize: <x-log-bodyrawsize>
User-Agent: <User-Agent>
x-log-apiversion: <APIVersion>
Host: <Project Endpoint>
x-log-signaturemethod: hmac-sha1
Date: <GMT Date>
Content-Type: application/json
Content-MD5: <Content-MD5>
Content-Length: <Content-Length>
{
  "line": <full text index>,
  "keys": <key-value index>
}

请求参数

  • 请求头

    CreateIndex接口无特有请求头,关于Log Service API的公共请求头,请参见公共请求头

  • 参数列表
    属性名称 类型 是否必须 示例值 描述
    logstoreName string my-logstore Logstore的名称。
    keys object 字段索引配置,key为字段名称,value为字段索引配置。
    line object 全文索引配置。
    属性keys和line必须至少指定一个。全文索引配置包含如下属性:
    属性名称 类型 是否必须 示例值 描述
    caseSensitive bool true 是否大小写敏感。
    chn bool 是否包含中文。
    token array ["\n","\t","\r"] 分词符列表。可以设置一个分词参数,指定这个字段按照哪一种方式分词。更多分词符可参见示例。
    include_keys array 包含的字段列表,不能与exclude_keys同时指定。
    exclude_keys array 排除的字段列表,不能与include_keys同时指定。
    字段索引配置包含如下属性:
    属性名称 类型 是否必须 示例值 描述
    type string index 字段类型。
    alias string 字段别名。
    chn bool 是否包含中文,只有type为text时才有意义。
    token array 否,当type为text时必须 ["\n","\t","\r"] 分词符列表,只有type为text时才有意义。
    caseSensitive bool true 是否大小写敏感,只有type为text时有意义。
    doc_value bool true 该字段是否开启统计。

返回数据

  • 响应头

    CreateIndex接口无特有响应头,关于Log Service API的公共响应头,请参见公共响应头

  • 响应元素

    HTTP状态码返回200。

示例

  • 请求示例
    POST /logstores/my-logstore/index HTTP/1.1
    Authorization: LOG <yourAccessKeyId>:<yourSignature>
    x-log-bodyrawsize: 0
    User-Agent: sls-java-sdk-v-0.6.1
    x-log-apiversion: 0.6.0
    Host: my-project.cn-shanghai.log.aliyuncs.com
    x-log-signaturemethod: hmac-sha1
    Date: Mon, 07 May 2018 09:43:16 GMT
    Content-Type: application/json
    Content-MD5: 22876515FC311F857AD6C7902F6A0148
    Content-Length: 316
    Connection: Keep-Alive
    {
      "line": {
        "token": [
          ",",
          " ",
          "'",
          "\"",
          ";",
          "=",
          "(",
          ")",
          "[",
          "]",
          "{",
          "}",
          "?",
          "@",
          "&",
          "<",
          ">",
          "/",
          ":",
          "\n",
          "\t",
          "\r"
        ]
      },
      "keys": {
        "agent": {
          "doc_value": true,
          "caseSensitive": true,
          "alias": "agent_alias",
          "type": "text",
          "token": [
            ",",
            " ",
            "'",
            "\"",
            ";",
            "=",
            "(",
            ")",
            "[",
            "]",
            "{",
            "}",
            "?",
            "@",
            "&",
            "<",
            ">",
            "/",
            ":",
            "\n",
            "\t",
            "\r"
          ]
        }
      }
    }
  • 正常返回示例
    HTTP/1.1 200
    Server: nginx/1.12.1
    Content-Length: 0
    Connection: close
    Access-Control-Allow-Origin: *
    Date: Mon, 07 May 2018 09:47:21 GMT
    x-log-requestid: 5AF020A98CBAA2EF52AB66C9

错误码

HTTP状态码 错误码 错误信息 描述
400 IndexInfoInvalid required field token is lacking or of error format. 缺少必要的字段标记或缺少错误格式。
400 IndexAlreadyExist log store index is already created. 日志存储索引已经创建。
404 ProjectNotExist The Project does not exist : {Project}. 项目不存在。
404 LogStoreNotExist logstore {logstoreName} dose not exist. 日志库不存在。
500 InternalServerError Specified Server Error Message. 内部服务调用错误。

更多错误码,请参见通用错误码