查看网站错误日志

网站管理员和开发人员使用 Power Pages 为其客户创建网站。 开发人员经常在开发网站时调试问题。 若要帮助调试,您可以访问详细的错误日志以了解网站的任何问题。 可通过多种方式获取网站的错误日志。

小费

若要了解执行本文中的任务所需的角色,请阅读门户管理任务需要的管理员角色

自定义错误

如果网站中发生任何服务器端异常,默认将显示定制的错误页面和用户友好的错误消息。 若要配置错误消息,请参阅显示自定义错误消息

但是,如果出于调试目的,最好查看详细的 ASP.NET 错误页面,也称为死亡黄屏 (YSOD)。 详细的错误页面有助于获取服务器错误全栈。

死亡黄屏。

若要启用 YSOD,需要在网站上禁用自定义错误

备注

  • 建议仅在开发阶段禁用自定义错误,一旦投入使用则启用自定义错误。
  • 自定义错误始终显示在专用站点上,并且无法关闭。

有关自定义错误的详细信息:显示自定义错误页面

禁用自定义错误

可在 Power Pages 网站中禁用自定义错误,以便网站中发生任何服务器端异常时显示详细的异常消息。

  1. 打开 Power Platform 管理中心

  2. 在“资源”部分下,选择 Power Pages 站点

  3. 选择您的网站。

  4. 站点操作菜单中,选择禁用自定义错误

  5. 在确认消息中选择禁用。 禁用自定义错误时,网站会重新启动,暂时不可用。

启用自定义错误

可在网站中启用自定义错误,以便显示外观专业的页面,而不是 YSOD。 如果应用程序中发生任何异常,此页面都将提供有意义的信息。

  1. 打开 Power Platform 管理中心

  2. 在“资源”部分下,选择 Power Pages 站点

  3. 选择您的网站。

  4. 站点操作菜单中,选择启用自定义错误

  5. 在确认消息中选择启用。 启用自定义错误时,网站会重新启动,暂时不可用。

备注

  • 如果更改网站相连的实例,将把自定义错误设置设为启用。 如果需要,必须禁用自定义错误。
  • 正在更改网站相连的实例时,不得启用或禁用自定义错误,否则将显示错误消息。

显示自定义错误消息

可将网站配置为显示外观专业的自定义错误,而不是一般错误。

若要定义自定义错误,请使用内容片段 Portal Generic Error。 此片段中定义的内容在错误页面中显示。 此内容片段并非现成可用,必须经过创建。 内容片段的类型可以是文本HTML。 若要创建或编辑内容片段,请参阅使用内容片段自定义内容

备注

如果内容片段是使用 liquid 代码编写的,将跳过,不予显示。

启用自定义错误时,错误页面将显示以下结构的消息:

<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

自定义错误消息。

备注

如果因为网站无法连接到 Microsoft Dataverse 或内容片段在 Dataverse 中不可用而导致网站无法检索片段,将显示错误消息。

访问网站错误日志

开发和发布网站后,仍然需要可以访问网站日志,以便调试用户报告的调试问题。 若要访问日志,请配置网站以将任何应用程序错误发送到您负责的 Azure Blob 存储帐户中。 通过访问网站错误日志,可高效响应用户查询,因为您了解问题的详细信息。 若要将网站错误日志存储到 Azure Blob 存储中,必须从 Power Platform 管理中心启用诊断日志记录。

备注

如果更改网站相连的 Dataverse 实例,将禁用诊断日志记录。 必须再次启用诊断日志记录。

启用诊断日志记录

  1. 打开 Power Platform 管理中心

  2. 在“资源”部分下,选择 Power Pages 站点

  3. 选择您的网站。

  4. 站点操作菜单中,选择启用诊断日志

  5. 出现标题为启用诊断记录的侧面板,输入以下值:

    • 选择保留时间段:将门户错误日志保存在 blob 存储中的持续时间。 所选持续时间之后,将删除错误日志。 可以选择下列值之一:

      • 一天

      • 七天

      • 30 天

      • 60 天

      • 90 天

      • 180 天

      • 始终

        默认情况下,保留期为 30 天。

      备注

      UI 当前仅显示默认的 30 天保留期。 对保留期的更改不会反映在 UI 中。

    • Azure Blob 存储服务的连接字符串:用于存储网站错误日志的 Azure Blob 存储服务的 URL。 该 URL 的最大长度为 2048 个字符。 如果该 URL 的长度超过 2048 个字符,将显示错误消息。 有关连接字符串的详细信息:配置 Azure 存储连接字符串

  6. 选择启用

配置诊断日志记录之后,将在 Azure 存储帐户中创建一个新的 telemetry-logs blob 容器,并将日志写入该容器中存储的 blob 文件内。 以下屏幕截图在 Azure 存储资源管理器中显示 telemetry-logs blob 容器:

屏幕阅读器使用的文本。

成功启用诊断日志记录之后,以下操作将在站点操作菜单中变为可用:

  • 禁用诊断日志记录:允许您禁用门户的诊断日志记录配置。
  • 更新诊断日志记录配置:允许您更新或移除门户的诊断日志记录配置。

更新诊断日志记录

  1. 打开 Power Platform 管理中心

  2. 在“资源”部分下,选择 Power Pages 站点

  3. 选择您的网站。

  4. 网站操作菜单中,选择更新诊断日志记录配置

  5. 在“更新诊断日志记录配置”面板中,输入下列值:

    • 是否要更新 Azure Blob 存储服务的连接字符串?:允许您指定是否更新 Azure Blob 存储服务的连接字符串。 默认情况下,不会选择此选项。

    • 选择保持期:将网站错误日志保存在 blob 存储中的持续时间。 所选持续时间之后,将删除错误日志。 可以选择下列值之一:

      • 一天
      • 七天
      • 30 天
      • 60 天
      • 90 天
      • 180 天
      • 始终

      默认情况下,保留期为 30 天。

    • Azure Blob 存储服务的连接字符串:用于存储网站错误日志的 Azure Blob 存储服务的 URL。 该 URL 的最大长度可以为 2048 个字符。 如果该 URL 的长度超过 2048 个字符,将显示错误消息。 仅当选中了是否要更新 Azure Blob 存储服务的连接字符串? 复选框,才会显示此字段。 有关连接字符串的详细信息:配置 Azure 存储连接字符串

禁用诊断日志记录

  1. 打开 Power Platform 管理中心

  2. 在“资源”部分下,选择 Power Pages 站点

  3. 选择您的网站。

  4. 站点操作菜单中,选择禁用诊断日志记录

  5. 在确认消息中选择禁用

显示插件错误

开发网站时还经常发生下面的情况:Dataverse 环境中编写的自定义插件和业务逻辑生成错误。 这些错误通常可以通过禁用自定义错误启用诊断日志记录访问。 在某些情况下,直接在网站中显示这些错误的速度更快,从而可以更快地诊断问题。 您可以通过将网站配置为在网页中显示 Dataverse 产生的自定义插件错误来完成此任务。

若要显示自定义插件错误,请创建站点设置Site/EnableCustomPluginError,并将其值设置为 True。 将在屏幕上显示自定义插件错误,而不是普通错误。 错误将仅显示插件错误的消息部分,而不是显示整个堆栈跟踪。

下面是显示自定义插件错误的屏幕:

  • 列表
    • 检索记录
  • 基本窗体
    • Retrieve
    • 创建/更新等
  • 多步窗体
    • Retrieve
    • 创建/更新等

如果不存在此站点设置,默认将把它视为 false,并且不显示插件错误。

在 DevTools 扩展中查看服务器端错误

您可以使用 Power Pages DevTools 扩展查看服务器端错误消息和可能的解决方案。 此外,您也可以通过记录自定义消息来调试服务器端代码。 在 Power Pages DevTools 扩展:使用 liquid 记录自定义消息中了解更多信息。