お客様組織でのトラブルシューティング
学習の目的
この単元を完了すると、次のことができるようになります。
- ログインアクセスとそのメリットについて説明する。
- ログインアクセスに適用される制限を挙げる。
- 対話型デバッグとそれを使用できる場所について説明する。
お客様組織で支援
カスタマーサポートはソフトウェアビジネスの一部です。たとえ史上最高のソリューションを開発したとしても、お客様は支援を必要とするときがあります。
問題を簡単に修正できる場合もあります。お客様からメール、電話、または Service Cloud で連絡があり、十分な情報が提供されれば、修正や、業務復旧支援ができるでしょう。
一方で、問題がより捉えにくく、お客様の組織で何が起きているかを正確に把握できれば役立つ場合もあります。では、どうやって変えているのでしょうか?
お客様にスクリーンショットや動画の提供を依頼してもよいでしょう。適切なソフトウェアがあり、スケジュールを調整できれば、画面共有セッションを設定することもできます。ただし、こうした方法ではお客様の時間と労力が必要になります。また、パートナーが直接お客様組織を操作して問題を調査することは許可されません。
お客様組織へのログインアクセス
お客様の組織にログインして、問題を解明し、潜在的に直接修正できれば、そのほうが楽ですよね。それができるのです! お客様にログインアクセスの許可を依頼します。ログインアクセスが許可されると、特定のユーザーとしてお客様が指定した期間、組織にログインできます。ユーザー名とパスワードを求める必要はありません。これはセキュリティ上やってはならないことです。
特定のユーザーとしてログインするため、ログインアクセスの許可は LoginAs と呼ばれることもあります。
ログインアクセスの要求
ログインアクセスを要求する手順は、次のとおりです。
- お客様に個人設定に移動するように依頼します。
- [ログインアクセスの許可] をクリックするように指示します。
- お客様に [アクセス期間] を指定してもらいます。これは、パートナーが問題をトラブルシューティングして解決するのに十分な時間にする必要があります。
- [保存] をクリックします。
- お客様にパートナーの会社名が表示されない場合、次のことを確認します。
- お客様のシステム管理者が、システム管理者以外がログインアクセスを許可する権限を有効にしている。
- お客様にパッケージのライセンスがある。
- パッケージのライセンスが組織全体に供与されている場合、「ユーザーの管理」権限を持つシステム管理者がパートナーにアクセスを許可している。
- 組織の設定 [管理者は任意のユーザーでログインできます] が無効になっている。
- ライセンス管理組織 (LMO) ユーザーアカウントの「登録者組織にログイン」権限があることを確認します。システム管理者はこの権限をパートナーのユーザーアカウントに直接、または権限セット経由で付与できます。
お客様がパートナーにログインアクセスを許可できたら、パートナーは組織にログインできます。
- ライセンス管理アプリケーション (LMA) の [Subscribers (登録者)] に移動します。LMA ではお客様は登録者と呼ばれます。
- お客様の組織を名前または組織 ID で検索します。
- 検索結果で目的の組織レコードをクリックします。登録者組織レコードページには、組織の組織情報ページから名前と取引先責任者、組織 ID、インスタンスが表示されます。このページには、組織の制限、ログインアクセス、パッケージ、ライセンスに関する情報も含まれます。取引先責任者情報は、対応する LMA のリード、取引先、取引先責任者のレコードに表示される内容と少し異なる場合があります。
- [組織の詳細] ページで、ユーザーの名前の横にある [ログイン] をクリックします。ログイン時に使用したユーザーと同じ権限を使用できます。
多要素認証を使用した LoginAs へのアクセスの保護
ライセンス管理組織 (LMO) にログインするときには、多要素認証 (MFA) が必要です。MFA が必要となるユーザーは、登録者サポートコンソールにアクセスする必要がある LMO ユーザーのみです。この要件により、登録者は組織にアクセスするユーザーの ID を検証することでセキュリティをさらに強化できます。また、登録者組織にログインするユーザーをより詳細に制御することもできます。詳細は、『Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド)』の「Log in to Subscriber Orgs (登録者組織へのログイン)」を参照してください。
アクセスを制限して信頼を維持
ご存じのとおり、信頼は Salesforce の最優先事項です。お客様の組織へのアクセス権を取得するということは、お客様のデータにアクセスするということです。これはどの組織でも簡単には許可されない権限です。ログインアクセスは、効率よく慎重にお客様組織の問題に対処できる信頼されたサポートおよびエンジニアリング担当者についてのみ要求します。「Log Into Subscriber Console (登録者コンソールにログイン)」権限を使用してサポートチームを編成し、その権限を必要な担当者にのみ付与します。
ログインアクセスのしくみ
ログインアクセスで登録者組織に接続するとき、お客様には提供されていない便利なツールをいくつか使用できます。実行できる操作は、次のとおりです。
- 管理パッケージコードを表示する。このコードはエンドユーザーには表示されません。
- パッケージのデバッグログを調査する。これらのログと表示されたソースコードを使用して、お客様組織で何が起きているのか状況を把握できます。
- ISV カスタマーデバッガーを使用して、実行時の管理パッケージコードを調査およびデバッグする。
機能 | ログインアクセスで使用可能 | 顧客が使用可能 |
---|---|---|
登録者組織にログインする |
X |
X |
管理パッケージコードを表示する |
X |
|
管理パッケージのデバッグログを表示する |
X |
|
カスタム設定の保護されたデータを表示および編集する |
X |
|
ISV カスタマーデバッガーセッションを開始する |
X |
|
OAuth アクセスを許可する |
X |
|
多要素認証を使用する |
X |
X |
デバッグログには、お客様の問題をトラブルシューティングするのに役立つデバッグ情報が含まれています。登録者組織のデバッグログを表示する手順は、次のとおりです。
- [設定] から、[クイック検索] ボックスに
Debug Logs
(デバッグログ) と入力します。 - [デバッグログ] を選択します。
- リストビューでデバッグログを参照します。
ログとソースコードは非常に有効で、これだけあればお客様の問題を修正して、正常な状態に戻せることもあります。ただし、さらに深く調べる場合は、そのための機能も用意されています。
捉えにくい問題への対応
実際、問題を理解するのにパッケージで何が起きたかを調べることが必要になる場合もあります。そのためにデバッガーがあります。デバッガーを使用してコードのバグを見つけたことがあれば、その便利さはご存じでしょう。登録者組織のデバッグで使用できるデバッガーが用意されています。
これまでデバッガーを使用したことがない場合、この機会を活かしましょう。実行中のプログラムのデータを直接調べることができます!
ISV カスタマーデバッガーは、Visual Studio Code 向け Salesforce 拡張機能 が統合された開発環境 (IDE) に含まれています。
このデバッガーは、デバッガーに求められる機能をほぼすべて備えています。
とは言うものの、このデバッガーにはいくつか制限があります。
- 一度に開けるデバッグセッションは 1 つだけです。つまり、一度にデバッグできるお客様は 1 つだけです。同時に複数のデバッグセッションを実行する必要がある場合、どのようなオプションがあるかパートナー取引先マネージャーにお問い合わせください。
- デバッガーが接続できるのは Sandbox 組織のみです。本番組織を対話型でデバッグすることはできません。お客様が本番組織の問題を特定している場合、Sandbox 組織を作成し、データを入力してエラーを再現します。Full Sandbox で、本番環境に最も近い環境を作り出すことができます。
- 一度に最大 2 つの実行スレッドをデバッグできます。
- デバッグセッションは、活動がないと 1 時間後にタイムアウトします。
- デバッグセッションの持続時間は、活動の有無に関係なく、4 時間以内です。
デバッグセッションの設定と開始
Visual Studio Code IDE で作業中にデバッグセッションを設定して開始するには、Visual Studio マーケットプレイスサイトに記載の手順に従います。
顧客満足度で評価を築く
ライセンスを適切に管理し、お客様のニーズに対応すれば、ビジネスを成長させ、AppExchange での評価を築くことができます。問題への対応やバグの調査にかかる時間が減れば、より多くの時間を優れた新機能の追加と新たな方向性での作業に使うことができます。
リソース
- Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド): Troubleshoot Subscriber Issues (登録者の問題のトラブルシューティング)
- Salesforce 開発者ブログ投稿: Salesforce for VS Code: Apex Replay Debugger and More (VS Code 向け Salesforce: Apex Replay Debugger など)
- Visual Studio Code 向け Salesforce 拡張機能: ISV カスタマーデバッガー