すべてのプロダクト
Search
ドキュメントセンター

Quick Tracking:Java SDK

最終更新日:Jun 08, 2025

1. Java SDK の統合

JAR パッケージ「quickaplus-log-collector-java-sdk-1.0.1-SNAPSHOT.jar」を手動で導入します。QT Q&A 担当者に連絡して入手できます。

2 基本構成(必須!)

appkey、データ収集エンドポイント、および認証情報を設定します

  1. appkey を設定する

QtSdkConfig.setAppKey("Your appkey"); // アプリケーションキーを設定

  1. データ収集エンドポイントを設定する

QtSdkConfig.setQlcEndpoint("Your data collection endpoint"); // データ収集エンドポイントを設定

注:ドメインに接尾辞「/server」を追加する必要があります。

  1. 認証情報を入力する

QtSdkConfig.setServiceId("Your ServiceID"); // サービスIDを設定
QtSdkConfig.setServiceSecret("Your ServiceSecret"); // サービスシークレットを設定

場所は、「管理コンソール - トラッキング情報 - サーバートラッキング情報」で取得します。

3. グローバルプロパティ設定

// プロパティを追加します。
QtGlobalPropertiesConfig.put("a", "1");
QtGlobalPropertiesConfig.put("b", "2");
// プロパティを削除します。
QtGlobalPropertiesConfig.remove("a");
// すべてのプロパティをクエリします。
QtGlobalPropertiesConfig.getAll();
// プロパティをクリアします。
QtGlobalPropertiesConfig.clear();

4. トラッキングレポート

QtLog log = new QtLog.Builder()
        .eventId("order_success") // イベントコード。このパラメータは必須です。
        .deviceId("dev-001") // デバイス ID を設定します(デバイス ID とアカウント ID の両方が必要です)
        .userId("user-001") // アカウント ID を指定します。デバイス ID とアカウント ID のいずれかを指定する必要があります。
        .pageName("pageName") // ページエンコーディングを設定します(オプション)
        .customProperty(new HashMap<>()) // イベントプロパティを設定します(オプション)
        .systemProperty(new HashMap<>()) // システムプロパティを設定します(オプション)
    		.idTracking(new HashMap<>()) // システムプロパティのデバイス識別子を設定します。
        .debugKey("dk-0001") // トラッキング検証フラグビットを設定します(オプション)。オンラインにする場合は削除する必要があります。
        .eventTimestamp(System.currentTimeMillis()) // クライアントのタイムスタンプを指定します。このパラメータは必須です。
        .serverTimestamp(System.currentTimeMillis()) // サーバーのタイムスタンプを設定します。このパラメータはオプションです。
  			.uuid("xxxx") // イベントログの一意の識別子を設定します。このパラメータは、log_id を生成するために使用されます。このパラメータは 1.0.1 でサポートされています。
        .build(); // ログが構築されます。

  1. システムプロパティは、以下のプロパティのレポートのみをサポートしています。システムプロパティを送信する場合は、大文字と小文字を区別するキーを含め、以下と同じキーを入力する必要があります。

カテゴリ

開発者レポートフィールドおよび QT システムプロパティフィールド

機能

詳細

アプリケーション情報

channel

String

アプリケーションチャンネル

app_version

String

アプリケーションのバージョン。

SDK

sdk_version

String

SDK バージョン

sdk_type

String

SDK タイプ

システム情報

os

String

サポートされているオペレーティングシステム。

os_version

String

オペレーティングシステムのバージョン。

デバイス情報

resolution

String

画面解像度

mac、oaid、openid、unionid、android_id、idfa、serial、imei、および idfv

String

デバイス識別子。「idTracking(new HashMap<>())」を介して報告する必要があります。詳細については、上記のデモを参照してください。

device_brand

String

デバイスブランド

device_model

String

デバイスモデル

ネットワークとオペレーター

access

String

ネットワークタイプ

access_subtype

String

carrier

String

ISP

プラットフォームとシナリオ情報

scene

String

シーン値(ミニプログラム)

device_type

String

HTTP_header および UA

browser

String

ブラウザ

ip

String

IP アドレス

5 ロゴ配信

ログを送信するときは、次の API を呼び出してログを送信します。

QtLogSenderHelper.syncSendLog(log); // ログを同期送信

6 デモ

package com.alibaba.lingyang.quick.tracking.qlc.java.sdk.model;

import com.alibaba.lingyang.quick.tracking.qlc.java.sdk.config.QtGlobalPropertiesConfig;
import com.alibaba.lingyang.quick.tracking.qlc.java.sdk.config.QtSdkConfig;
import com.alibaba.lingyang.quick.tracking.qlc.java.sdk.sender.QtLogSenderHelper;
import org.junit.Test;

import java.util.HashMap;
import java.util.Map;

/**
 * ログ送信テスト
 */
public class TestSendLog {
    /**
     * テスト
     */
    @Test
    public void testSend() {
        // 構成
        QtSdkConfig.setServiceId("Your ServiceId"); // サービスIDを設定
        QtSdkConfig.setServiceSecret("Your ServiceSecret"); // サービスシークレットを設定
        QtSdkConfig.setAppKey("Your appkey"); // アプリケーションキーを設定
        QtSdkConfig.setQlcEndpoint("Your domain name"); // ドメイン名を設定
        QtSdkConfig.setOpenLog(true); // ログを有効化
        QtSdkConfig.setCallback(ctx -> { // コールバックを設定
            System.out.println(ctx.getResponseCode()); // レスポンスコードを出力
            System.out.println(ctx.getResponseMessage()); // レスポンスメッセージを出力
            System.out.println(ctx.getSendSuccess()); // 送信成功かどうかを出力
            System.out.println(ctx.getSendData()); // 送信データを出力
            System.out.println(ctx.getResponseData()); // レスポンスデータを出力
            System.out.println(ctx.getErrors()); // エラーを出力
        });

        // 属性を追加します。
        QtGlobalPropertiesConfig.put("a", "1");
        QtGlobalPropertiesConfig.put("b", "2");
        // プロパティを削除します。
        QtGlobalPropertiesConfig.remove("a");
        // すべてのプロパティをクエリします。
        QtGlobalPropertiesConfig.getAll();
        // プロパティをクリアします。
        QtGlobalPropertiesConfig.clear();

        Map<String,String> idTracking = new HashMap();
        idTracking.put("mac","id1");
        idTracking.put("oaid","id2");
        idTracking.put("android_id","id3");

        // ログオブジェクトを構築します。
        QtLog log = new QtLog.Builder()
                .eventId("order_success") // イベントコード。このパラメータは必須です。
                .deviceId("dev-001") // デバイス ID を設定します(デバイス ID とアカウント ID の両方が必要です)
                .userId("user-001") // アカウント ID を指定します。デバイス ID とアカウント ID のいずれかを指定する必要があります。
                .pageName("pageName") // ページエンコーディングを設定します(オプション)
                .customProperty(new HashMap<>()) // イベントプロパティを設定します(オプション)
                .systemProperty(new HashMap<>()) // システムプロパティを設定します(オプション)
              	.idTracking(new HashMap<>()) // システムプロパティのデバイス識別子を設定します。
                .debugKey("dk-0001") // トラッキング検証フラグビットを設定します(オプション)。オンラインにする場合は削除する必要があります。
                .eventTimestamp(System.currentTimeMillis()) // クライアントのタイムスタンプを指定します。このパラメータは必須です。
                .serverTimestamp(System.currentTimeMillis()) // サーバーのタイムスタンプを設定します。このパラメータはオプションです。
        // ログを送信します。
        QtLogSenderHelper.syncSendLog(log);
    }

}

7 その他の構成

  1. スペックアップされるサービスインスタンスの範囲。デフォルトでは、[サービス構成] が選択されています。

アラート連絡先を構成します。

タイプ

必須

有効な値

説明

serviceId

String

はい

-

サーバーによって収集された AccessKey ID。

serviceSecret

String

はい

-

サーバーによって収集された SK

qlcEndpoint

String

はい

-

受信サービスアドレス

appKey

String

はい

-

アプリケーションキー

openLog

ブール値

いいえ

false

ロギングを有効にするかどうかを指定します。

httpConnectTimeoutMillisecond

Integer

いいえ

null

HTTP リクエストの送信のタイムアウト期間(接続)

httpWriteTimeoutMillisecond

Integer

いいえ

null

HTTP リクエストの送信のタイムアウト期間(書き込み)

httpReadTimeoutMillisecond

Integer

いいえ

null

HTTP リクエストの送信のタイムアウト期間(読み取り)

senderType

QtSenderTypeEnum

いいえ

SYNC

送信タイプは、同期送信と非同期送信をサポートしています。

callback

Consumer<QtSendCallbackContext>

いいえ

null

コールバック関数を構成する

  1. コールバックの構成

プロパティ

制限

移行の説明

sendSuccess

ブール値

送信が成功したかどうか

errors

List<String>

送信に失敗したエラーメッセージのリスト

qtLog

QtLog

送信された QtLog オブジェクト

responseData

String

返されたデータの内容

responseCode

String

返されたデータのコード

responseMessage

String

返されたデータのメッセージ

sendData

String

http で実際に送信されたデータ

コールバック関数のデモを登録する

// コールバック関数を登録します。
QtSdkConfig.setCallback(ctx -> { // コールバックを設定
 System.out.println(ctx.getResponseCode()); // レスポンスコードを出力
 System.out.println(ctx.getResponseMessage()); // レスポンスメッセージを出力
 System.out.println(ctx.getSendSuccess()); // 送信成功かどうかを出力
 System.out.println(ctx.getSendData()); // 送信データを出力
 System.out.println(ctx.getResponseData()); // レスポンスデータを出力
 System.out.println(ctx.getErrors()); // エラーを出力
});

  1. 一意のログ ID--log_id の生成

デフォルトでは、SDK は各イベントログの uuid をログの一意の ID「log_id」の生成要素として生成します。「log_id」をより一意にする場合は、UUID を設定できます。次の操作を実行します。

QtLog log = new QtLog.Builder()
        .eventId("order_success") // イベントIDを設定  
        .deviceId("dev-001") // デバイスIDを設定		
        .userId("user-001") // ユーザーIDを設定		
        .pageName("pageName") // ページ名を設定
        .customProperty(new HashMap<>()) // カスタムプロパティを設定
        .systemProperty(new HashMap<>()) // システムプロパティを設定
    		.idTracking(new HashMap<>()) // IDトラッキングを設定
        .debugKey("dk-0001") // トラッキング検証フラグビットを設定します(オプション)。オンラインにする場合は削除する必要があります。
        .eventTimestamp(System.currentTimeMillis()) // イベントタイムスタンプを設定
  			.uuid("xxxx") // イベントログの一意の識別子を設定します。このパラメータは、log_id を生成するために使用されます。このパラメータは 1.0.1 でサポートされています。
        .build(); // ログを構築