目录
此内容是否有帮助?

# デバッグモード

Debugモードは、開発者がコードをデバッグできるように設計されており、統合フェーズのデータ検証にのみ使用されます。Debugモードはデータ収集の品質とアプリの安定性に影響する可能性があるので、オンライン環境では使用しないでください。

# 一、デバッグモード

# 1.1 Android SDK

Android SDKインスタンスは、TDConfigで定義されている3つの実行モードをサポートDEBUGまたはDEBUG_ONLYモードを

/**
 * 实例运行模式, 默认为 NORMAL 模式.
 */
public enum ModeEnum {
    /* 正常模式,数据会存入缓存,并依据一定的缓存策略上报 */
    NORMAL,
    /* Debug 模式,数据逐条上报。当出现问题时会以日志和异常的方式提示用户 */
    DEBUG,
    /* Debug Only 模式,只对数据做校验,不会入库 */
    DEBUG_ONLY
}

たとえば、次のコードは、デバッグモードを使用してSDKの初期化を完了します

// 获取 TDConfig 实例
TDConfig config = TDConfig.getInstance(mContext, TE_APP_ID, TE_SERVER_URL);
// 设置运行模式为 Debug 模式
config.setMode(TDConfig.ModeEnum.DEBUG);
// 初始化 SDK
instance = ThinkingAnalyticsSDK.sharedInstance(config);

# 1.2 iOS SDK

iOS SDKインスタンスは、TDConfigで定義さている3つの実行モードまたはDEBUG_ONLYモードを

/**
Debug模式

- ThinkingAnalyticsDebugOff : 默认 不开启Debug模式
*/
typedef NS_OPTIONS(NSInteger, ThinkingAnalyticsDebugMode) {
    /**
     默认 不开启Debug模式
     */
    ThinkingAnalyticsDebugOff      = 0,

    /**
     开启Debug_only模式,只对数据做校验,不会入库
     */
    ThinkingAnalyticsDebugOnly     = 1 << 0,

    /**
     Debug 模式,数据逐条上报。当出现问题时会以日志和异常的方式提示用户
     */
    ThinkingAnalyticsDebug         = 1 << 1
};

たとえば、次のコードは、デバッグモードを使用してSDKの初期化を完了します

// 获取 TDConfig 实例
TDConfig *config = [[TDConfig alloc] init];
// 设置运行模式为 Debug 模式
config.debugMode = ThinkingAnalyticsDebug;
// 初始化 SDK
ThinkingAnalyticsSDK *instance = [ThinkingAnalyticsSDK startWithAppId:@"YOUR_APPID" withUrl:@"YOUR_SERVER_URL" withConfig:config];

# 1.3 その他のクライアントSDK

その他のクライアントSDKデバッグモードの開始手順については、各SDK使用ガイドを参照してください

# 第二に、デバッグデバイスを追加

デバッグモードが本番環境でオンラインにならないようにするには、デバッグモードを有効にするためにデバイスを指定する必要があります。クライアントでDebugモードをオンにし、埋め込みポイント管理→Debugモードでアクセス構成を行ったデバイスのみDebugモードをオンにできる。

デバイスIDは、次の2つの方法で取得できます。

  • クライアントログ: SDKの初期化が完了するとデバイスDeviceIdが印刷されます
  • getDeviceIdを呼び出しデバイスIDを取得

# 三、使用説明

デバイスを接続すると、デバイスから報告されたデータがリアルタイムでデータリストに表示され、エラーが発生したデータを検証するために特定のエラー原因が示されます。

  1. **デバイスの切り替え:**クリックすると、現在のアクセスデバイスを切り替えたり、新しいデバイスを追加したりできます。
  2. **ロードを一時停止:**テスト中に現在のイベントを特定してさらに処理したい場合は、「ロードを一時停止」をクリックして、一時停止状態で発生したデータ(設定された自動収集イベントなど)をデータテーブルの上に提示します。「ロードを開始」をクリックすると、リアルタイムのロード状態に切り替わります。
  3. **検索イベント:**検索フィルターは、指定されたイベントまたはユーザー属性のみを表示します。
  4. **埋め込みポイント比較:**前に、埋め込みポイント管理→埋め込みポイントプログラムモジュールで埋め込みポイントプログラム情報を維持している場合は、「埋め込みポイント比較」をオンにすると、テスト段階でテストデータと埋め込みポイントプログラムの違いを取得し、埋め込みポイントコードをタイムリーに調整できます。

埋め込みポイントの比較をオンにすると、エラーの原因に埋め込みポイントスキームの比較に基づくエラー情報が追加されます(比較内容にはプリセット属性は含まれません)。エラーが発生する可能性があります。

  • 事件は埋立地計画にない
  • 存在は埋め込みポイントスキームにはないが、実際に報告された属性
  • 属性の欠落が存在する、つまり埋没点スキームではあるが、実際には報告されていない属性
  • 報告された属性タイプと埋め込みポイントスキームの属性タイプが一致しない
  1. **消去リスト:**クリックすると現在のデータリストが消去され、消去されたデータは表示されなくなります。クリア操作はログだけをクリアし、入庫済みイベントは削除しません。

# IV。ベストプラクティス

# 4.1 Debugモードを使用した埋め込みポイントのデバッグ

Debugモードは、埋め込みポイントを追加するときに、埋め込みポイントの正確性を検証するのに最適です。埋め込みポイントをテストする前に、まずTE SDK内のデバイスのデバイスID#device_id、そのデバイスをDebugモードに追加します。その後、IDEまたは自分のデバイスで埋め込みポイントをトリガーすると同時に、Debugモードで表示されるデータに注目し、主にデータがアップロードされているかどうか、データが正しいかどうかに注目します。

# 4.2オープン埋没点の比較

「埋め込みポイントプラン」ページでプランをアップロードした後、「埋め込みポイント比較」をオンにして、テスト段階でテストデータと埋め込みポイントプランの違いを取得し、埋め込みポイントコードをタイムリーに調整できます。この機能の検査結果には、プリセット属性の検査は含まれていないことに注意してください。