Azure诊断,WADLogs,在Azure管理门户中查看

Azure诊断,WADLogs,在Azure管理门户中查看,azure,azure-storage,azure-worker-roles,azure-diagnostics,Azure,Azure Storage,Azure Worker Roles,Azure Diagnostics,这可能是一个非常愚蠢的问题,我是Azure新手 我正在使用Azure SDK 2.5 我在Azure上部署了一个工作人员角色,我正在使用诊断跟踪执行 Trace.TraceInformation("Service WorkerRole has stopped"); 是否有一种方法可以从Azure管理门户在服务器资源管理器中查看WadLogs文件?还是将数据传输到blob存储或其他地方以便在线查看的方法 基本上,当我的工作者角色从Azure管理门户引发异常时,我希望能够轻松查看的所有内容 您需要

这可能是一个非常愚蠢的问题,我是Azure新手

我正在使用Azure SDK 2.5

我在Azure上部署了一个工作人员角色,我正在使用诊断跟踪执行

Trace.TraceInformation("Service WorkerRole has stopped");
是否有一种方法可以从Azure管理门户在服务器资源管理器中查看WadLogs文件?还是将数据传输到blob存储或其他地方以便在线查看的方法


基本上,当我的工作者角色从Azure管理门户引发异常时,我希望能够轻松查看的所有内容

您需要使用worker角色设置一个存储帐户,以便将日志存储在表存储中。在配置文件中添加以下代码


您可以使用Application insights监视Azure门户中的工作人员角色。从技术上讲,微软仍在增加对控制台和其他非网络应用程序的支持,但我能够使已经存在的东西满足我的需要

我根据在门户上创建了一个Application insight

然后,我在VisualStudio中使用Nuget包管理器添加了Application insights API、Application insights for website(尽管我的工作者角色不是web应用程序)和Application insights跟踪侦听器

然后,我通过向worker角色添加以下内容创建了ApplicationInsight实例

using Microsoft.ApplicationInsights;

namespace WorkerRole
{
public class WorkerRole : RoleEntryPoint
{
    private TelemetryClient tc = new TelemetryClient();
        tc.Context.InstrumentationKey = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX";
然后将其添加到worker角色中的onStart方法中

using Microsoft.ApplicationInsights;

namespace WorkerRole
{
public class WorkerRole : RoleEntryPoint
{
    private TelemetryClient tc = new TelemetryClient();
        tc.Context.InstrumentationKey = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX";
您可以在Azure门户中找到检测密钥


运行或部署我的工作者角色后,我可以查看Azure门户中的所有Trace.TraceInformation和TraceError语句,并添加tc.TrackError和tc.TrackEvent语句来跟踪错误、异常和事件

我已经进行了此设置我已经可以在Visual studio的Server Explorer视图中查看跟踪日志我想要的是在Azure管理门户中查看这些日志的方法。无法直接在Azure管理门户中查看日志。跟踪和日志信息是结构化信息,因此保存到WADLogsTable中表存储中的表。将它们传输到blob存储(用于非结构化数据或二进制文件)真的有意义吗?至于查看任何azure存储数据,我们始终必须使用客户端应用程序。在线门户网站不支持查看任何类型azure存储的数据,无论是Blob、队列还是表。