Flutter アプリケーションデータ収集
はじめに
Flutter のデータ収集は Android / iOS のネイティブフレームワークに依存しています。Android / iOS のデータ収集との比較のため、以下の取り消し線でマークされた項目は実装できていない部分です。
データタイプ
Guanceのリアルユーザーモニタリング(RUM)には、以下の 6 種類のデータタイプがあります。
| タイプ |
説明 |
| session |
ユーザーセッション情報の記録。現在のセッションでは、セッション単位でユーザーのページ、リソース、操作、エラー、ロングタスクに関連するアクセスデータを記録します。 |
| view |
ユーザーがモバイルアプリケーションのページにアクセスするたびに、ビューレコードが生成されます。ユーザーが同じページに留まっている間、リソース、ロングタスク、エラー、操作レコードは view_id 属性を介して関連する RUM ビューにリンクされます。 |
| resource |
ユーザーがページにアクセスした際に読み込まれたリソース情報の記録。 |
| error |
モバイルアプリケーションから送出される例外またはクラッシュ。 |
| long_task |
アプリケーション内でメインスレッドを指定の持続時間しきい値以上ブロックするタスクに対して、ロングタスクイベントを生成します。 |
| action |
モバイルアプリケーション内のユーザーアクティビティ(アプリケーション起動、クリック、スワイプ、戻るなど)を記録します。各アクションには一意の action_id が付与されます。 |
グローバル属性
RUM のシナリオ構築やイベントアラートは、以下のグローバル属性を使用してクエリできます。
SDK 属性
| フィールド |
タイプ |
説明 |
sdk_name |
string |
収集器名。固定の名称:
df_macos_rum_sdk
df_linux_rum_sdk
df_windows_rum_sdk
df_web_rum_sdk
df_miniapp_rum_sdk
df_ios_rum_sdk
df_android_rum_sdk |
sdk_version |
string |
収集器のバージョン情報 |
アプリケーション属性
| フィールド |
タイプ |
説明 |
app_id |
string |
必須。RUM アプリケーションの一意の ID 識別子。Guanceコンソールでモニターを作成する際に自動生成されます。 |
env |
string |
必須。環境フィールド。属性値:prod / gray / pre / common / local。各値の説明: prod:本番環境 gray:カナリア環境 pre:ステージング環境 common:日常環境 local:ローカル環境 |
version |
string |
必須。バージョン番号。 |
service |
string |
オプション。所属する業務またはサービスの名称。固定の名称:
df_rum_ios
df_rum_android
df_rum_windows
df_rum_linux |
ユーザー & セッション属性
| フィールド |
タイプ |
説明 |
userid |
string |
未ログインユーザーはランダムな uuid を userid として使用します。ログインユーザーはアプリケーションバックエンドで生成されたユーザー ID を使用します。 |
user_name |
string |
オプション。ユーザー名。 |
user_email |
string |
オプション。ユーザーメールアドレス。 |
session_id |
string |
セッション ID。15 分以上操作がない場合、新しい session_id が生成されます。 |
session_type |
string |
セッションタイプ。参考値:user & synthetics user:RUM 機能で生成されたデータ synthetics:ヘッドレス Synthetic テストで生成されたデータ |
is_signin |
boolean |
登録ユーザーかどうか。属性値:T & F。 |
デバイス & 解像度属性
| フィールド |
タイプ |
説明 |
device |
string |
モバイルデバイスのメーカー |
model |
string |
モバイルデバイスのモデル |
device_uuid |
string |
モバイルデバイスの一意の ID。Android は ANDROID_ID、iOS は UIDevice.identifierForVendor を使用して生成されます。 |
os |
string |
オペレーティングシステム情報 |
os_version |
string |
オペレーティングシステムのバージョン |
os_version_major |
string |
オペレーティングシステムのメジャーバージョン |
screen_size |
string |
画面解像度 |
地理 & ネットワーク属性
| フィールド |
タイプ |
説明 |
ip |
string |
ユーザーアクセス IP アドレス |
isp |
string |
通信事業者 |
network_type |
string |
ネットワーク接続タイプ。属性値の参考:wifi & 2g & 3g & 4g & 5g & unknown(不明なネットワーク)& unreachable(ネットワーク利用不可) |
country |
string |
国 |
country_iso_code |
string |
国の ISO コード |
province |
string |
省 |
city |
string |
都市 |
カスタム属性
グローバル属性以外にも、カスタム属性(SDK はユーザーがカスタムタグデータを付与することをサポートしています)を使用してシナリオを構築し、イベントアラートを設定できます。カスタム属性はグローバル属性ではなく、これを使用することでユーザーがアプリケーションにアクセスする全過程を追跡し、影響を受けたユーザーアクセス状況を特定・発見し、ユーザーアクセスパフォーマンスを監視できます。
その他のデータタイプの属性
Session
属性
| フィールド |
タイプ |
説明 |
session_id |
string |
セッション ID |
session_type |
string |
セッションタイプ。参考値:user & test user:RUM 機能で生成されたデータ test:ヘッドレス Synthetic テストで生成されたデータ |
session_referrer |
string |
セッションの参照元。通常は参照元のページアドレスを記録します。 |
session_first_view_id |
string |
現在のセッションの最初のページの view_id |
session_first_view_name |
string |
現在のセッションの最初のページの URL |
session_last_view_id |
string |
現在のセッションの最後にアクセスしたページの view_id |
session_last_view_name |
string |
現在のセッションの最後のページの URL |
統計指標
| フィールド |
タイプ |
説明 |
time_spent |
number(ns) |
現在のセッションの継続時間 |
session_view_count |
number |
現在のセッションに関連付けられた view_id の数 |
session_error_count |
number |
現在のセッションで発生したエラーの数 |
session_resource_count |
number |
現在のセッションで読み込まれたリソースの数 |
session_action_count |
number |
現在のセッションでのユーザー操作の回数 |
session_long_task_count |
number |
現在のセッションで発生したロングタスクの回数 |
View
属性
| フィールド |
タイプ |
説明 |
view_id |
string |
ページにアクセスするたびに生成される一意の ID |
view_referrer |
string |
ページの参照元(親ページ) |
view_name |
string |
ページ名 |
Action 属性
| フィールド |
タイプ |
説明 |
action_id |
string |
ユーザーのページ操作時に生成される一意の ID |
action_name |
string |
操作名 |
action_type |
string |
操作タイプ(コールド/ウォームスタート、クリックなど) |
指標
| フィールド |
タイプ |
説明 |
loading_time |
number(ns) |
ページ読み込み時間。createView(viewName, duration) を呼び出し、startView() の前に報告した場合のみ生成されます。自動ルート収集ではこの指標は計算されません。 |
time_spent |
number(ns) |
ページ滞在時間 |
is_active |
boolean |
ユーザーがアクティブ状態かどうかを判断します。参考値:true & false |
統計指標
| フィールド |
タイプ |
説明 |
view_error_count |
number |
ページ読み込みごとに発生したエラーの数 |
view_resource_count |
number |
ページ読み込みごとにリクエストされたリソースの数 |
view_long_task_count |
number |
ページ読み込みごとに発生したロングタスクの数 |
view_action_count |
number |
ページ表示中に実行された操作の回数 |
監視指標
| フィールド |
タイプ |
説明 |
cpu_tick_count |
number |
オプション。該当ページの CPU ティック数 |
cpu_tick_count_per_second |
number |
オプション。1 秒あたりの平均 CPU ティック数 |
fps_avg |
number |
オプション。ページの平均フレームレート(FPS) |
fps_mini |
number |
オプション。ページの最小フレームレート(FPS) |
memory_avg |
number |
オプション。ページの平均メモリ使用量 |
memory_max |
number |
オプション。ページの最大メモリ使用量 |
Resource
View 属性
| フィールド |
タイプ |
説明 |
view_id |
string |
ページにアクセスするたびに生成される一意の ID |
view_referrer |
string |
ページの参照元(親ページ) |
view_name |
string |
ページ名 |
Action 属性
| フィールド |
タイプ |
説明 |
action_id |
string |
ユーザーのページ操作時に生成される一意の ID |
action_name |
string |
操作名 |
action_type |
string |
操作タイプ(コールド/ウォームスタート、クリックなど) |
Resource 属性
| フィールド |
タイプ |
説明 |
resource_url |
string |
リソース URL |
resource_url_host |
string |
リソース URL のドメイン部分 |
resource_url_path |
string |
リソース URL のパス部分 |
resource_url_query |
string |
リソース URL のクエリ部分 |
resource_url_path_group |
string |
リソース URL のパスグループ |
resource_type |
string |
リソースのカテゴリ |
resource_method |
string |
リソースのリクエストメソッド |
resource_status |
string |
リソースリクエストのレスポンスステータス値 |
resource_status_group |
string |
リソースリクエストのレスポンスステータスグループ値 |
指標
| フィールド |
タイプ |
説明 |
resource_size |
number |
リソースサイズ。デフォルト単位:byte |
resource_dns |
number(ns) |
リソース読み込みの DNS 解決時間 計算方法:domainLookupEnd - domainLookupStart |
resource_tcp |
number(ns) |
リソース読み込みの TCP 接続時間 計算方法:connectEnd - connectStart |
resource_ssl |
number(ns) |
リソース読み込みの SSL 接続時間 計算方法:connectEnd - secureConnectStart |
resource_ttfb |
number(ns) |
リソース読み込みのリクエスト応答時間 計算方法:responseStart - requestStart |
resource_trans |
number(ns) |
リソース読み込みのコンテンツ転送時間 計算方法:responseEnd - responseStart |
resource_first_byte |
number(ns) |
リソース読み込みのファーストバイト時間 計算方法:responseStart - domainLookupStart |
duration |
number(ns) |
リソース読み込み時間。startResource() / stopResource() で全体の所要時間を記録します。 |
request_header |
string |
リソースリクエストヘッダー |
response_header |
string |
リソースレスポンスヘッダー |
Error
View 属性
| フィールド |
タイプ |
説明 |
view_id |
string |
ページにアクセスするたびに生成される一意の ID |
view_referrer |
string |
ページの参照元(親ページ) |
view_name |
string |
ページ名 |
Action 属性
| フィールド |
タイプ |
説明 |
action_id |
string |
ユーザーのページ操作時に生成される一意の ID |
action_name |
string |
操作名 |
action_type |
string |
操作タイプ(コールド/ウォームスタート、クリックなど) |
Error 属性
| フィールド |
タイプ |
説明 |
error_source |
string |
エラー発生源。参考値:logger & network |
error_type |
string |
エラータイプ logger error type:flutter_crash | java_crash | native_crash | anr_error | anr_crash | ios_crash network error type:network_error |
error_situation |
string |
エラーが発生したタイミング。参考値:startup(起動時)および run(実行時) |
type=network の場合、以下の Network Error 属性が追加されます。
| フィールド |
タイプ |
説明 |
resource_status |
string |
リソースリクエストのレスポンスステータス値 |
resource_url |
string |
リソース URL |
resource_url_host |
string |
リソース URL のドメイン部分 |
resource_url_path |
string |
リソース URL のパス部分 |
resource_url_path_group |
string |
リソース URL のパスグループ |
resource_method |
string |
リソースのリクエストメソッド |
Error 監視属性
| フィールド |
タイプ |
説明 |
memory_total |
string |
オプション。メモリ総量 |
memory_use |
number |
オプション。メモリ使用率 |
cpu_use |
number |
オプション。CPU 使用率 |
battery_use |
number |
オプション。現在のスマートフォンのバッテリー残量 |
locale |
string |
現在のシステム言語 |
指標
| フィールド |
タイプ |
説明 |
error_message |
string |
エラーメッセージ |
error_stack |
string |
エラースタックトレース |
Long Task
View 属性
| フィールド |
タイプ |
説明 |
view_id |
string |
ページにアクセスするたびに生成される一意の ID |
view_referrer |
string |
ページの参照元(親ページ) |
view_name |
string |
ページ名 |
Action 属性
| フィールド |
タイプ |
説明 |
action_id |
string |
ユーザーのページ操作時に生成される一意の ID |
action_name |
string |
操作名 |
action_type |
string |
操作タイプ(コールド/ウォームスタート、クリックなど) |
指標
| フィールド |
タイプ |
説明 |
duration |
number(ns) |
カクつきの持続時間 |
long_task_message |
string |
カクつき情報 |
long_task_stack |
string |
カクつきスタックトレース |
Action
View 属性
| フィールド |
タイプ |
説明 |
view_id |
string |
ページにアクセスするたびに生成される一意の ID |
view_referrer |
string |
ページの参照元(親ページ) |
view_name |
string |
ページ名 |
Action 属性
| フィールド |
タイプ |
説明 |
action_id |
string |
ユーザーのページ操作時に生成される一意の ID |
action_name |
string |
操作名 |
action_type |
string |
操作タイプ(コールド/ウォームスタート、クリックなど) |
指標
| フィールド |
タイプ |
説明 |
duration |
number(ns) |
ページ操作にかかった時間 |
統計指標
| フィールド |
タイプ |
説明 |
action_long_task_count |
number |
操作に関連するロングタスクの回数 |
action_resource_count |
number |
操作に関連するリソースリクエストの回数 |
action_error_count |
number |
操作に関連するエラーの回数 |