Splunk RUM でのセッション再生 🔗
Replay a session to take a look at exactly what a user experienced and make informed decisions about what to do next. Sessions have a maximum duration of four hours.
注釈
You are responsible for using Splunk Observability Cloud in compliance with applicable laws, including but not limited to providing notice to and obtaining any necessary consent from individuals whose data will be collected by Customer’s use of the services.
ユースケース 🔗
セッションを再生したい理由はたくさんあります。そのいくつかをご紹介しましょう:
サポートチームが問題のトラブルシューティングに要する時間を短縮します。実際のユーザーの視点からエラーを確認することで、サポートチームは何が起こったかを迅速に特定し、対策を講じることができます。セッションの再生がなければ、サポートチームは、問題の不完全な説明に基づいて、さまざまな可能性のある原因を調査するために長い時間を費やす可能性があります。
エラーに焦点を当て、どのようなエラーがユーザーに影響を与えるかを確認することで、アプリケーションに迅速な修正を導入できます。
ユーザーがアプリケーションをどのように操作し、ナビゲーションパスをたどるかを確認することで、UXを改善しましょう。例えば、ターゲット広告キャンペーンから顧客がプロモコードを追加していない場合、チェックアウトのワークフローを見直し、顧客がプロモコードを追加するドロップダウンを見つけられるかどうかを確認します。
前提条件 🔗
セッションの再生は、企業のお客様のみご利用いただけます。各サブスクリプションタイプの詳細については、Splunk RUM 価格設定 を参照してください。
セッション再生をセットアップする 🔗
セッション再生の設定には、CDNまたはNPMの2つの方法があります。
注
セッションレコーダーパッケージを初期化する前に Splunk Browser RUM を初期化します。
この例では、スクリプトを初期化する順番を示している:
<script src="https://cdn.signalfx.com/o11y-gdi-rum/latest/splunk-otel-web.js" crossorigin="anonymous"></script>
<script src="https://cdn.signalfx.com/o11y-gdi-rum/latest/splunk-otel-web-session-recorder.js" crossorigin="anonymous"></script>
<script>
SplunkRum.init({
realm: '<realm>',
rumAccessToken: '<your_rum_token>',
applicationName: '<your_app_name>',
version: '<your_app_version>',
deploymentEnvironment: '<your_environment_name>'
});
SplunkSessionRecorder.init({
realm: '<realm>',
rumAccessToken: '<your_rum_token>'
});
</script>
CDN 🔗
このコードスニペットを初期化して、Splunk CDN 経由のセッション再生を設定します。
<script src="https://cdn.signalfx.com/o11y-gdi-rum/latest/splunk-otel-web-session-recorder.js" crossorigin="anonymous"></script>
<script>
SplunkSessionRecorder.init({
realm: '<realm>',
rumAccessToken: '<your_rum_token>'
});
</script>
NPM 🔗
次のコマンドを使用して、@splunk/otel-web-session-recorder
という名前のパッケージを使用して NPM でセッション再生をセットアップします。
npm install @splunk/otel-web-session-recorder
次に、このコードスニペットを初期化します:
import SplunkSessionRecorder from '@splunk/otel-web-session-recorder'
SplunkSessionRecorder.init({
realm: '<realm>',
rumAccessToken: '<your_rum_token>'
});
セッション再生を非アクティブにする 🔗
セッション再生を非アクティブにするには、以下のいずれかを行います:
特定のセッション再生ではオフにします。
インストルメンテーションを完全に無効にしたい場合は、インストルメンテーションを削除します。
追加のインストルメンテーション設定 🔗
For more information on configuration options, see rrweb guide on GitHub.
情報の再編集 🔗
Text and inputs are redacted by default. You can optionally configure image redaction as well. The following image illustrates what the Splunk RUM homepage looks with text redaction enabled. All text is replaced by *
characters.

To disable all text redaction, set maskTextSelector: false
. To customize which elements are redacted, you can use the rr-mask
class. Any element with this class will have its text redacted. Additionally, you can customize the class name by setting maskTextClass
or maskTextSelector
to a custom value. The custom value can be a regular expression.
Input redaction is handled separately. To disable all input redaction, set maskAllInputs: false
. To customize which inputs are redacted use the maskInputOptions
option.
注釈
In the rrweb documentation, the default value of maskTextSelector
is null
and the default value of maskAllInputs
is false
. However, Splunk RUM changes these default values in our configuration to ensure that all text and inputs are redacted by default. As a result, you must explicitly set maskTextSelector
or maskAllInputs
to false
when no redaction is desired.
Examples:
// Will disable text redaction on all elements except elements with default 'rr-mask' class
SplunkSessionRecorder.init({
// ... other configuration options
maskTextSelector: false
});
// Will redact only elements with 'my-custom-mask-class' class
SplunkSessionRecorder.init({
// ...
maskTextClass: 'my-custom-mask-class',
maskTextSelector: false
});
// Redacts elements with class names starting with "sensitive-" or with specified IDs
SplunkSessionRecorder.init({
// ...
maskTextClass: /^sensitive-.*$/,
maskTextSelector: '#private-info, #hidden-section'
});
// Will disable input redaction on all elements except password inputs
SplunkSessionRecorder.init({
// ...
maskAllInputs: false,
maskInputOptions: {
password: true
}
});
画像の再編集 🔗
To redact images, set inlineImages: false
in the SplunkSessionRecorder.init
function.
For more information on how to customize your instrumentation, see the Privacy section of the rrweb guide on GitHub.
セッションを再生する 🔗
セッションを再生するには、セッションウォーターフォールに関心のあるセッションを開き、再生オプションがあれば、再生 をクリックします。以下に、設定できるいくつかのコントロールを示します:
セッションの速度とウィンドウのサイズを調整します。
ユーザーが同時に複数のアプリケーションを開いていた場合、タイムラインを切り替えて複数の再生セグメントを表示します。
トラブルシューティング 🔗
これらの方法を試してみましょう:
セッションが不完全な場合、ネットワークの帯域幅が十分でないため、セッションの一部が切断される可能性があります。
ユーザーが同じアプリケーションの複数のタブを開いている場合、各タブで利用可能なセッション再生があります。必ずセッション再生の下のタブを開き、興味のあるタブに移動してください。例えば、以下の画像では、チャート上部の青いタブは、ユーザーがページを再度読み込んだり、別のページでアプリを開いたりしたことを表しています。

セッション 再生に要素や画像が表示されません。画像または要素がコンテンツセキュリティポリシーによってブロックされている可能性があります。ポリシーとCDNプロバイダーを確認してください。
アスペクト比が歪んでいます。アスペクト比はユーザーのウィンドウサイズに依存します。