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

Simple Log Service:webトラッキングSDK for JavaScriptを使用してミニプログラムログを収集する

最終更新日:Sep 05, 2024

ユーザーがアクセスしたミニプログラム、閲覧行動記録、購入行動記録など、ミニプログラムユーザーに関する情報を収集して分析する場合は、webトラッキングSDK for JavaScriptを使用してユーザーログをLogstoreにアップロードできます。 webトラッキングSDK for JavaScriptを使用すると、アプリケーションサーバーにログをアップロードする必要なく、ミニプログラムからSimple Log Serviceに直接ログをアップロードできます。 これにより、サーバーの負荷が軽減されます。 このトピックでは、webトラッキングSDK for JavaScriptを使用してミニプログラムログを収集する方法について説明します。

前提条件

  • Logstoreでwebトラッキング機能が有効になっています。 webトラッキング機能を有効にして使用する方法の詳細については、「webトラッキング機能を使用してログを収集する」をご参照ください。

  • 安全な通信のためにwebトラッキング機能によって使用されるドメイン名は、ログを収集するミニプログラムの管理コンソール上の合法的なドメインリストに追加されます。 これにより、データのセキュリティが確保されます。 ドメイン名を追加すると、ドメイン名とミニプログラムの間にネットワーク接続を確立できます。 https://${project}.${host} 形式でドメイン名を追加する必要があります。 projecthostの詳細については、次のセクションを参照してください。

制限事項

  • webトラッキングSDK for JavaScriptを使用してミニプログラムログをアップロードする場合、一度に10 MB以下のログデータを書き込むことができます。 webトラッキングSDK For JavaScriptの詳細については、「WebトラッキングSDK for JavaScript」をご参照ください。

  • web追跡機能は、WeChatミニプログラム、WeChatミニゲーム、Alipayミニプログラム、ByteDanceミニプログラム、DingTalkミニプログラム、QQミニプログラム、QQミニゲーム、Baiduミニプログラムのみをサポートしています。

手順1: SDKのインストールと設定

  1. Node.jsをインストールします。

  2. サーバーで次のコードを実行して、依存関係をインストールします。

    npm install --save @aliyun-sls/web-track-mini
  3. 次のコードをプログラムに追加して、SDKを設定します。

    重要

    quickApp miniプログラムを開発するときは、SlsTrackerオブジェクトを作成する前に、使用するリクエストモジュールに基づいて設定項目を追加する必要があります。 次のサンプルコードは、requesttaskモジュールを使用する場合の設定項目を示しています。

    // Define the quickappSDK object and encapsulate the request-related API operations into the object.
    const quickappSDK = {     
          request: requesttask.request
        }
    
    const tracker = new SlsTracker({
          ...opts,
          platformSDK: quickappSDK,
          platformRequestName: 'request',
        })
    import SlsTracker from '@aliyun-sls/web-track-mini'
    
    const opts = {
      host: '${host}', // The Simple Log Service endpoint for the region where your project resides. Example: cn-hangzhou.log.aliyuncs.com.
      project: '${project}', // The name of the project. 
      logstore: '${logstore}', // The name of the Logstore. 
      time: 10, // The interval at which logs are sent. Default value: 10. Unit: seconds. 
      count: 10, // The maximum number of logs that can be sent in each request. Default value: 10. 
      topic: 'topic',// The custom topic of logs. 
      source: 'source',
      tags: {
        tags: 'tags',
      },
    }
    
    const tracker = new SlsTracker(opts)  // Create an SlsTracker object.

    パラメーター

    必須

    説明

    host

    課金されます

    プロジェクトが存在するリージョンのSimple Log Serviceエンドポイント。 この例では、中国 (杭州) リージョンのSimple Log Serviceエンドポイントが使用されています。 このパラメーター値を実際のエンドポイントに置き換えます。 詳細については、「エンドポイント」をご参照ください。

    project

    課金されます

    プロジェクトの名前。

    logstore

    課金されます

    ログストアの名前

    time

    課金されません

    ログが送信される間隔。 デフォルト値は 10 です。 単位は秒です。

    集計

    課金されません

    各リクエストで送信できるログの最大数。 デフォルト値は 10 です。

    topic

    課金されません

    ログのトピック。 カスタム値を指定してログを識別できます。

    source

    課金されません

    ログのソース。 カスタム値を指定してログを識別できます。

    tags

    課金されません

    ログに関するタグ情報。 カスタム値を指定してログを識別できます。

ステップ2: ログのアップロード

単一のログをアップロードすると、ログは別のオブジェクトとしてアップロードされます。 複数のログをアップロードすると、ログは複数のオブジェクトを含む配列としてアップロードされます。

  • 単一のログをアップロードします。 型はobjectです。 例:

    tracker.send({
      eventType:'view_product',
      productName: 'Tablet',
      price: 500
    })
  • すぐに単一のログをアップロードします。 時間とカウントのパラメーターは有効になりません。 型はobjectです。 例:

    tracker.sendImmediate({
      eventType:'view_product',
      productName: 'Tablet',
      price: 500
    })
  • 一度に複数のログをアップロードします。 タイプはarrayです。 例:

    tracker.sendBatchLogs([
      {
        eventType: 'view_product',
        productName: 'Tablet',
        price: 500
      },
      {
        eventType: 'view_product',
        productName: 'Laptop',
        price: 1200
      }
    ])
  • 一度に複数のログをすぐにアップロードします。 時間とカウントのパラメーターは有効になりません。 タイプはarrayです。 例:

    tracker.sendBatchLogsImmediate([
      {
        eventType:'view_product',
        productName: 'Tablet',
        price: 500
      },
      {
        eventType:'view_product',
        productName: 'Laptop',
        price: 1200
      }
    ])

ステップ3: アップロード結果を表示する

ログがLogstoreにアップロードされた後、ログを照会および分析するためのインデックスを作成する必要があります。 詳細については、「インデックスの作成」をご参照ください。

クイックビュー

インデックスが作成されていない場合は、[消費プレビュー] をクリックしてログをすばやく表示できます。 次に、ログを照会および分析できます。 詳細については、「ログの照会と分析」をご参照ください。

image

ログの照会と分析

  1. CreateIndex操作を呼び出して、フルテキストインデックスまたはフィールドインデックスを作成できます。 SELECTステートメントを使用する場合は、フィールドインデックスを作成する必要があります。

  2. GetLogsV2操作を呼び出して、Logstore内のログを照会できます。 返される結果は、ログの配列です。 配列内の各要素はログです。

関連ドキュメント

  • APIを呼び出した後、Log Serviceによって返された応答にエラー情報が含まれている場合、呼び出しは失敗します。 API呼び出しが失敗したときに返されるエラーコードに基づいてエラーを処理できます。 詳細については、エラーコードをご参照ください。

  • Alibaba Cloud OpenAPI Explorerは、デバッグ機能、SDK、サンプル、および関連ドキュメントを提供します。 OpenAPI Explorerを使用して、リクエストを手動でカプセル化したり署名したりすることなく、Log Service API操作をデバッグできます。 詳細については、をご覧ください。 OpenAPIポータル

  • Log Serviceは、Log Serviceの自動設定の要件を満たすコマンドラインインターフェイス (CLI) を提供します。 詳細については、「Log Service CLI」をご参照ください。