【问题标题】:Azure: just HOW do I debug this?Azure:我该如何调试呢?
【发布时间】:2011-03-30 17:30:52
【问题描述】:

我真的在这里失去了它。无法将调试器附加到进程对我来说是一件大事。因此,我很难找出 Azure 托管应用程序问题的根源。

更糟糕的是,该应用在 Development Fabric 中运行良好,即使在使用在线存储表时也是如此,但在上传和在线运行时可能会变得非常混乱。

我知道 IntelliTrace 是一种方法,但不幸的是,我有一台 x86 机器,并且应用程序使用 RIA 服务。因此,从我的机器上发布它会导致由 RIA 服务引起的错误。我无法通过指定 x64 来构建应用程序,同样的错误再次发生。 (到目前为止,我所知道的部署 RIA Services Azure 应用程序的唯一方法是将其设置为 Any CPU 并从 x64 机器构建/发布它)。

所以 IntelliTrace 不可用。在线 Azure 没有类似于 Development Fabric 的漂亮控制台日志窗口的东西,因此,我不知所措。到目前为止,我只是试图通过注释掉代码部分来让事情正常工作而不是崩溃,但考虑到上传和启动实例所需的时间,这几乎不是最佳选择。

此时如有任何建议,我们将不胜感激。

【问题讨论】:

    标签: visual-studio-2010 debugging azure


    【解决方案1】:

    Azure SDK 具有内置的日志记录/诊断机制: http://msdn.microsoft.com/en-us/library/gg433120.aspx.

    一种方法是部署一个内置一些 Azure 特定工具的版本。

    【讨论】:

      【解决方案2】:

      您可以尝试 RDP 进入角色的实例,并查看任何日志(事件或文件)中是否有任何内容可以帮助您确定故障所在。

      除此之外,我认为 Amasuriel 说得对,因为您确实需要将仪表化构建到您的解决方案中。在构建 Windows Azure 应用程序时,它在我的“必须”列表中。

      【讨论】:

      • 说到那个...我已经在VS的发布设置中设置了远程连接,但是远程连接的选项在Azure管理面板中总是灰显的。
      • 您可能缺少正确的配置文件设置。转到下面的链接并注意他解释单击“配置远程桌面连接...”的步骤。 geekswithblogs.net/shaunxu/archive/2010/12/03/…
      • 我正是这样做的。它仍然是灰色的。
      【解决方案3】:

      如果您可以使用 x64 版本的 Visual Studio 访问另一个工作站,您可以configure Azure diagnostics to collect and copy the crash dumps to Blob Storage

      // Must be called after diagnostic monitor starts. CrashDumps.EnableCollection(false);

      然后您可以下载它们(使用类似Azure Storage Explorer 的工具)并在本地调试它们。

      【讨论】:

        【解决方案4】:

        如果您绝对需要查看控制台上发生了什么,Rob Blackwell 在他的 Azure Run Me 解决方案中嵌入了一个巧妙的小技巧。

        它将 Azure 实例的控制台输出推送到服务总线上。因此,您可以在本地使用该数据,并且实际上可以在您的桌面上监控 Azure 上运行的实例的控制台。

        AzureRunMe 可在此处获得,它是开源的,因此您可以了解他们如何将控制台输出提供给 SB。

        https://github.com/RobBlackwell/AzureRunMe

        【讨论】:

          猜你喜欢
          • 2012-05-07
          • 2012-04-15
          • 1970-01-01
          • 2015-07-14
          • 2012-01-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多