【问题标题】:Enabling logging/debugging in Azure worker role to azure storage在 Azure 辅助角色中启用日志记录/调试到 azure 存储
【发布时间】:2015-02-10 03:33:10
【问题描述】:

我有一个 .net 项目,我正尝试将其部署为 Azure 中的辅助角色。我可以直接从 Visual Studio 发布文件,但是当工作角色运行时,我得到一个未捕获的异常。我正在尝试从辅助角色启用日志记录到 azure 存储,以便获取有关异常的更多信息,但在配置 MIT 时遇到问题。任何人都可以就启用此日志记录的最佳方式提供帮助吗?

【问题讨论】:

  • 您应该在此处遵循 MSDN 指南:msdn.microsoft.com/en-us/library/azure/dn186185.aspx。请注意,它不是实时的 - 输出是批处理的并定期出现。根据异常发生的位置,您可能看不到任何内容。出于故障排除的目的,您可以启用 RDP 并远程访问您的服务器,并根据需要查看事件日志:blogs.msdn.com/b/mast/archive/2013/07/20/…
  • 谢谢!我现在会经历这个。目前使用远程桌面可能是最简单的,然后将日志记录到存储帐户设置中以长期使用。

标签: visual-studio azure-worker-roles azure-diagnostics azure-deployment


【解决方案1】:

我不是推荐的 Azure Worker Role 日志记录过程的忠实拥护者,即使用 Trace.WriteLine() 方法,因为我不觉得它为我的日志记录需求提供了足够的灵活性,而且我认为它看起来很糟糕当我的代码大量散布着 Trace.WriteLine() 语句时,代码就是艺术等等。我也不喜欢 Trace 语句并不总是被记录,并且如果 Worker Role 出现问题或通常误入歧途,可能会“丢失”。

因此,我想出了一种方法,通过 NLog 将日志文件写入本地存储,然后按计划刷新到 Azure 存储。奇迹般有效。

我已将其记录在博客文章中:https://modhul.wordpress.com/2014/10/28/capturing-custom-logs-from-azure-worker-roles-using-azure-diagnostics/

如果我想实时查看我的日志文件(而不是等待它们被刷新到 Azure 存储),我 RDP 到 Worker Role 实例并启动一个 BareTail (http://www.baremetalsoft.com/baretail/) 的副本,它是实时查看日志文件的好方法,它还允许您为错误、信息、警告等添加颜色编码。

【讨论】:

  • 这很有趣。我会将其传递给我们的开发人员。到目前为止,我一直在使用 RDP 通过事件查看器中的 Azure 部分获取任何异常。绝对不是一个好的解决方案。
  • 嗨@k2737 - 我在回答中添加了一些关于通过 RDP 监控日志文件的详细信息。
  • @NickHeppleston 您的博客文章的链接似乎已损坏——您是否有机会更新您的答案以包含相关信息?
  • 你有没有机会在某个地方找到一个例子?您的博客链接已失效。
  • 仅链接答案,链接已损坏。
猜你喜欢
  • 2014-09-17
  • 1970-01-01
  • 2015-06-17
  • 2013-08-07
  • 1970-01-01
  • 1970-01-01
  • 2013-02-15
  • 2012-12-13
  • 1970-01-01
相关资源
最近更新 更多