Insights 用 Mobile のデフォルトイベントとデフォルト属性

New Relic Mobile は、New Relic Insights へ自動的にデータを送信します。そこに含まれるデフォルト属性を使うことで、アプリのパフォーマンス、バグ、ユーザーの行動履歴を追跡することができます。また、デフォルトの属性に加えて、カスタム属性やカスタムイベントを使うことで、さらに多くの情報を追跡できるようになります。全デフォルト属性については、Insights 属性をご覧ください。

利用可能な属性の表示

New Relic Mobile は、デフォルトでユーザーのインタラクションデータに含まれる属性情報を自動的に New Relic Insights へ送信します。Mobile イベントに対して NRQL クエリを利用して、New Relic Mobile に問い合わせを行うことで、アプリがいつ、どこで、どのように使われたのか知ることができます。

Mobile データ収集機能を利用するには、iOS SKD 及び Android SDK のバージョン 5.0.0 以上が必要となります。

どのような属性が利用可能かは、Data Explorer を使って確認できます。アクセスする手順は以下の通りです。

  1. New Relic のメニューバーから、Insights > Data Explorer へアクセスします。
  2. 青色のイベントタイプドロップダウンからイベントタイプを選択すると、イベントの属性データが表示されます。

Mobile イベントを問い合わせるには、以下のフォーマットを使ってください。

SELECT uniqueCount(uuid) FROM Mobile

以下の Mobile のイベントタイプは、サブスクリプションレベルによって、デフォルトで利用可能です。

  • Mobile
  • MobileSession
  • MobileCrash
  • MobileRequestError

カスタム属性とカスタムイベントの追加

SKD 標準の Mobile データに加えて、Mobile 用 カスタム属性とカスタムイベント API を使って、属性やイベントを追加することができます。この API を使うことで、ユーザー名やジェスチャから、製品IDや購入イベントで支払われた金額まで、モバイルアプリ内で発生したデータならなんでもキャプチャすることができます。詳しくは、iOS SDK API の利用 [英語]Android SDK API の利用 [英語] をご覧ください。

モバイル属性用クエリの例

Mobile イベントを利用することで、モバイルデータを様々な角度から理解、比較することができます。インタラクション、位置、デバイスプロファイル、アプリのバージョン、クラッシュ、パフォーマンスなどのデータを利用できます。

以下の例では、Mobile イベントタイプを使って、どんな種類のデータをクエリに利用できるのかを示しています。

  • インタラクション: どのインタラクションがユーザー間で最も人気があるか?
    SELECT uniqueCount(uuid) FROM Mobile SINCE 1 day ago FACET name
  • 位置: 中国のどの地域にユーザーは多いのか?
    SELECT uniqueCount(uuid) FROM Mobile WHERE appName='New Relic iOS' AND countryCode='CN' FACET region SINCE 7 days ago
  • デバイスプロファイル: どれくらいのユーザーが最新の OS バージョンを使っているのか?
    SELECT uniqueCount(uuid) FROM Mobile FACET osVersion SINCE 7 days ago
  • アプリのバージョン: 昨日リリースしたバージョン3.1.1.2353 によって、セッションの持続時間の増加しているか?
    SELECT histogram(sessionDuration) FROM Mobile WHERE appVersion='3.1.1.235' COMPARE WITH 2 days ago
  • パフォーマンス: アプリの 30秒後のメモリ使用量はどれくらいか?
    SELECT histogram(memUsageMb) FROM Mobile WHERE appName='New Relic iOS' AND sessionDuration > 30
  • クラッシュ: アプリで最も頻繁に発生している例外とクラッシュは何か?
    SELECT count(*) FROM Mobile WHERE appName='New Relic iOS' AND category='Crash' FACET crashException 

デフォルトの Mobile 属性

New Relic Mobile は、デフォルトで以下の属性があります。

属性 説明
appId モニターしているアプリの ID。例: 35091
appBuild クラッシュしたバイナリのビルド番号。開発者は、この属性を使用して、クラッシュしたアプリの正確なビルド番号を知ることができます。
appName モニターしているアプリの名前。例: New Relic iOS
appVersion モニターしているアプリのバージョン番号。例: 2.2.9
appVersionId モニターしているアプリで使っている New Relic エージェントのバージョン番号
architecture armv7、arm64 のようなデバイスのプロセッサーのアーキテクチャー。
asn データが報告された際に、デバイスが関連付けられた AS 番号(Autonomous System Number)。
asnOwner ASN のテレコム所有者。
carrier アプリがデータの転送に使っている上でモバイルネットワーク。例: WiFiVerizonSprint
category 収集した Mobile データのタイプ。標準のカテゴリは、SessionInteractionCrash。API を利用してカスタムイベントを追加している場合は、Custom カテゴリとなります。
city モニターしているアプリが示している街。例: PortlandSeattle
countryCode モニターしているアプリが示している国。例: イギリスは、GB。国コードのリストを確認したい場合は、ISO 3166-1 alpha-2 [英語] をご覧ください。
crashException クラッシュに関連する例外。例外が存在する場合のみ。例: java.lang.NullPointerException
crashMessage クラッシュに関連するメッセージ。存在する場合のみ。
device デバイス名。例: iPad AirGalaxy S5
deviceGroup デバイスのカテゴリ。例: iPod TouchiPad
deviceManufacturer デバイスの製造元。例: MotorolaHTC
deviceModel デバイスのモデル番号。例: XT1039SM-G900F
interactionDuration デバイス上でインタラクション時に発生したレンダリング時間の合計。単位は秒。レンダリング時間に加えて、通常は、インタラクションに関わる全外部呼び出しも含みます。
install TRUE の場合、新規にインストールされたアプリからのセッションであることを示します。
lastInteraction クラッシュイベント直前のインタラクション。存在する場合のみ。例:App Launch
memUsageMb アプリで消費されたメモリの合計量。単位は、MB。60秒毎に更新されます。
name イベントに関連するインタラクション名。例: ApplicationsListFragmentNavigationDrawerFragment
newRelicVersion アプリ上で実行中のエージェントのバージョン番号。例: 4.232.0
osMajorVersion アプリケーションのホスト OS の簡易バージョン番号。例: iOS 7.0.4 の場合は、iOS 7 となります。
osName アプリケーションのホスト OS 名。例: iOSAndroid
osVersion アプリのホスト OS の正確なバージョン番号。例: iOS 7ではなく、iOS 7.0.4
regionCode モニターしているアプリが動いている国の特定の地域。アメリカなら、地域は州となります。
runTime アプリを実行しているデバイスの Java のランタイムのバージョン。
sessionDuration ユーザーがアプリを利用している時間。単位は秒。セッションがクラッシュした場合は、(他のイベントや属性は記録されていますが) sessionDuration は記録されません。

セッションが 10 分以上の場合では、セッションが続いているうちに、Interaction イベントやカスタムイベントのカテゴリ が、Insights へ送信されます。このイベントには、sessionDuration 属性は含まれません。セッションのイベントカテゴリと同様に、セッション終盤に記録したイベントは、処理時間に含まれます。

sessionId 単一のユーザーセッションを表す ID
timeSinceLastInteraction 直前のインタラクションからクラッシュイベントまでの時間。単位は秒。
timeSinceLoad モバイルセッションの開始からイベントが発生するまでの時間。単位は秒。このイベントとは、Session、Interaction、Crash といった組み込みイベントカテゴリや、エージェント API を経由で送信されたカスタムイベントを指します。
upgradeFrom アップグレードされたことを検知後、アップグレード前の古いバージョン番号を取得できます。例: 2.2.8。現在のバージョン番号を得るには、version 属性を使います。
uuid デバイス上にインストールされたアプリケーションを識別する ID。例: B8B0BC30-0235-11E4-9191-0800200C9A66