如何在AzureFunction日志中查看异常信息

时间:2018-07-10 20:05:26

标签: azure logging azure-functions

所以我有一个看起来像这样的AzureFunction:

    [FunctionName("MyFunction")]
    public static void Run([QueueTrigger("myqueue", Connection = "AzureWebJobsStorage")]string message, TraceWriter log)
    {
        try
        {
            // Do some stuff
        }
        catch (Exception ex)
        {
            log.Error(ex.Message, ex: ex);
            throw;
        }
    }

发生故障时,我可以在门户中查看日志(或在应用程序见解中),并查看来自异常的错误消息,但是我一生无法找到任何地方来查看完整的异常详细信息(堆栈跟踪等)完整序列化的异常是否实际上记录在任何地方?如果不是,让我将异常传递给log.Error()方法有什么意义?

1 个答案:

答案 0 :(得分:1)

您是正确的例外,并且假定您的功能已针对Application Insights配置,堆栈应该出现在Application Insights中(如果不是,我强烈建议您这样做)。有几种方法可以找到它们,但我发现最简单的方法是从Application Insights中的“失败”菜单选项中进行。您将列出失败的操作名称。选择一种操作将带您总结各种异常类型。您可以选择自己感兴趣的异常类型,然后它将加载该异常的所有实例,并为您提供一些有关您可能感兴趣的异常的建议(您可以进行排序等)

请记住,异常详细信息可能会落后几分钟。这个MSDN文章很好地涵盖了它,并具有我今天所看到的当前UI(随着时间的推移,它已经有所变化)

https://docs.microsoft.com/en-us/azure/application-insights/app-insights-asp-net-exceptions#diagnosing-failures-using-the-azure-portal