For AI agents: a documentation index is available at /docs/llms.txt. Append .md to any page URL for markdown, or send Accept: text/markdown.
セッションリプレイReact Native Segment連携
この記事では、セッションリプレイ React Native Segment プラグインを使用してセッションリプレイをインストールする方法について説明します。React Native アプリがすでに Segment のアナリティクス React Native ライブラリと Amplitude (アクション) 送信先を使用している場合は、このオプションを使用してください。
Amplitude React Native SDKを使用してアプリをインストルメントする場合は、セッションリプレイReact Native SDKプラグインを使用してください。
Segmentを他のオプションと組み合わせて使用する場合は、スタンドアロン実装を使用してください。
問題の報告
React Native用セッションリプレイに関する問題をレポートするには、Amplitude-TypeScript GitHubリポジトリにアクセスしてください。
Amplitudeセッションプラグインが必要
このプラグインは、Amplitude連携データからセッションIDを抽出するために@segment/analytics-react-native-plugin-amplitude-sessionプラグインを必要とします。セッションリプレイ プラグインを追加する前に、このプラグインを Segment クライアントに追加してください。
APIキーの照合
セッションリプレイプラグイン設定のAmplitude APIキーは、Segment Amplitude(アクション)送信先のAPIキーと一致している必要があります。
始める前に
上記の セッションリプレイ React Native Segment プラグインの最新バージョンを使用してください0.0.1-beta.2。
セッションリプレイ React Native Segment プラグインは以下のことを要求します:
- アプリケーションはReact Nativeを使って構築します。
- 取り込みには、SegmentのAnalytics React Nativeライブラリを使用します。
- SegmentのAmplitude(アクション)送信先を使用します。
- セッションIDを抽出するには、SegmentのAmplitudeセッションプラグインを使用します。
クイックスタート
プラグインとその依存関係をインストールします。
npm install @amplitude/segment-session-replay-plugin-react-native
npm install @amplitude/session-replay-react-native @segment/analytics-react-native
アプリケーションコードを設定します。
import { createSegmentSessionReplayPlugin } from '@amplitude/segment-session-replay-plugin-react-native';
import { createClient } from '@segment/analytics-react-native';
import { AmplitudeSessionPlugin } from '@segment/analytics-react-native-plugin-amplitude-session';
// Initialize Segment client
const segmentClient = createClient({
writeKey: 'YOUR_SEGMENT_WRITE_KEY',
});
// Configure session replay plugin
const sessionReplayConfig = {
apiKey: 'YOUR_AMPLITUDE_API_KEY',
deviceId: 'YOUR_DEVICE_ID'
};
// Add the Amplitude session plugin first (required for session ID extraction)
await segmentClient.add({ plugin: new AmplitudeSessionPlugin() });
// Add the session replay plugin to Segment
await segmentClient.add({ plugin: createSegmentSessionReplayPlugin(sessionReplayConfig) });
設定
プラグインは、以下のオプションを持つSessionReplayConfigオブジェクトを受け入れます。
| 名前 | タイプ | 必須 | デフォルト | 概要 |
|---|---|---|---|---|
apiKey | string | はい | ||
deviceId | string | いいえ | ||
sampleRate | number | いいえ | 0 | Amplitudeがリプレイ収集のために選択するセッション数を制御します。 0から1の間の小数(例:0.4)を使用して、リプレイ収集のためにAmplitudeがランダムに選択するセッションの割合を表します。 |
enableRemoteConfig | boolean | いいえ | true | リモート設定を有効にします。 |
logLevel | LogLevel | いいえ | LogLevel.Warn | セッションリプレイプラグインのログレベルを設定します。 |
autoStart | boolean | いいえ | true | 初期化後にセッションリプレイが自動的に開始されるかどうかを制御します。falseに設定されている場合、start()メソッドを手動で呼び出してキャプチャを開始します。 |
仕組み
Segment Session Replay Pluginは自動的に次のことを行います。
- セッションリプレイを初期化:プラグインをSegmentに追加するときに、お客様の設定でAmplitude Session Replayをセットアップします。
- セッションデータを同期:イベントプロパティまたはAmplitude連携データから抽出することにより、各SegmentイベントのセッションIDとデバイスIDを更新します。
- イベントを強化:Segmentに送信する前に、
trackおよびscreenイベントにセッションリプレイプロパティを追加します。 - ライフサイクルの管理:プラグインのライフサイクルに基づいてセッションリプレイの開始および停止操作を処理します。
イベント処理
このプラグインは、次のセグメントイベントタイプを処理します。
TrackEvent:イベントを追跡するためにセッションリプレイプロパティを追加します。ScreenEvent:セッションリプレイのプロパティをスクリーンイベントに追加します。
これらのイベントに対して、プラグインは次のことを行います。
- イベントプロパティまたはAmplitude連携データからセッションIDを抽出します。
- イベントコンテキストまたは匿名IDからデバイスIDを抽出します。
- Segmentに送信する前に、イベントにセッションリプレイプロパティを追加します。
セッション ID の抽出
このプラグインは、次の優先順位順にセッション ID を抽出します。
- Amplitude連携データから抽出:
event.integrations['Actions Amplitude'].session_id。 - イベントプロパティから抽出:
event.properties.session_id。 - AmplitudeがセッションIDを検出しなかった場合は、デフォルトで
-1に設定されます。
デバイスIDの抽出
プラグインは、次の優先順位でデバイスIDを抽出します。
- イベントコンテキストから抽出:
event.context.device.id。 - 匿名IDから抽出:
event.anonymousId。 - AmplitudeがデバイスIDを検出できない場合は、デフォルトで
nullに設定されます。
高度なトピック
このセクションでは、より高度なユースケースの例を示します。
手動制御
初期化後にセッションリプレイプラグインを手動で制御するには:
import { createSegmentSessionReplayPlugin } from '@amplitude/segment-session-replay-plugin-react-native';
// Create the plugin
const sessionReplayPlugin = createSegmentSessionReplayPlugin(sessionReplayConfig);
// Add to Segment
await segmentClient.add(sessionReplayPlugin);
// Later, manually control recording
await sessionReplayPlugin.start();
await sessionReplayPlugin.stop();
カスタム構成
より高度な設定を行うには、追加のセッションリプレイオプションを渡します。
const sessionReplayConfig = {
apiKey: 'YOUR_AMPLITUDE_API_KEY',
sampleRate: 0.1, // Sample 10% of sessions
enableRemoteConfig: true,
logLevel: 4, // Debug level
autoStart: false, // Don't start automatically
};
const sessionReplayPlugin = createSegmentSessionReplayPlugin(sessionReplayConfig);
トラブルシューティング
セッションリプレイプロパティが追加されていません
プラグインがイベントにセッションリプレイプロパティを追加しない場合:
- Amplitude Session Plugin がセッションリプレイ Plugin の前に表示されることを確認します。
- セグメントイベントのタイプが
trackまたはscreenであることを確認します。 - セッションリプレイプラグインが初期化されることを確認します。
セッションIDが見つかりません
プラグインがセッションIDを抽出できない場合:
- Amplitude Session Pluginが正しく設定されていることを確認してください。
- Segment Amplitude送信先が正しく設定されていることを確認してください。
- イベントに必要なAmplitude連携データが含まれていることを確認してください。
デバイスIDの問題
デバイスIDの抽出に失敗した場合:
- Segmentイベントにコンテキスト内のデバイス情報が含まれていることを確認してください。
- 匿名IDがセグメントに設定されていることを確認してください。
- プラグイン設定でデバイスIDを手動で設定することを検討してください。
その他のトラブルシューティングについては、セッションリプレイ React Native SDK プラグインのトラブルシューティングガイドを参照してください。
Was this helpful?