Azure Service Fabric激活错误

20

我的一个应用程序部署到了一个 Service Fabric 集群 失败了,并且触发了一个不健康的评估,显示一个错误事件: 在 CodePackage 激活期间出现错误。服务主机以退出代码 3762504530 终止。

然而,在部署应用程序的节点上,健康状态显示为:应用程序已成功激活。

有没有办法获得关于错误事件更详细的报告?

1个回答

32

我通常会通过 RDP 连接到受影响的节点,并在此情况下执行以下操作:

  • 检查控制台输出/控制台错误日志:Service Fabric 将控制台输出(如果通过 <ConsoleRedirection>ServiceManifest.xml 中启用)和错误存储在日志文件夹中。在 DEV 集群上,这应该是 C:\SfDevCluster\Data\_App\Node.x\<ApplicationTypeFolder>\log。在 Azure 的默认安装中,它应该是 D:\SvcFab\_App\<ApplicationTypeFolder>\log

  • 事件日志:.NET 异常有时会出现在“应用程序”日志中,但 Service Fabric 也有自己的子文件夹,其中可能包含有用的事件。

  • PerfView:PerfView 是一个非常强大的工具,可以监视 ETW 事件(Windows 事件跟踪)。由于 .NET 异常被记录为 ETW 事件,因此 PerfView 可能会向您显示有用的异常。以下是一个快速教程:

    • 下载并运行 PerfView
    • 进入“Collect -> Collect”。取消选择“Merge”。
    • 单击“开始收集”。
    • 现在通过“Process Explorer”终止正在运行的 Service Fabric 服务。片刻之后,Service Fabric 将再次启动它。
    • 如果您的服务没有运行,请重新部署您的服务。
    • 服务失败后,在 PerfView 中按“停止收集”。
    • 现在在左侧树中双击“事件”-这将打开所有记录的 ETW 事件。
    • 搜索“Microsoft-Windows-DotNETRuntime/Exception/Start”,然后双击它。
    • 现在,您应该看到按时间顺序列出的所有 .NET 异常。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接