カスタム Action の追加¶
リアルユーザーモニタリング(RUM)の初期化後、addAction('<NAME>','<JSON_OBJECT>') API を使用することで、収集対象外の Action 指標データをカスタムで追加できます。
Action の追加¶
ファイルをダウンロードし、ローカルでインポートします。
RUM SDK を使用してカスタム Action を追加し、フィールドの競合を回避する方法¶
window.DATAFLUX_RUM.addAction を使用してカスタムデータを追加する際は、SDK のプリセットフィールドとの競合を避ける必要があります。競合が発生すると、そのフィールドのデータ設定が無効になります。以下に誤った例と注意事項を示します。
サンプルコード(フィールド競合を含む)
window.DATAFLUX_RUM.addAction('test action', {
view_url: 'a', // SDK のプリセットフィールド "view_url" と競合し、このフィールドは無効になります。
b: 'b',
c: 'c',
})
改善コードと説明
SDK のプリセットフィールドと同じ名前を使用せず、カスタムフィールド名やプレフィックスを付けることで競合を解決できます。
// 推奨するカスタムフィールドの命名方法。競合を回避します。
window.DATAFLUX_RUM.addAction('test action', {
custom_view_url: 'a', // カスタムフィールド名を使用し、SDK との競合を回避
b: 'b',
c: 'c',
})
注意事項
- フィールド命名の原則: • SDK のプリセットフィールド(viewurl、view_name などの一般的なフィールド)は使用しないでください。これらのフィールドは SDK の内部ロジックで使用される可能性があり、競合の原因となります。 • カスタムデータを区別するために、プレフィックス(custom、user_ など)を追加することを推奨します。
- フィールド競合の影響: • フィールド名が競合した場合、SDK はそのフィールドのカスタム値を無視します。 • 必要なデータが正しく渡されない場合は、フィールド名の競合がないか確認することが特に重要です。
以下は予約フィールドの一覧です。
[
"sdk_name",
"sdk_version",
"app_id",
"env",
"service",
"version",
"source",
"userid",
"user_email",
"user_name",
"session_id",
"session_type",
"session_sampling",
"is_signin",
"os",
"os_version",
"os_version_major",
"browser",
"browser_version",
"browser_version_major",
"screen_size",
"network_type",
"device",
"view_id",
"view_referrer",
"view_url",
"view_host",
"view_path",
"view_name",
"view_path_group",
"view_url_query",
"action_id",
"action_ids",
"view_in_foreground",
"display",
"session_has_replay",
"is_login",
"page_states",
"session_sample_rate",
"session_replay_sample_rate",
"drift",
"action_type",
"action_name",
"duration",
"action_error_count",
"action_resource_count",
"action_frustration_types",
"action_long_task_count",
"action_target",
"action_position"
]