
# 查询结构化模板 - ListStructTemplate
#### 功能介绍
查询结构化模板。通过该接口可查询自定义的结构化模板信息，帮助您进行结构化配置。
单个用户每秒最多可调用50次该接口。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-lts/lts_api_0003.html)。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-lts/lts_api_0046.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                                 | 访问级别 | 资源类型（\*为必须） | 条件键 | 别名             | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | lts:structConfig:listStructTemplate | List | -           | -   | lts:topics:get | -      |
     
  
 
#### URI
GET /v3/{project_id}/lts/struct/customtemplate
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释：** 项目ID，可以从调用API处获取，也可以从控制台获取。获取方式请参见：[获取项目ID](https://support.huaweicloud.com/api-lts/lts_api_0006.html)。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
表2Query参数 
| 参数 | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| id | 否    | String | **参数解释：** 待查询结构化模板ID。当参数为空时，返回项目下所有自定义结构化模板。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 从IAM服务获取的用户Token，获取方式请参见：[获取用户Token](https://support.huaweicloud.com/api-lts/lts_api_0004.html)。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
| Content-Type | 是    | String | **参数解释：** 用于定义消息体的格式，该字段填为：application/json;charset=utf8。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                  |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数      | 参数类型                                                                                      | 描述                                                              |
|:---|:---|:---|
| results | Array of [StructTemplateModel] objects | **参数解释：** 查询的自定义结构化模板的信息。 |
   
 表5StructTemplateModel 
| 参数            | 参数类型                                                                      | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|
| project_id    | String                                                                    | **参数解释：** 项目ID。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| template_name | String                                                                    | **参数解释：** 结构化模板名称。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| template_type | String                                                                    | **参数解释：** 结构化模板类型。 **取值范围：** - regex   - json   - split   - nginx   - built_in   - custom_regex   - regex_auto    |
| demo_log      | String                                                                    | **参数解释：** 示例日志。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| demo_fields   | Array of [DemoField] objects     | **参数解释：** 根据结构化配置对示例日志进行解析后生成的字段信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| tag_fields    | Array of [TagFieldNew] objects | **参数解释：** 根据日志的上报渠道生成的固有字段信息或用户手动配置的静态字段信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| rule          | [TemplateRule] object         | **参数解释：** 结构化方式。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| demo_label    | String                                                                    | **参数解释：** 示例日志和系统字段的完整JSON结构示例。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| create_time   | Long                                                                      | **参数解释：** 自定义结构化模板的创建时间。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| id            | String                                                                    | **参数解释：** 自定义结构化模板的唯一识别标识。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
   
 表6DemoField 
| 参数                | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|
| field_name        | String  | **参数解释：** 已提取的字段名称。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| content           | String  | **参数解释：** 已提取的字段示例内容。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| type              | String  | **参数解释：** 字段数据类型。 **取值范围：** - string   - long   - float    |
| is_analysis       | Boolean | **参数解释：** 是否开启快速分析。如果配置了索引配置，则以索引配置的快速分析开关为准。 **取值范围：** - true：开启快速分析。   - false：不开启快速分析。                                                                                                      |
| index             | Integer | **参数解释：** 正则分析以及分隔符方式中的字段序号。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| relation          | String  | **参数解释：** 描述多层级json中字段间的层级关系。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| user_defined_name | String  | **参数解释：** json及nginx方式中字段的自定义别名。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
   
 表7TagFieldNew 
| 参数          | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|
| field_name  | String  | **参数解释：** Tag字段名称。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| content     | String  | **参数解释：** Tag字段示例内容。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| type        | String  | **参数解释：** Tag字段类型。 **取值范围：** - string   - float   - long    |
| is_analysis | Boolean | **参数解释：** 是否开启快速分析。如果配置了索引配置，则以索引配置的快速分析开关为准。 **取值范围：** - true：开启快速分析。   - false：不开启快速分析。                                                                                                       |
| index       | Integer | **参数解释：** 字段序号。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
   
 表8TemplateRule 
| 参数    | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|
| type  | String | **参数解释：** 创建结构化模板的结构化方式。 **取值范围：** - regex   - json   - split   - nginx   - built_in   - custom_regex   - regex_auto    |
| param | String | **参数解释：** 结构化参数，不同结构化类型返回对应结构化类型需要的配置参数。例如：当type取值split时，param参数中会返回包含分隔符配置的json字符串，当type取值regex时，param参数中会返回配置的正则表达式。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   
**状态码：500**
表9响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                                                |
|:---|:---|:---|
| error_code | String | **参数解释：** 错误码，请参见：[错误码](https://support.huaweicloud.com/api-lts/ErrorCode.html)。 **取值范围：** 不涉及。 |
| error_msg  | String | **参数解释：** 调用失败响应信息描述。 **取值范围：** 不涉及。                                                            |
   
#### 请求示例
查询当前结构化模板详情。
```
GET https://{endpoint}/v3/{project_id}/lts/struct/customtemplate 
/v3/{project_id}/lts/struct/customtemplate
```
#### 响应示例
**状态码：200**
请求响应成功。
```
{
  "results" : [ {
    "create_time" : 1641258099551,
    "demo_fields" : [ {
      "content" : "2022-01-03/14:52:28",
      "field_name" : "field1",
      "index" : 0,
      "is_analysis" : true,
      "type" : "string"
    }, {
      "content" : "this",
      "field_name" : "field2",
      "index" : 1,
      "is_analysis" : true,
      "type" : "string"
    }, {
      "content" : "log",
      "field_name" : "field3",
      "index" : 2,
      "is_analysis" : false,
      "type" : "string"
    }, {
      "content" : "is",
      "field_name" : "field4",
      "index" : 3,
      "is_analysis" : false,
      "type" : "string"
    }, {
      "content" : "Error",
      "field_name" : "field5",
      "index" : 4,
      "is_analysis" : false,
      "type" : "string"
    }, {
      "content" : "NO",
      "field_name" : "field6",
      "index" : 5,
      "is_analysis" : false,
      "type" : "string"
    }, {
      "content" : "13测试",
      "field_name" : "field7",
      "index" : 6,
      "is_analysis" : false,
      "type" : "string"
    }, {
      "content" : "286",
      "field_name" : "field8",
      "index" : 7,
      "is_analysis" : false,
      "type" : "long"
    } ],
    "demo_log" : "2022-01-03/14:52:28 this log is Error NO 13测试 286",
    "id" : "43a8cc7b-b632-4c36-a65d-8150e98219f1",
    "project_id" : "2a473356cca5487f8373be89xxxxxxxx",
    "rule" : {
      "param" : "{\"keyObject\":{\"0\":\"field1\",\"1\":\"field2\",\"2\":\"field3\",\"3\":\"field4\",\"4\":\"field5\",\"5\":\"field6\",\"6\":\"field7\",\"7\":\"field8\"},\"tokenizer\":\" \"}",
      "type" : "split"
    },
    "demo_label" : "{}",
    "tag_fields" : [ {
      "content" : "172.16.10.69",
      "field_name" : "hostIP",
      "index" : 0,
      "is_analysis" : true,
      "type" : "string"
    } ],
    "template_name" : "testSplit13",
    "template_type" : "split"
  } ]
}
```
**状态码：500**
表明服务端能被请求访问到，但是服务内部出错。
```
{
  "error_code" : "LTS.2017",
  "error_msg" : "Find struct template failed."
}
```
#### 状态码
| 状态码 | 描述                     |
|:---|:---|
| 200 | 请求响应成功。                |
| 500 | 表明服务端能被请求访问到，但是服务内部出错。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-lts/ErrorCode.html)。
