首页 > 解决方案 > 如何在 .Net 框架中长时间读取和写入 Azure 中的控制台?

问题描述

我们有一个 .net framework 4.5.1 MVC web 应用程序。我们希望在应用程序运行时将信息记录到控制台。显然,在我的本地计算机上运行应用程序时,我可以看到输出窗口和我的日志。但是当它部署到 Azure 时呢?如何查看我的日志?我应该在 Azure 中的哪个位置登录(或者我的选择是什么)?

我试过:

Console.WriteLine(" Console.WriteLine");
System.Diagnostics.Trace.WriteLine(" Trace.WriteLine");
System.Diagnostics.Trace.TraceInformation(" Trace.TraceInformation");
System.Diagnostics.Trace.TraceWarning(" Trace.TraceWarning");
System.Diagnostics.Trace.TraceError(" Trace.TraceError");

但是除了日志流,我在任何地方都找不到我的日志,这不是我想要的,因为它只能工作 12 小时。

标签: asp.net-mvcazureappinsights

解决方案


我试图在我的本地复制,我可以通过以下方式查看我的日志:

. 启用诊断

. 从 Kudu 控制台下载日志

从诊断设置中,我启用了以下内容以查看日志

在此处输入图像描述

在此处输入图像描述

从应用程序洞察力我们可以看到我们的应用程序的以下数据 在此处输入图像描述

而且,使用KuduConsole我们可以下载日志文件。从应用程序服务 >高级工具> 点击GO

在此处输入图像描述

打开 kudu 后**Debug console**,我们可以从左侧下载我们的日志,如下所示:

在此处输入图像描述

但是除了日志流,我在任何地方都找不到我的日志,这不是我想要的,因为它只能工作 12 小时。

还要感谢Amit Apple发布您的建议作为帮助其他社区成员的答案。

“您可以通过将调用的App 设置设置DIAGNOSTICS_TEXTTRACETURNOFFPERIOD为(远)大于12 * 60 * 60 * 100012 小时(以毫秒为单位)的值来做到这一点。” 如GItHub中所述

有关详细信息,请参阅此 SO 线程如何在 azure 应用服务中查看控制台或跟踪输出?Console.WriteLine 或 Trace.TraceError


推荐阅读