日志服务支持通过 SDK 检索采集到服务端的日志数据。本文档通过示例代码演示如何通过 Java SDK 检索分析日志。
注意
推荐通过环境变量动态获取火山引擎密钥等身份认证信息,以免 AccessKey 硬编码引发数据安全风险。
日志服务支持通过 SDK 调用 SearchLogs API 检索分析日志数据。检索分析功能的使用限制可参考查询分析限制,检索分析语句的语法可参考检索语法和分析语法。本文档以返回所有日志数据为例,演示如何通过 SDK 检索分析日志数据的操作步骤。
package com.volcengine.example.tls.demo; import com.volcengine.model.tls.*; import com.volcengine.model.tls.exception.LogException; import com.volcengine.model.tls.request.*; import com.volcengine.model.tls.response.*; import com.volcengine.service.tls.TLSLogClient; import java.util.ArrayList; import java.util.List; public class Demo { public static void main(String[] args) throws LogException { // 初始化客户端,推荐通过环境变量动态获取火山引擎密钥等身份认证信息,以免 AccessKey 硬编码引发数据安全风险。详细说明请参考https://www.volcengine.com/docs/6470/1166455 // 使用 STS 时,ak 和 sk 均使用临时密钥,且设置 VOLCENGINE_TOKEN;不使用 STS 时,VOLCENGINE_TOKEN 部分传空 ClientConfig clientConfig = new ClientConfig(System.getenv("VOLCENGINE_ENDPOINT"), System.getenv("VOLCENGINE_REGION"), System.getenv("VOLCENGINE_ACCESS_KEY_ID"), System.getenv("VOLCENGINE_ACCESS_KEY_SECRET"), System.getenv("VOLCENGINE_TOKEN")); TLSLogClient client = ClientBuilder.newClient(clientConfig); // 查询分析日志数据 // 请根据您的需要,填写TopicId、Query、StartTime、EndTime、Limit等参数值 // SearchLogs API的请求参数规范和限制请参阅https://www.volcengine.com/docs/6470/112195 SearchLogsRequest searchLogsRequest = new SearchLogsRequest(); searchLogsRequest.setTopicId("your-topic-id"); searchLogsRequest.setQuery("*"); searchLogsRequest.setStartTime(1346457600); searchLogsRequest.setEndTime(1630454400); searchLogsRequest.setLimit(20); SearchLogsResponseV2 searchLogsResponse = client.searchLogsV2(searchLogsRequest); // 打印SearchLogs接口返回值中的部分基本信息 // 请根据您的需要,自行处理返回值中的其他信息 System.out.println(searchLogsResponse.getResultStatus()); System.out.println(searchLogsResponse.getHitCount()); System.out.println(searchLogsResponse.getCount()); System.out.println(searchLogsResponse.isAnalysis()); } }
通过 SDK 发送调用 API 的请求以后,您会收到服务端的响应,如果响应中包含 200 以外的状态码,表示接口调用失败。您可以参考各个 API 的文档查看对应的错误码信息。
本示例中涉及到的 API 接口如下。您可以参考 API 文档查看对应接口的详细信息。
API | 说明 |
---|---|
调用 SearchLogs 接口检索日志。 |
关于日志服务检索分析的完整示例代码,请参考 TLS Java SDK Demo on GitHub。