You need to enable JavaScript to run this app.
全域数据集成

全域数据集成

复制全文
通用采集
Java
复制全文
Java
一、简介

火山引擎DataSail提供通用数据上报Java SDK,用户在开通DataSail服务之后,可以通过API将数据上报到火山云DataSail。

二、前置准备

服务开通

请确保您已开通了您需要访问的服务。您可前往火山引擎控制台开通全域数据集成服务,详见服务开通

获取安全凭证

Access Key(访问密钥)是访问火山引擎服务的安全凭证,包含Access Key ID(简称为AK)和Secret Access Key(简称为SK)两部分。您可登录火山引擎控制台,前往访问控制访问密钥 中创建及管理您的Access Key。更多信息可参考访问密钥帮助文档

产品接入

  1. 申请Topic

路径:数据采集-topic管理-新建Topic

  1. 申请数据采集

路径:数据采集-采集管理-新建采集任务

三、SDK接入

所需信息汇总

字段说明示例备注

AK

火山引擎Access Key

AKLTZWU*****

SK

火山引擎Secret Key

TW1KaVl******

采集任务ID

采集任务ID

hkktppvwtuv0xy000

获取路径:数据采集->采集管理->采集任务 ID 🔗

服务域名上报数据的域名datasail01-cn-beijing.volceapplog.com

服务域名

地域服务域名
华北2(北京)datasail01-cn-beijing.volceapplog.com

接入Demo

Java

  1. 将jar包导入maven本地仓库

general-collector-java-cloud.jar
19.52KB
mvn install:install-file -Dfile=general-collector-java-cloud.jar -DgroupId=com.volcengine.datasail -DartifactId=general-collector-java-cloud -Dversion=1.0-SNAPSHOT -Dpackaging=jar
  1. pom依赖配置

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.8</version>
</dependency>
<dependency>
    <groupId>com.volcengine</groupId>
    <artifactId>volc-sdk-java</artifactId>
    <version>1.0.49</version>
</dependency>
<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.10.1</version>
</dependency>
<dependency>
  <groupId>com.volcengine.datasail</groupId>
  <artifactId>general-collector-java-cloud</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>
  1. Demo

package org.example;

import com.volcengine.datasail.GeneralCollector;
import com.volcengine.datasail.config.Config;
import com.volcengine.datasail.exceptions.CollectException;
import com.volcengine.datasail.request.GeneralDataRequest;
import com.volcengine.datasail.request.JsonArrayRequest;
import com.volcengine.datasail.response.GeneralDataResponse;
import com.volcengine.datasail.response.JsonArrayResponse;

public class App {
    public static void main( String[] args ) {
        // 设置Config
        Config config = new Config();
        config.AK = System.getenv("AK");
        config.SK = System.getenv("SK");
        config.endpoint = System.getenv("DOMAIN");
        config.taskKey = System.getenv("TASK_KEY");

        // 创建GeneralCollector对象,该对象的方法线程安全,仅在初始化时创建无需频繁创建
        GeneralCollector collector = new GeneralCollector(config);

        // 上报任意类型的数据
        GeneralDataRequest generalDataRequest = new GeneralDataRequest();
        generalDataRequest.data = "abc".getBytes();
        GeneralDataResponse generalDataResponse = null;
        try {
            generalDataResponse = collector.collectGeneralData(generalDataRequest);
        } catch (CollectException e) {
            e.printStackTrace();
        }
        System.out.println(generalDataResponse);

        // 通过JsonArray批量上报数据,需符合JsonArray的格式
        JsonArrayRequest jsonArrayRequest = new JsonArrayRequest();
        jsonArrayRequest.data = "[\"a\",\"b\",\"c\"]".getBytes();
        JsonArrayResponse jsonArrayResponse = null;
        try {
            jsonArrayResponse = collector.collectJsonArray(jsonArrayRequest);
        } catch (CollectException e) {
            e.printStackTrace();
        }
        System.out.println(jsonArrayResponse);

        // 不再使用GeneralCollector时关闭资源
        try {
            collector.close();
        } catch (CollectException e) {
            e.printStackTrace();
        }
    }
}
  1. 接口说明

通用数据上报

collectGeneralData用于上报任意类型的数据,GeneralDataRequest中的data会原封不动地传至服务端,服务端收到数据后直接投递至task_key对应的topic。

// 上报通用数据(任意类型)
GeneralDataResponse collectGeneralData(GeneralDataRequest request) throws CollectException
Json数组上报

collectJsonArray通过Json数组上报批量数据,JsonArrayRequest中的data需要符合Json Array的格式;服务端收到数据后,会以Json Array进行解析,并遍历Json Array中的每一个Item,将抓包后的每一个Item投递至task_key对应的topic。

// 上报Json数组
JsonArrayResponse collectJsonArray(JsonArrayRequest request) throws CollectException
  1. 异常说明

  • GeneralCollector初始化

    • 当Config配置错误时,会抛出运行时异常IllegalArgumentException
  • GeneralCollector方法调用

    • 对数据上报不符合预期的情况,会抛出受检异常CollectException,需要调用方关注

响应

参数名含义状态码

e

状态码

  • StatusOk = 0

  • StatusInvalidParam = -1

  • StatusInvalidEventFormat = -2

  • StatusParseArgError = -3

  • StatusNoSupportMethodError = -4

  • StatusTooManyElementError = -5

  • StatusTooManyEventError = -6

  • StatusGetAppidError = -7

  • StatusParseUserError = -8

  • StatusParseHeaderError = -9

  • StatusParseEventError = -10

  • StatusSaveEventError = -11

  • StatusEventEmptyError = -12

  • StatusUnknownError = -100

  • StatusIdentityMatchError = -101

  • StatusSignatureMatchError = -102

  • StatusNotSupportAppIdError = -103

  • StatusNotFoundRouteError = -104

m如失败,显示错误信息
最近更新时间:2023.12.19 19:49:34
这个页面对您有帮助吗?
有用
有用
无用
无用