AppExchange App Analytics について知る
学習の目的
この単元を完了すると、次のことができるようになります。
- AppExchange App Analytics のデータ種別を挙げる。
- パッケージログファイル、パッケージ利用状況概要、登録者のスナップショットという各データ種別のビジネスユースケースを認識する。
AppExchange App Analytics とは?
Robert は潜在顧客が AppExchange リスティングをどのように操作しているかに関するデータを取得しました。次に Robert が必要としているのは、登録者が Cloudy Health ソリューションとそのコンテンツをどのように利用しているかに関するデータです。
App Analytics は、登録者が AppExchange ソリューションをどのように操作しているかに関する利用状況データを提供します。このデータを使用して、次のことを行います。
- 顧客離れのリスクを特定する。
- 機能開発の決定に役立つ情報を提供する。
- 登録者エクスペリエンスを向上させる。
一般的な使用事例
Leung と Robert は、アプリケーション 3.0 の開発フェーズで自分たちがビジネス判断を下すのに App Analytics のデータが役に立つと理解していますが、App Analytics は他の同僚にも役立つのでしょうか? もちろんです。App Analytics は、さまざまな使用事例をサポートしています。
パートナーユーザー | 目標 | App Analytics がどのように役立つか |
---|---|---|
プリセールスエンジニアまたはアカウントエグゼクティブ |
|
|
カスタマーサクセス担当者 |
|
|
製品マネージャー |
|
|
ソフトウェアエンジニア |
|
|
App Analytics のしくみ
上記のように App Analytics の目標を明確にしたら、次に必要なのは App Analytics に登録者データを取り込むことです。そのしくみがわかりやすいように、次に Cloudy Health の例を紹介します。
- Cloudy Health の登録者は、年次健康診断を受けるリマインダーを作成します。
- このインタラクション (オブジェクトの作成) は、ログファイルのデータ行として Salesforce に保存されます。
- Salesforce コードによって、ログ行が保存、整理され、取得できるようになります。
- Robert は App Analytics クエリ要求を作成し、要求したデータを目的の形式で取得します。
App Analytics は、セキュリティレビューに合格し、ライセンス管理アプリケーション (LMA) に登録されているパッケージで使用できます。データを視覚化するには、CRM Analytics またはサードパーティの分析ツールを使用します。
App Analytics には、任意の時点のスナップショット、月次概要、時系列という 3 つのデータ種別があります。各データ種別は、一部の CRUD (作成、参照、更新、削除) 活動とその他のデータ (登録者別のカスタムオブジェクトレコード数など) を提供します。
データの種類 | 説明 | 内容 |
---|---|---|
登録者のスナップショット |
ソリューションの登録者アカウントの任意の時点の活動を記録した小さなファイル ユーザー固有の活動は含まれません |
含まれる: 本番組織とトライアル組織のイベントからのオブジェクトレコード数 除外: Sandbox 組織とスクラッチ組織のイベント |
パッケージ利用状況概要 |
カレンダー月ごとに集計された概要のメトリクスを提供する中サイズのファイル |
含まれる: 本番組織のイベント 除外: Sandbox 組織、スクラッチ組織、トライアル組織のイベント |
パッケージログファイル |
利用可能なすべてのデータ (UI、API ベース、Lightning ベース、Apex 操作) を含む大きなファイル CRUD 操作は、パッケージ内のすべてのコンポーネントとカスタムオブジェクトについてパッケージごとに記録されます |
含まれる: 本番組織、Sandbox 組織、トライアル組織のイベント 除外: スクラッチ組織のイベント |
App Analytics についてのヒントがもっと必要ですか? 『Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド)』の「App Analytics Use Cases (App Analytics の使用事例)」を参照してください。Salesforce と一緒に App Analytics のデータ種別も進化します。Salesforce リリースノートと『Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド)』の「Get Started with AppExchange App Analytics (AppExchange App Analytics の使用開始)」で定期的に最新情報を確認してください。
Robert の次のステップは、各データ種別のディメンション (絞り込みと集計に使用されるデータ列) と基準 (KPI の作成に使用される評価指標値) を調べることです。パッケージ利用状況概要、パッケージログファイル、登録者のスナップショットという各データ種別のディメンションと基準の完全なリストは、『Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド)』で確認できます。
パッケージ利用状況概要
パッケージ利用状況概要には、UI、API、Lightning、Apex の操作に関連するデータが含まれます。概要は、翌月の初めに使用可能になります。たとえば、3 月の利用状況概要は、4 月の初めに入手できます。
パートナーと登録者はどちらもパッケージ利用状況データにアクセスできます。パートナーは、パッケージを所有する LMA 組織から SOAP API で AppAnalyticsQueryRequest オブジェクトを使用して概要を要求します。登録者は、組織の [Package Usage (パッケージの利用状況)] ページから、インストールしたセキュリティレビュー済みパッケージの利用状況概要をダウンロードします。
主要なディメンション:
-
managed_package_namespace
: ソリューションを識別します。 -
custom_entity_type
: カスタムオブジェクトまたはコンポーネントの種別 (Lightning コンポーネントなど) を示します。 -
custom_entity
: 登録者がアクセスしたコンポーネントまたはカスタムオブジェクトを識別します。 -
month
: 利用状況概要の月を表します。 -
organization_id
: 登録者組織の 15 文字の ID です。 -
user_id_token
: パッケージにアクセスしたユーザーの匿名化された ID です。ユーザーの詳細が変更されてもトークンは一定期間保持されます。 -
user_type
: UI または API を介して Salesforce サービスにアクセスしているユーザーのユーザーライセンスカテゴリを識別します。
次の基準は、特定の種別のコードに対するさまざまな種別のアクションをカウントします。
基準 | コードの種別 |
---|---|
|
Apex の実行、CRUD 活動 |
|
カスタムオブジェクト |
|
Lightning コンポーネント、カスタム Visualforce コード |
登録者のスナップショット
登録者のスナップショットでは、任意の時点のカスタムエンティティ、パッケージ、組織データを参照します。日付範囲を要求し、その範囲内の有効な日付ごとに 1 つのスナップショットを受け取ります。たとえば、StartTime=2023-01-18T00:00:00Z EndTime=2023-01-21T00:00:00Z は、1 月 18 日、1 月 19 日、1 月 20 日の合計 3 つのスナップショットを返します。
パッケージログファイル
パッケージログファイルには、午前 12:00 ~午前 12:00 (UTC 時間) の 24 時間における登録者の活動がリストされます。管理パッケージにはパッケージ化されたコンポーネントが含まれ、パッケージ利用状況ログの各行では、ユーザーがいずれかのコンポーネントに対して行ったインタラクションが記述されます。
インタラクションを理解するには、ログの各行 (またはレコード) を分析して、以下に着目します。
- アクセスされたパッケージ化コンポーネント
- パッケージ化されたコンポーネントを誰が操作したか
- パッケージ化されたコンポーネントのインタラクションはどのように行われたか
最後に、特定のインタラクションデータを分析します。次の表を使用して、分析の主要なログデータ要素を判断します。
アクセスされたパッケージ化コンポーネント | コンポーネントを操作したユーザー | ユーザーがコンポーネントをどのように操作したか |
---|---|---|
パッケージ化されたコンポーネントを一意に識別するには、次の項目を組み合わせます。
|
|
パッケージ化されたコンポーネントをユーザーがどのように操作したかは、 それぞれのインタラクションに関連付けられているその他の一般的な項目は次のとおりです。
|
パッケージ利用状況ログの内容と、使用可能なすべてのデータ要素の分析方法についての詳細は、『Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド)』の「How to Read App Analytics Package Usage Log Data (App Analytics パッケージ利用状況ログデータの読み方)」を参照してください。
どのパッケージを誰がどのように操作したかを特定したら、次は特定のインタラクションデータを分析します。
カスタムオブジェクトと外部オブジェクトのインタラクションデータ
パッケージ利用状況ログに custom_entity_type
が CustomObject
または ExternalObject
であるログレコードがある場合は、オブジェクトが作成、参照、更新、削除 (CRUD) される原因となったアクションをユーザーが実行したことを意味します。
パッケージ化されているコンポーネントで発生した CRUD の種別と回数を確認するには、以下に着目します。
operation_type
operation_count
Apex REST API 要求、SOAP API 要求、スケジュール済みジョブの実行、キュー可能 Apex 実行など、多くのユーザー操作によって CRUD が発生します。操作で使用可能な標準データと補足データの詳細については、『Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド)』の「Custom and External Object Interactions (カスタムおよび外部オブジェクトのインタラクション)」を参照してください
Lightning インタラクションデータ
パッケージ利用状況ログで custom_entity_type
が LightningComponent または LightningPage である各レコードは、パッケージ化された Lightning コンポーネントまたはページとのインタラクションを記述します。
ユーザーがパッケージ化された LightningPage または LightningComponent コンポーネントを操作すると、log_record_type
の LightningInteraction が作成されます。ユーザーが Lightning ページを表示すると、log_record_type
の LightningPageView が作成されます。
Apex インタラクションデータ
パッケージ利用状況ログで custom_entity_type
が ApexClass または ApexTrigger である各レコードは、パッケージ化された Apex クラスまたはトリガーとのインタラクションを記述します。Visualforce インタラクションデータ
パッケージ利用状況ログで custom_entity_type
が VisualforcePage である各レコードは、パッケージ化された Visualforce ページとのインタラクションを記述します。
CRM Analytics アセットのインタラクションデータ
パッケージ利用状況ログで custom_entity_type
が AnalyticsDashboard、AnalyticsLens、または AnalyticsRecipe である各レコードは、パッケージ化された CRM Analytics アセットとのインタラクションを記述します。
この単元では、AppExchange App Analytics の 3 つのデータ種別について学習し、各種別の使用事例について知りました。また、各データが何を表すのかも学習しました。次の単元では、Robert と Leung が App Analytics を取得し、データ要求を自動化します。
リソース
- Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド): App Analytics Use Cases (App Analytics の使用事例)
- Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド): Get Started with AppExchange App Analytics (AppExchange App Analytics の使用開始)
- Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド): How to Read App Analytics Package Usage Log Data (App Analytics パッケージ利用状況ログデータの読み方)