查询日志
功能介绍
查询指定日志流下的日志内容。
调用方法
请参见如何调用API。
URI
POST /v2/{project_id}/groups/{log_group_id}/streams/{log_stream_id}/content/query
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
参数解释: 项目ID,可以从调用API处获取,也可以从控制台获取。获取方式请参见:获取项目ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
log_group_id |
是 |
String |
参数解释: 日志组ID,获取方式请参见:获取日志组ID和日志流ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
log_stream_id |
是 |
String |
参数解释: 日志流ID,获取方式请参见:获取日志组ID和日志流ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
参数解释: 从IAM服务获取的用户Token,获取方式请参见:获取用户Token。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
Content-Type |
是 |
String |
参数解释: 用于定义消息体的格式,该字段填为:application/json;charset=utf8。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
start_time |
是 |
String |
参数解释: 按照时间范围搜索日志的起始时间。日志时间为日志数据写入时的时间。 参数start_time和end_time组成的时间区间,既包含起始时间也包含结束时间。 约束限制:
取值范围: 毫秒级时间戳,表示从1970-1-1 00:00:00 UTC开始计算的毫秒数。 默认取值: 不涉及。 |
end_time |
是 |
String |
参数解释: 按照时间范围搜索日志的结束时间。日志时间为日志数据写入时的时间。 参数start_time和end_time组成的时间区间,既包含起始时间也包含结束时间。 约束限制:
取值范围: 毫秒级时间戳,表示从1970-1-1 00:00:00 UTC开始计算的毫秒数。 默认取值: 不涉及。 |
labels |
否 |
Map<String,String> |
参数解释: 指定字段名称和字段值(key:value)的过滤条件集合进行搜索。 约束限制: 可以使用内置保留字段,如果想要配置更多字段,需要调用创建日志流索引接口配置字段索引。 |
keywords |
否 |
String |
参数解释: 支持关键词精确搜索。关键词指相邻两个分词符之间的单词。例如:error。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
line_num |
否 |
String |
参数解释: 日志单行序列号,标识日志上报顺序,通常用于分页查询和日志数据的有序处理。 首次查询:由于首次默认从日志的起始位置开始查询。因此无需提供该参数。 后续分页查询:需要使用该参数,用于从上次查询结束的问题继续查询。该参数从上次查询的返回结果中获取。 约束限制:
取值范围: 纳秒级时间戳,表示从1970-1-1 00:00:00 UTC开始计算的纳秒数。 默认取值: 不涉及。 |
__time__ |
否 |
String |
参数解释: 若已开启云端结构化自定义时间功能,需要使用该字段和line_num字段共同进行分页查询,该参数从上次查询的返回结果中获取。 约束限制: 不涉及。 取值范围: 毫秒级时间戳,表示从1970-1-1 00:00:00 UTC开始计算的毫秒数。 默认取值: 不涉及。 |
is_desc |
否 |
Boolean |
参数解释: 表示日志查询的顺序,当前支持顺序(false)或倒序查询(true)。 约束限制: 不涉及。 取值范围:
默认取值: false |
search_type |
否 |
String |
参数解释: 查询类型。search_type与is_desc参数配合使用进行分页查询,确定分页查询的方向(升序或降序)。 约束限制: 不涉及。 取值范围:
默认取值: init:首次查询。 |
limit |
否 |
Integer |
参数解释: 每次查询的日志条数,建议您设置为100。 约束限制: 不涉及。 取值范围:
默认取值: 50 |
highlight |
否 |
Boolean |
参数解释: 在查询结果中日志关键词是否高亮显示。 约束限制: 不涉及。 取值范围:
默认取值: true |
is_count |
否 |
Boolean |
参数解释: 在查询结果中是否统计日志条数。 约束限制: 不涉及。 取值范围:
默认取值: false |
is_iterative |
否 |
Boolean |
参数解释: 是否开启日志迭代查询功能。 约束限制: 不涉及。 取值范围:
默认取值: false |
query |
否 |
String |
参数解释: 管道符查询与分析语句。例如:num:60* | select count(*) as error_count where "request_ time" >=60 and "request_time" < 200,更多语法信息,请参考SQL函数。 约束限制: 当is_analysis_query参数为true时,该参数生效。 取值范围: 不涉及。 默认取值: 不涉及。 |
is_analysis_query |
否 |
Boolean |
参数解释: 是否开启管道符语句查询。 管道符语句查询功能:将会按照body体中的query参数内容进行查询;请求体中除了start_time与end_time以外的其他参数将全部失效;分页、排序、查询结果条数等功能,需要通过SQL语法规则实现。查询结果的响应体格式将不同于未启用SQL查询时的格式,将以默认列存储的形式返回查询结果。例如: {"analysisLogs":[{"field1":"1","field2":"2","field3":"3"},{"field1":"1","field2":"2","field3":"3"},{"field1":"1","field2":"2","field3":"3"}]} 约束限制: 此功能当前仅对内测用户开放,非白名单用户默认为false。 取值范围:
默认取值: false |
响应参数
状态码:200
参数 |
参数类型 |
描述 |
---|---|---|
logs |
Array of LogContents objects |
参数解释: 日志信息。 |
count |
Integer |
参数解释: 日志条数。 取值范围: 不涉及。 |
isQueryComplete |
Boolean |
参数解释: 是否查询完成。 取值范围: true:查询完成。 false:未查询完成。 |
analysisLogs |
Array of objects |
参数解释: 分析日志返回响应体。 |
参数 |
参数类型 |
描述 |
---|---|---|
content |
String |
参数解释: 日志原数据。 取值范围: 不涉及。 |
line_num |
String |
参数解释: 日志单行序列号。 取值范围: 不涉及。 |
labels |
Map<String,String> |
参数解释: 该条日志包含的labels,查询到的日志不同所包含的字段不同。 |
状态码:400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
参数解释: 错误码,请参见:错误码。 取值范围: 不涉及。 |
error_msg |
String |
参数解释: 调用失败响应信息描述。 取值范围: 不涉及。 |
状态码:401
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
参数解释: 错误码,请参见:错误码。 取值范围: 不涉及。 |
error_msg |
String |
参数解释: 调用失败响应信息描述。 取值范围: 不涉及。 |
状态码:403
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
参数解释: 错误码,请参见:错误码。 取值范围: 不涉及。 |
error_msg |
String |
参数解释: 调用失败响应信息描述。 取值范围: 不涉及。 |
状态码:500
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
参数解释: 错误码,请参见:错误码。 取值范围: 不涉及。 |
error_msg |
String |
参数解释: 调用失败响应信息描述。 取值范围: 不涉及。 |
请求示例
-
首次查询日志。
POST https://{endpoint}/v2/{project_id}/groups/{log_group_id}/streams/{log_stream_id}/content/query { "start_time" : 1595659200000, "end_time" : 1595659500000, "labels" : { "hostName" : "ecs-kwxtest" }, "keywords" : "log", "limit" : 10, "is_count" : true }
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 6”、“NO 7”、“NO 8”。
https://{endpoint}/ v2/{project_id}/groups/{log_group_id}/streams/{log_stream_id}/content/query { "start_time" : 1595659200000, "end_time" : 1595659500000, "labels" : { "hostName" : "ecs-kwxtest" }, "keywords" : "log", "line_num" : "1595659490239433658", "is_desc" : "false", "search_type" : "forwards", "limit" : "3", "is_count" : true }
-
分页查询,以包含“NO 5”的日志为起始点, 查询“NO 8”、“NO 7”、“NO 6”。
https://{endpoint}/ v2/{project_id}/groups/{log_group_id}/streams/{log_stream_id}/content/query { "start_time" : 1595659200000, "end_time" : 1595659500000, "labels" : { "hostName" : "ecs-kwxtest" }, "keywords" : "log", "line_num" : "1595659490239433658", "is_desc" : "true", "search_type" : "forwards", "limit" : "3", "is_count" : true }
-
分页查询,以包含“NO 5”的日志为起始点,查询“NO 2”、“NO 3”、“NO 4”。
https://{endpoint}/ v2/{project_id}/groups/{log_group_id}/streams/{log_stream_id}/content/query { "start_time" : 1595659200000, "end_time" : 1595659500000, "labels" : { "hostName" : "ecs-kwxtest" }, "keywords" : "log", "line_num" : "1595659490239433658", "is_desc" : "false", "search_type" : "backwards", "limit" : "3", "is_count" : true }
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 4”、“NO 3”、“NO 2”。
https://{endpoint}/ v2/{project_id}/groups/{log_group_id}/streams/{log_stream_id}/content/query { "start_time" : 1595659200000, "end_time" : 1595659500000, "labels" : { "hostName" : "ecs-kwxtest" }, "keywords" : "log", "line_num" : "1595659490239433658", "is_desc" : "true", "search_type" : "backwards", "limit" : "3", "is_count" : true }
-
分析语句查询示例。
https://{endpoint}/v2/{project_id}/groups/{log_group_id}/streams/{log_stream_id}/content/query { "start_time" : 1722324332801, "end_time" : 1722327932801, "query" : "* | select field1,field2 from log", "is_analysis_query" : true }
响应示例
状态码:200
请求响应成功。
-
首次查询日志
{ "count" : 32, "logs" : [ { "content" : "2020-07-25/14:44:42 this <HighLightTag>log</HighLightTag> is Error NO 1", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433654" }, { "content" : "2020-07-25/14:44:43 this <HighLightTag>log</HighLightTag> is Error NO 2", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433655" }, { "content" : "2020-07-25/14:44:44 this <HighLightTag>log</HighLightTag> is Error NO 3", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433656" }, { "content" : "2020-07-25/14:44:45 this <HighLightTag>log</HighLightTag> is Error NO 4", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433657" }, { "content" : "2020-07-25/14:44:46 this <HighLightTag>log</HighLightTag> is Error NO 5", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433658" }, { "content" : "2020-07-25/14:44:47 this <HighLightTag>log</HighLightTag> is Error NO 6", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433659" }, { "content" : "2020-07-25/14:44:48 this <HighLightTag>log</HighLightTag> is Error NO 7", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433660" }, { "content" : "2020-07-25/14:44:49 this <HighLightTag>log</HighLightTag> is Error NO 8", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433661" }, { "content" : "2020-07-25/14:44:50 this <HighLightTag>log</HighLightTag> is Error NO 9", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490839420574" }, { "content" : "2020-07-25/14:44:51 this <HighLightTag>log</HighLightTag> is Error NO 10", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659491839412667" } ] }
-
分页查询, 以包含“NO 5”的日志为起始点, 查询 “NO 6”、“NO 7”、“NO 8”
{ "count" : 32, "logs" : [ { "content" : "2020-07-25/14:44:47 this <HighLightTag>log</HighLightTag> is Error NO 6", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433659" }, { "content" : "2020-07-25/14:44:48 this <HighLightTag>log</HighLightTag> is Error NO 7", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433660" }, { "content" : "2020-07-25/14:44:49 this <HighLightTag>log</HighLightTag> is Error NO 8", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433661" } ] }
-
分页查询, 以包含“NO 5”的日志为起始点, 查询 “NO 8”、“NO 7”、“NO 6”
{ "count" : 32, "logs" : [ { "content" : "2020-07-25/14:44:49 this <HighLightTag>log</HighLightTag> is Error NO 8", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433661" }, { "content" : "2020-07-25/14:44:48 this <HighLightTag>log</HighLightTag> is Error NO 7", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433660" }, { "content" : "2020-07-25/14:44:47 this <HighLightTag>log</HighLightTag> is Error NO 6", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433659" } ] }
-
分页查询, 以包含“NO 5”的日志为起始点,查询“NO 2”、“NO 3”、“NO 4”
{ "count" : 32, "logs" : [ { "content" : "2020-07-25/14:44:43 this <HighLightTag>log</HighLightTag> is Error NO 2", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433655" }, { "content" : "2020-07-25/14:44:44 this <HighLightTag>log</HighLightTag> is Error NO 3", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433656" }, { "content" : "2020-07-25/14:44:45 this <HighLightTag>log</HighLightTag> is Error NO 4", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433657" } ] }
-
分页查询, 以包含“NO 5”的日志为起始点, 查询 “NO 4”、“NO 3”、“NO 2”
{ "count" : 32, "logs" : [ { "content" : "2020-07-25/14:44:45 this <HighLightTag>log</HighLightTag> is Error NO 4", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433657" }, { "content" : "2020-07-25/14:44:44 this <HighLightTag>log</HighLightTag> is Error NO 3", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433656" }, { "content" : "2020-07-25/14:44:43 this <HighLightTag>log</HighLightTag> is Error NO 2", "labels" : { "hostName" : "ecs-kwxtest", "hostIP" : "192.168.0.156", "appName" : "default_appname", "containerName" : "CONFIG_FILE", "clusterName" : "CONFIG_FILE", "hostId" : "9787ef31-fd7b-4eff-ba71-72d580f11f55", "podName" : "default_procname", "clusterId" : "CONFIG_FILE", "nameSpace" : "CONFIG_FILE", "category" : "LTS" }, "line_num" : "1595659490239433655" } ] }
状态码:400
非法请求或查询语句错误。 建议根据error_msg直接修改该请求,不要重试该请求。
{
"error_code" : "LTS.0009",
"error_msg" : "Failed to validate the request body"
}
状态码:401
鉴权失败,请确认token后再次请求 。
{
"error_code" : "LTS.0003",
"error_msg" : "Invalid token"
}
状态码:403
请求被拒绝访问。 返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。
{
"error_code" : "LTS.0001",
"error_msg" : "Invalid projectId"
}
状态码:500
表明服务端能被请求访问到,但是服务内部出错。
{
"error_code" : "LTS.0202",
"error_msg" : "Failed to query lts log"
}
SDK代码示例
SDK代码示例如下。
-
首次查询日志。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; import java.util.Map; import java.util.HashMap; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); Map<String, String> listbodyLabels = new HashMap<>(); listbodyLabels.put("hostName", "ecs-kwxtest"); body.withLimit(10); body.withKeywords("log"); body.withIsCount(true); body.withLabels(listbodyLabels); body.withEndTime("1595659500000"); body.withStartTime("1595659200000"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 6”、“NO 7”、“NO 8”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; import java.util.Map; import java.util.HashMap; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); Map<String, String> listbodyLabels = new HashMap<>(); listbodyLabels.put("hostName", "ecs-kwxtest"); body.withLimit(3); body.withSearchType(QueryLtsLogParams.SearchTypeEnum.fromValue("forwards")); body.withIsDesc(false); body.withLineNum("1595659490239433658"); body.withKeywords("log"); body.withIsCount(true); body.withLabels(listbodyLabels); body.withEndTime("1595659500000"); body.withStartTime("1595659200000"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询“NO 8”、“NO 7”、“NO 6”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; import java.util.Map; import java.util.HashMap; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); Map<String, String> listbodyLabels = new HashMap<>(); listbodyLabels.put("hostName", "ecs-kwxtest"); body.withLimit(3); body.withSearchType(QueryLtsLogParams.SearchTypeEnum.fromValue("forwards")); body.withIsDesc(true); body.withLineNum("1595659490239433658"); body.withKeywords("log"); body.withIsCount(true); body.withLabels(listbodyLabels); body.withEndTime("1595659500000"); body.withStartTime("1595659200000"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
分页查询,以包含“NO 5”的日志为起始点,查询“NO 2”、“NO 3”、“NO 4”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; import java.util.Map; import java.util.HashMap; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); Map<String, String> listbodyLabels = new HashMap<>(); listbodyLabels.put("hostName", "ecs-kwxtest"); body.withLimit(3); body.withSearchType(QueryLtsLogParams.SearchTypeEnum.fromValue("backwards")); body.withIsDesc(false); body.withLineNum("1595659490239433658"); body.withKeywords("log"); body.withIsCount(true); body.withLabels(listbodyLabels); body.withEndTime("1595659500000"); body.withStartTime("1595659200000"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 4”、“NO 3”、“NO 2”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; import java.util.Map; import java.util.HashMap; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); Map<String, String> listbodyLabels = new HashMap<>(); listbodyLabels.put("hostName", "ecs-kwxtest"); body.withLimit(3); body.withSearchType(QueryLtsLogParams.SearchTypeEnum.fromValue("backwards")); body.withIsDesc(true); body.withLineNum("1595659490239433658"); body.withKeywords("log"); body.withIsCount(true); body.withLabels(listbodyLabels); body.withEndTime("1595659500000"); body.withStartTime("1595659200000"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
分析语句查询示例。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); body.withIsAnalysisQuery(true); body.withQuery("* | select field1,field2 from log"); body.withEndTime("1722327932801"); body.withStartTime("1722324332801"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
首次查询日志。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" listLabelsbody = { "hostName": "ecs-kwxtest" } request.body = QueryLtsLogParams( limit=10, keywords="log", is_count=True, labels=listLabelsbody, end_time="1595659500000", start_time="1595659200000" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 6”、“NO 7”、“NO 8”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" listLabelsbody = { "hostName": "ecs-kwxtest" } request.body = QueryLtsLogParams( limit=3, search_type="forwards", is_desc=False, line_num="1595659490239433658", keywords="log", is_count=True, labels=listLabelsbody, end_time="1595659500000", start_time="1595659200000" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
分页查询,以包含“NO 5”的日志为起始点, 查询“NO 8”、“NO 7”、“NO 6”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" listLabelsbody = { "hostName": "ecs-kwxtest" } request.body = QueryLtsLogParams( limit=3, search_type="forwards", is_desc=True, line_num="1595659490239433658", keywords="log", is_count=True, labels=listLabelsbody, end_time="1595659500000", start_time="1595659200000" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
分页查询,以包含“NO 5”的日志为起始点,查询“NO 2”、“NO 3”、“NO 4”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" listLabelsbody = { "hostName": "ecs-kwxtest" } request.body = QueryLtsLogParams( limit=3, search_type="backwards", is_desc=False, line_num="1595659490239433658", keywords="log", is_count=True, labels=listLabelsbody, end_time="1595659500000", start_time="1595659200000" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 4”、“NO 3”、“NO 2”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" listLabelsbody = { "hostName": "ecs-kwxtest" } request.body = QueryLtsLogParams( limit=3, search_type="backwards", is_desc=True, line_num="1595659490239433658", keywords="log", is_count=True, labels=listLabelsbody, end_time="1595659500000", start_time="1595659200000" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
分析语句查询示例。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" request.body = QueryLtsLogParams( is_analysis_query=True, query="* | select field1,field2 from log", end_time="1722327932801", start_time="1722324332801" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
首次查询日志。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" var listLabelsbody = map[string]string{ "hostName": "ecs-kwxtest", } limitQueryLtsLogParams:= int32(10) keywordsQueryLtsLogParams:= "log" isCountQueryLtsLogParams:= true request.Body = &model.QueryLtsLogParams{ Limit: &limitQueryLtsLogParams, Keywords: &keywordsQueryLtsLogParams, IsCount: &isCountQueryLtsLogParams, Labels: listLabelsbody, EndTime: "1595659500000", StartTime: "1595659200000", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 6”、“NO 7”、“NO 8”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" var listLabelsbody = map[string]string{ "hostName": "ecs-kwxtest", } limitQueryLtsLogParams:= int32(3) searchTypeQueryLtsLogParams:= model.GetQueryLtsLogParamsSearchTypeEnum().FORWARDS isDescQueryLtsLogParams:= false lineNumQueryLtsLogParams:= "1595659490239433658" keywordsQueryLtsLogParams:= "log" isCountQueryLtsLogParams:= true request.Body = &model.QueryLtsLogParams{ Limit: &limitQueryLtsLogParams, SearchType: &searchTypeQueryLtsLogParams, IsDesc: &isDescQueryLtsLogParams, LineNum: &lineNumQueryLtsLogParams, Keywords: &keywordsQueryLtsLogParams, IsCount: &isCountQueryLtsLogParams, Labels: listLabelsbody, EndTime: "1595659500000", StartTime: "1595659200000", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询“NO 8”、“NO 7”、“NO 6”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" var listLabelsbody = map[string]string{ "hostName": "ecs-kwxtest", } limitQueryLtsLogParams:= int32(3) searchTypeQueryLtsLogParams:= model.GetQueryLtsLogParamsSearchTypeEnum().FORWARDS isDescQueryLtsLogParams:= true lineNumQueryLtsLogParams:= "1595659490239433658" keywordsQueryLtsLogParams:= "log" isCountQueryLtsLogParams:= true request.Body = &model.QueryLtsLogParams{ Limit: &limitQueryLtsLogParams, SearchType: &searchTypeQueryLtsLogParams, IsDesc: &isDescQueryLtsLogParams, LineNum: &lineNumQueryLtsLogParams, Keywords: &keywordsQueryLtsLogParams, IsCount: &isCountQueryLtsLogParams, Labels: listLabelsbody, EndTime: "1595659500000", StartTime: "1595659200000", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
-
分页查询,以包含“NO 5”的日志为起始点,查询“NO 2”、“NO 3”、“NO 4”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" var listLabelsbody = map[string]string{ "hostName": "ecs-kwxtest", } limitQueryLtsLogParams:= int32(3) searchTypeQueryLtsLogParams:= model.GetQueryLtsLogParamsSearchTypeEnum().BACKWARDS isDescQueryLtsLogParams:= false lineNumQueryLtsLogParams:= "1595659490239433658" keywordsQueryLtsLogParams:= "log" isCountQueryLtsLogParams:= true request.Body = &model.QueryLtsLogParams{ Limit: &limitQueryLtsLogParams, SearchType: &searchTypeQueryLtsLogParams, IsDesc: &isDescQueryLtsLogParams, LineNum: &lineNumQueryLtsLogParams, Keywords: &keywordsQueryLtsLogParams, IsCount: &isCountQueryLtsLogParams, Labels: listLabelsbody, EndTime: "1595659500000", StartTime: "1595659200000", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 4”、“NO 3”、“NO 2”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" var listLabelsbody = map[string]string{ "hostName": "ecs-kwxtest", } limitQueryLtsLogParams:= int32(3) searchTypeQueryLtsLogParams:= model.GetQueryLtsLogParamsSearchTypeEnum().BACKWARDS isDescQueryLtsLogParams:= true lineNumQueryLtsLogParams:= "1595659490239433658" keywordsQueryLtsLogParams:= "log" isCountQueryLtsLogParams:= true request.Body = &model.QueryLtsLogParams{ Limit: &limitQueryLtsLogParams, SearchType: &searchTypeQueryLtsLogParams, IsDesc: &isDescQueryLtsLogParams, LineNum: &lineNumQueryLtsLogParams, Keywords: &keywordsQueryLtsLogParams, IsCount: &isCountQueryLtsLogParams, Labels: listLabelsbody, EndTime: "1595659500000", StartTime: "1595659200000", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
-
分析语句查询示例。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" isAnalysisQueryQueryLtsLogParams:= true queryQueryLtsLogParams:= "* | select field1,field2 from log" request.Body = &model.QueryLtsLogParams{ IsAnalysisQuery: &isAnalysisQueryQueryLtsLogParams, Query: &queryQueryLtsLogParams, EndTime: "1722327932801", StartTime: "1722324332801", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
-
首次查询日志。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; import java.util.Map; import java.util.HashMap; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); Map<String, String> listbodyLabels = new HashMap<>(); listbodyLabels.put("hostName", "ecs-kwxtest"); body.withLimit(10); body.withKeywords("log"); body.withIsCount(true); body.withLabels(listbodyLabels); body.withEndTime("1595659500000"); body.withStartTime("1595659200000"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 6”、“NO 7”、“NO 8”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; import java.util.Map; import java.util.HashMap; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); Map<String, String> listbodyLabels = new HashMap<>(); listbodyLabels.put("hostName", "ecs-kwxtest"); body.withLimit(3); body.withSearchType(QueryLtsLogParams.SearchTypeEnum.fromValue("forwards")); body.withIsDesc(false); body.withLineNum("1595659490239433658"); body.withKeywords("log"); body.withIsCount(true); body.withLabels(listbodyLabels); body.withEndTime("1595659500000"); body.withStartTime("1595659200000"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询“NO 8”、“NO 7”、“NO 6”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; import java.util.Map; import java.util.HashMap; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); Map<String, String> listbodyLabels = new HashMap<>(); listbodyLabels.put("hostName", "ecs-kwxtest"); body.withLimit(3); body.withSearchType(QueryLtsLogParams.SearchTypeEnum.fromValue("forwards")); body.withIsDesc(true); body.withLineNum("1595659490239433658"); body.withKeywords("log"); body.withIsCount(true); body.withLabels(listbodyLabels); body.withEndTime("1595659500000"); body.withStartTime("1595659200000"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
分页查询,以包含“NO 5”的日志为起始点,查询“NO 2”、“NO 3”、“NO 4”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; import java.util.Map; import java.util.HashMap; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); Map<String, String> listbodyLabels = new HashMap<>(); listbodyLabels.put("hostName", "ecs-kwxtest"); body.withLimit(3); body.withSearchType(QueryLtsLogParams.SearchTypeEnum.fromValue("backwards")); body.withIsDesc(false); body.withLineNum("1595659490239433658"); body.withKeywords("log"); body.withIsCount(true); body.withLabels(listbodyLabels); body.withEndTime("1595659500000"); body.withStartTime("1595659200000"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 4”、“NO 3”、“NO 2”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; import java.util.Map; import java.util.HashMap; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); Map<String, String> listbodyLabels = new HashMap<>(); listbodyLabels.put("hostName", "ecs-kwxtest"); body.withLimit(3); body.withSearchType(QueryLtsLogParams.SearchTypeEnum.fromValue("backwards")); body.withIsDesc(true); body.withLineNum("1595659490239433658"); body.withKeywords("log"); body.withIsCount(true); body.withLabels(listbodyLabels); body.withEndTime("1595659500000"); body.withStartTime("1595659200000"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
分析语句查询示例。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.lts.v2.region.LtsRegion; import com.huaweicloud.sdk.lts.v2.*; import com.huaweicloud.sdk.lts.v2.model.*; public class ListLogsSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); LtsClient client = LtsClient.newBuilder() .withCredential(auth) .withRegion(LtsRegion.valueOf("<YOUR REGION>")) .build(); ListLogsRequest request = new ListLogsRequest(); request.withLogGroupId("{log_group_id}"); request.withLogStreamId("{log_stream_id}"); QueryLtsLogParams body = new QueryLtsLogParams(); body.withIsAnalysisQuery(true); body.withQuery("* | select field1,field2 from log"); body.withEndTime("1722327932801"); body.withStartTime("1722324332801"); request.withBody(body); try { ListLogsResponse response = client.listLogs(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
-
首次查询日志。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" listLabelsbody = { "hostName": "ecs-kwxtest" } request.body = QueryLtsLogParams( limit=10, keywords="log", is_count=True, labels=listLabelsbody, end_time="1595659500000", start_time="1595659200000" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 6”、“NO 7”、“NO 8”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" listLabelsbody = { "hostName": "ecs-kwxtest" } request.body = QueryLtsLogParams( limit=3, search_type="forwards", is_desc=False, line_num="1595659490239433658", keywords="log", is_count=True, labels=listLabelsbody, end_time="1595659500000", start_time="1595659200000" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
分页查询,以包含“NO 5”的日志为起始点, 查询“NO 8”、“NO 7”、“NO 6”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" listLabelsbody = { "hostName": "ecs-kwxtest" } request.body = QueryLtsLogParams( limit=3, search_type="forwards", is_desc=True, line_num="1595659490239433658", keywords="log", is_count=True, labels=listLabelsbody, end_time="1595659500000", start_time="1595659200000" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
分页查询,以包含“NO 5”的日志为起始点,查询“NO 2”、“NO 3”、“NO 4”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" listLabelsbody = { "hostName": "ecs-kwxtest" } request.body = QueryLtsLogParams( limit=3, search_type="backwards", is_desc=False, line_num="1595659490239433658", keywords="log", is_count=True, labels=listLabelsbody, end_time="1595659500000", start_time="1595659200000" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 4”、“NO 3”、“NO 2”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" listLabelsbody = { "hostName": "ecs-kwxtest" } request.body = QueryLtsLogParams( limit=3, search_type="backwards", is_desc=True, line_num="1595659490239433658", keywords="log", is_count=True, labels=listLabelsbody, end_time="1595659500000", start_time="1595659200000" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
分析语句查询示例。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdklts.v2.region.lts_region import LtsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdklts.v2 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = LtsClient.new_builder() \ .with_credentials(credentials) \ .with_region(LtsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListLogsRequest() request.log_group_id = "{log_group_id}" request.log_stream_id = "{log_stream_id}" request.body = QueryLtsLogParams( is_analysis_query=True, query="* | select field1,field2 from log", end_time="1722327932801", start_time="1722324332801" ) response = client.list_logs(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
-
首次查询日志。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" var listLabelsbody = map[string]string{ "hostName": "ecs-kwxtest", } limitQueryLtsLogParams:= int32(10) keywordsQueryLtsLogParams:= "log" isCountQueryLtsLogParams:= true request.Body = &model.QueryLtsLogParams{ Limit: &limitQueryLtsLogParams, Keywords: &keywordsQueryLtsLogParams, IsCount: &isCountQueryLtsLogParams, Labels: listLabelsbody, EndTime: "1595659500000", StartTime: "1595659200000", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 6”、“NO 7”、“NO 8”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" var listLabelsbody = map[string]string{ "hostName": "ecs-kwxtest", } limitQueryLtsLogParams:= int32(3) searchTypeQueryLtsLogParams:= model.GetQueryLtsLogParamsSearchTypeEnum().FORWARDS isDescQueryLtsLogParams:= false lineNumQueryLtsLogParams:= "1595659490239433658" keywordsQueryLtsLogParams:= "log" isCountQueryLtsLogParams:= true request.Body = &model.QueryLtsLogParams{ Limit: &limitQueryLtsLogParams, SearchType: &searchTypeQueryLtsLogParams, IsDesc: &isDescQueryLtsLogParams, LineNum: &lineNumQueryLtsLogParams, Keywords: &keywordsQueryLtsLogParams, IsCount: &isCountQueryLtsLogParams, Labels: listLabelsbody, EndTime: "1595659500000", StartTime: "1595659200000", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询“NO 8”、“NO 7”、“NO 6”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" var listLabelsbody = map[string]string{ "hostName": "ecs-kwxtest", } limitQueryLtsLogParams:= int32(3) searchTypeQueryLtsLogParams:= model.GetQueryLtsLogParamsSearchTypeEnum().FORWARDS isDescQueryLtsLogParams:= true lineNumQueryLtsLogParams:= "1595659490239433658" keywordsQueryLtsLogParams:= "log" isCountQueryLtsLogParams:= true request.Body = &model.QueryLtsLogParams{ Limit: &limitQueryLtsLogParams, SearchType: &searchTypeQueryLtsLogParams, IsDesc: &isDescQueryLtsLogParams, LineNum: &lineNumQueryLtsLogParams, Keywords: &keywordsQueryLtsLogParams, IsCount: &isCountQueryLtsLogParams, Labels: listLabelsbody, EndTime: "1595659500000", StartTime: "1595659200000", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
-
分页查询,以包含“NO 5”的日志为起始点,查询“NO 2”、“NO 3”、“NO 4”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" var listLabelsbody = map[string]string{ "hostName": "ecs-kwxtest", } limitQueryLtsLogParams:= int32(3) searchTypeQueryLtsLogParams:= model.GetQueryLtsLogParamsSearchTypeEnum().BACKWARDS isDescQueryLtsLogParams:= false lineNumQueryLtsLogParams:= "1595659490239433658" keywordsQueryLtsLogParams:= "log" isCountQueryLtsLogParams:= true request.Body = &model.QueryLtsLogParams{ Limit: &limitQueryLtsLogParams, SearchType: &searchTypeQueryLtsLogParams, IsDesc: &isDescQueryLtsLogParams, LineNum: &lineNumQueryLtsLogParams, Keywords: &keywordsQueryLtsLogParams, IsCount: &isCountQueryLtsLogParams, Labels: listLabelsbody, EndTime: "1595659500000", StartTime: "1595659200000", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
-
分页查询,以包含“NO 5”的日志为起始点, 查询 “NO 4”、“NO 3”、“NO 2”。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" var listLabelsbody = map[string]string{ "hostName": "ecs-kwxtest", } limitQueryLtsLogParams:= int32(3) searchTypeQueryLtsLogParams:= model.GetQueryLtsLogParamsSearchTypeEnum().BACKWARDS isDescQueryLtsLogParams:= true lineNumQueryLtsLogParams:= "1595659490239433658" keywordsQueryLtsLogParams:= "log" isCountQueryLtsLogParams:= true request.Body = &model.QueryLtsLogParams{ Limit: &limitQueryLtsLogParams, SearchType: &searchTypeQueryLtsLogParams, IsDesc: &isDescQueryLtsLogParams, LineNum: &lineNumQueryLtsLogParams, Keywords: &keywordsQueryLtsLogParams, IsCount: &isCountQueryLtsLogParams, Labels: listLabelsbody, EndTime: "1595659500000", StartTime: "1595659200000", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
-
分析语句查询示例。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" lts "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/lts/v2/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := lts.NewLtsClient( lts.LtsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListLogsRequest{} request.LogGroupId = "{log_group_id}" request.LogStreamId = "{log_stream_id}" isAnalysisQueryQueryLtsLogParams:= true queryQueryLtsLogParams:= "* | select field1,field2 from log" request.Body = &model.QueryLtsLogParams{ IsAnalysisQuery: &isAnalysisQueryQueryLtsLogParams, Query: &queryQueryLtsLogParams, EndTime: "1722327932801", StartTime: "1722324332801", } response, err := client.ListLogs(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
状态码
状态码 |
描述 |
---|---|
200 |
请求响应成功。 |
400 |
非法请求或查询语句错误。 建议根据error_msg直接修改该请求,不要重试该请求。 |
401 |
鉴权失败,请确认token后再次请求 。 |
403 |
请求被拒绝访问。 返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 |
500 |
表明服务端能被请求访问到,但是服务内部出错。 |
错误码
请参见错误码。