You need to enable JavaScript to run this app.
文档中心
日志服务

日志服务

复制全文
下载 pdf
Java SDK
通过 Java SDK 创建基础资源
复制全文
下载 pdf
通过 Java SDK 创建基础资源

日志服务基础资源包括日志项目、日志主题等,本文档通过示例代码演示如何通过 SDK 创建日志项目、日志主题并配置索引。

前提条件

  • 已安装日志服务 Java SDK。更多信息,请参见安装 Java SDK
  • 已添加 VOLCENGINE_ACCESS_KEY_ID 等环境变量。环境变量的配置方式请参考配置身份认证信息

    注意

    推荐通过环境变量动态获取火山引擎密钥等身份认证信息,以免 AccessKey 硬编码引发数据安全风险。

创建基础资源

场景说明

本文档通过示例代码演示如何通过 SDK 在指定地域下创建日志项目、日志主题并配置索引。日志项目所在的地域与初始化 Client 时填写的地域一致。创建日志主题时,推荐开启自动分裂分区,在业务突发大流量的场景中避免数据读写速度受限于分区数量。本文以同时开启全文索引和键值索引为例,您可以根据日志字段及检索分析需求按需设置索引,关于设置索引的详细说明请参考配置索引

示例代码

创建日志项目、日志主题并配置索引的示例代码如下。

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);

        // 创建日志项目
        // 请根据您的需要,填写ProjectName和可选的Description;请您填写和初始化client时一致的Region;
        // CreateProject API的请求参数规范请参阅https://www.volcengine.com/docs/6470/112174
        CreateProjectRequest createProjectRequest = new CreateProjectRequest("project-name", "region", "description");
        CreateProjectResponse createProjectResponse = client.createProject(createProjectRequest);
        String projectID = createProjectResponse.getProjectId();

        // 创建日志主题
        // 请根据您的需要,填写ProjectId、TopicName、Ttl、Description、ShardCount、AutoSplit、MaxSplitShard、EnableTracking等参数值
        // CreateTopic API的请求参数规范请参阅https://www.volcengine.com/docs/6470/112180
        CreateTopicRequest createTopicRequest = new CreateTopicRequest();
        createTopicRequest.setProjectId(projectID);
        createTopicRequest.setTopicName("topic-name");
        createTopicRequest.setTtl(30);
        createTopicRequest.setDescription("description");
        createTopicRequest.setShardCount(2);
        createTopicRequest.setAutoSplit(true);
        createTopicRequest.setMaxSplitShard(50);
        createTopicRequest.setEnableTracking(true);
        CreateTopicResponse createTopicResponse = client.createTopic(createTopicRequest);
        String topicID = createTopicResponse.getTopicId();

        // 创建索引配置
        // 请根据您的需要,填写TopicId,开启FullText全文索引或KeyValue键值索引或同时开启二者
        // CreateIndex API的请求参数规范请参阅https://www.volcengine.com/docs/6470/112187
        FullTextInfo fullText = new FullTextInfo(false, ",-;", false);
        ValueInfo textValueInfo = new ValueInfo();
        textValueInfo.setValueType("text");
        textValueInfo.setDelimiter(",");
        textValueInfo.setCaseSensitive(false);
        textValueInfo.setIncludeChinese(false);
        textValueInfo.setSqlFlag(false);
        List<KeyValueInfo> keyValue = new ArrayList<>();
        keyValue.add(new KeyValueInfo("key1", textValueInfo));
        CreateIndexRequest createIndexRequest = new CreateIndexRequest(topicID, fullText, keyValue);
        CreateIndexResponse createIndexResponse = client.createIndex(createIndexRequest);
    }
}

相关文档

  • 通过 SDK 发送调用 API 的请求以后,您会收到服务端的响应,如果响应中包含 200 以外的状态码,表示接口调用失败。您可以参考各个 API 的文档查看对应的错误码信息。

  • 本示例中涉及到的 API 接口如下。您可以参考 API 文档查看对应接口的详细信息。

    API

    说明

    CreateProject

    调用 CreateProject 接口创建一个日志项目。

    CreateTopic

    调用 CreateTopic 接口创建日志主题。

    CreateIndex

    调用 CreateIndex 接口创建索引。

  • 关于日志服务基础资源管理的完整示例代码,请参考 TLS Java SDK Demo on GitHub

最近更新时间:2024.12.03 10:44:40
这个页面对您有帮助吗?
有用
有用
无用
无用