Web サイトのエラー ログを表示する
Web サイト管理者と開発者は、Power Pages を使用して顧客の Web サイトを作成できます。 開発者は、Web サイトの開発中に問題をデバッグすることがよくあります。 デバッグを助けるために、Web サイトのすべての問題に関する詳細なエラー ログにアクセスできます。 Web サイトのエラー ログを取得する方法はいくつかあります。
チップ
この記事でタスクを実行するのに必要なロールについては、ポータル管理タスクに必要な管理者ロールをお読みください。
カスタム エラー
ご使用の Web サイトでサーバー側の例外が発生すると、ユーザー フレンドリなエラー メッセージを含むカスタマイズしたエラー ページが既定で表示されます。 エラー メッセージを構成するには、カスタム エラー メッセージの表示を参照してください。
ただし、デバッグの目的の場合は、死のイエロー スクリーン (YSOD) とも呼ばれる、ASP.NET の詳細エラー ページを参照することをお勧めします。 この詳細エラー ページにより、フルスタックのサーバー エラーを取得することが容易になります。
YSOD を有効にするには、Web サイトでの カスタム エラーを無効にする必要があります。
注意
- 開発フェーズにあるときだけカスタム エラーを無効にし、正式にサービスを開始した時点でカスタム エラーを有効にすることをお勧めします。
- カスタム エラーはプライベート サイトに常に表示され、オフにすることはできません。
カスタム エラーの詳細: カスタム エラー ページの表示
カスタム エラーを無効にする
サーバー側で例外が発生した場合に詳細な例外メッセージを表示するように、Power Pages Web サイトでのカスタム エラーを無効にできます。
Power Platform 管理センター を開きます。
リソース セクションの下の Power Pages サイト を選択します。
Web サイトを選択します。
サイト アクション メニューから、カスタム エラーを無効にするを選択します。
確認メッセージで、無効にするを選択します。 カスタム エラーが無効化されている間、Web サイトは再起動し、一時的に利用できなくなります。
カスタム エラーを有効にする
Web サイトでのカスタム エラーを有効にして、YSOD ではなく、プロフェッショナルなデザインのページを表示することができます。 このページは、アプリケーションで例外が発生した場合に、有益な情報を提供します。
Power Platform 管理センター を開きます。
リソース セクションの下の Power Pages サイト を選択します。
Web サイトを選択します。
サイト アクション メニューから、カスタム エラーを有効にするを選択します。
確認メッセージで、有効にするを選択します。 カスタム エラーが有効化されている間、Web サイトは再起動し、一時的に利用できなくなります。
注意
- Web サイトが接続されているインスタンスを変更した場合、カスタム エラーの設定が有効化に設定されます。 必要に応じて、カスタム エラーを再度無効にする必要があります。
- Web サイトが接続されているインスタンスの変更中にカスタム エラーを有効または無効にすることはできません。そうしなかった場合、エラー メッセージが表示されます。
カスタム エラー メッセージの表示
Web サイトを構成して、一般的なエラーではなく、プロフェッショナルなデザインのカスタム エラーを表示することができます。
カスタム エラーを定義するには、そのコンテンツ スニペット Portal Generic Error
を使用します。 このスニペットで定義されるコンテンツは、エラー ページに表示されます。 このコンテンツ スニペットは、あらかじめ用意されているわけではなく、作成する必要があります。 コンテンツ スニペットのタイプにはテキストまたは HTML があります。 コンテンツ スニペットの作成または編集をするには、コンテンツ スニペットを使用したコンテンツのカスタマイズ を参照してください。
注意
コンテンツ スニペットに流動コードが記述されている場合、その流体コードは表示されません。
カスタム エラーを有効にすると、エラー ページにメッセージが次の構造で表示されます。
<Content Snippet
>
<Error ID
>
<Date and time
>
<Portal ID
>
次のメッセージは、HTML タイプのコンテンツ スニペットを使用した、カスタム エラー メッセージの例です:
This is a custom error, file a support ticket with screenshot of error by clicking here
注意
Web サイトが Microsoft Dataverse に接続できないためにコンテンツ スニペットを取得できない場合、またはコンテンツ スニペットが Dataverse で得られない場合、エラー メッセージが表示されます。
Web サイト エラー ログへのアクセス
Web サイトを開発して公開した後、ユーザーから報告された問題をデバッグするために、さらに Web サイト ログにアクセス可能にする必要があります。 ログにアクセスするには、所有する Azure Blob Storage アカウントにすべてのアプリケーション エラーを送信するように、Web サイトを構成することができます。 Web サイト エラー ログにアクセスすると、問題の詳細を把握できるので、ユーザーのクエリに効率的に対応できます。 Web サイト エラー ログを Azure Blob Storage に入力するには、Power Platform 管理センターからの診断ログを有効にする必要があります。
注意
Web サイトが接続されている Dataverse インスタンスを変更した場合、診断ログが無効になります。 診断ログを再度有効にする必要があります。
診断ログを有効にする
Power Platform 管理センター を開きます。
リソース セクションの下の Power Pages サイト を選択します。
Web サイトを選択します。
サイト アクション メニューから、診断ログを有効にするを選択します。
サイドパネルに 診断ログを有効にする が表示されますので、次の値を入力します。
保持期間の選択: Blob Storage でポータル エラー ログを保持する期間。 エラー ログは選択した期間が経過すると削除されます。 次のいずれかの値を選択できます。
1 日
7 日
30 日
60 日
90 日
180 日
常時
既定では、保持期間は 30 日です。
注意
現在、UI には既定の保持期間である 30 日間のみが表示されます。 保持期間の変更は UI に反映されません。
Azure Blob Storage サービスの接続文字列: Web サイト エラー ログを格納する Azure Blob Storage サービスの URL。 この URL の長さの上限は 2048 文字です。 URL の長さが 2048 文字を超えると、エラー メッセージが表示されます。 接続文字列の詳細: Azure Storage 接続文字列の構成
有効にするを選択します。
診断ログが構成されると、Azure Storage アカウントに新しいテレメトリ ログ BLOB コンテナーが作成され、コンテナーに格納されている BLOB ファイルにログが書き込まれます。 次のスクリーンショットは、Azure Storage Explorer のテレメトリー ログ Blob コンテナーを示しています。
診断ログが正常に有効になると、サイト アクション メニューから以下の操作が使用可能になります。
- 診断ログを無効にする: ポータルの診断ログの構成を無効にすることができます。
- 診断ログの構成の更新: ポータルの診断ログの構成の更新または削除を可能にします。
診断ログの更新
Power Platform 管理センター を開きます。
リソース セクションの下の Power Pages サイト を選択します。
Web サイトを選択します。
サイト アクション メニューから、診断ログ構成の更新を選択します。
[診断ログの構成の更新] パネルで、次の値を入力します。
Azure Blob Storage サービスの接続文字列を更新しますか?: Azure Blob Storage サービスの接続文字列を更新するかどうかを指定できます。 既定では、このオプションが選択されていません。
保持期間の選択: Blob Storage で Web サイト エラー ログを保持する期間。 エラー ログは選択した期間が経過すると削除されます。 次のいずれかの値を選択できます。
- 1 日
- 7 日
- 30 日
- 60 日
- 90 日
- 180 日
- 常時
既定では、保持期間は 30 日です。
Azure Blob Storage サービスの接続文字列: Web サイト エラー ログを格納する Azure Blob Storage サービスの URL。 この URL の長さの上限は 2048 文字になります。 URL の長さが 2048 文字を超えると、エラー メッセージが表示されます。 このフィールドは、Azure Blob Storage サービスの接続文字列を更新しますか。チェック ボックスがオンになっている場合にのみ表示されます。 接続文字列の詳細: Azure Storage 接続文字列の構成
診断ログを無効にする
Power Platform 管理センター を開きます。
リソース セクションの下の Power Pages サイト を選択します。
Web サイトを選択します。
サイト アクション メニューから、診断ログを無効にするを選択します。
確認メッセージで、無効にするを選択します。
プラグイン エラーの表示
Web サイトの開発中によく発生するもう 1 つのシナリオは、Dataverse 環境で記述されたカスタムのプラグインおよびビジネス ロジックによって生成されるエラーです。 通常、これらのエラーには、カスタム エラーを無効にするまたは診断ログを有効にするでアクセスできます。 場合によっては、問題を素早く診断するには、これらのエラーを Web サイトに直接表示するほうがより速い場合があります。 Dataverse からのカスタムプラグインのエラーを Web ページに表示するように構成することで、このタスクを実行することができます。
カスタム プラグイン エラーを表示するには、サイト設定Site/EnableCustomPluginError
を作成し、値を True に設定します。 これにより、画面に汎用エラーではなくカスタム プラグイン エラーが表示されます。 このエラーは、完全なスタック トレースではなく、プラグイン エラーのメッセージ部分のみを表示します。
以下に、カスタム プラグイン エラーが表示される画面を示します:
- リスト
- レコードの取得
- 基本フォーム
- 取得する
- 作成/更新など
- マルチステップ フォーム
- Retrieve
- 作成/更新など
サイト設定が存在しない場合は、既定でサイト設定は false として扱われ、プラグイン エラーは表示されません。
DevTools 拡張機能でサーバー側のエラーを表示する
Power Pages DevTools 拡張機能を使用すると、サーバー側のエラー メッセージと潜在的な解決策を表示できます。 また、カスタム メッセージをログに記録することで、サーバー側のコードをデバッグすることもできます。 詳細については、Power Pages DevTools 拡張機能: liquid を使用してカスタム メッセージをログに記録する を参照してください。