如何使用Windows Azure远程桌面调试辅助角色?

时间:2011-07-04 23:40:48

标签: azure remote-debugging remote-desktop azure-worker-roles

我现在已经设置了Windows Azure环境,以便可以使用远程桌面访问我的工作者角色。但是,我不知道目前该怎么办。经过大量挖掘后,我发现一个离线的网站,但在Google的缓存中,提到了从Visual Studio调试器附加到Azure云中运行的辅助角色。但我只有Visual Developer(不是工作室)2010,我已经搜遍了所有,据我所知,没有这样的选项可以连接到远程服务器。我可以毫无错误地将我的项目发布到Azure云,并且我的“工作者角色”的“健康”实例显示为活动且正在运行。

我通过Azure管理门户与RDP建立了联系。登录工作正常,远程桌面窗口出现了。我搜索了很多我能找到的东西,却无法找到我的工人角色。我必须对RDP有错误的印象,因为我希望在登录时看到Worker Role的主要显示形式,就像我在Cloud Emulator中本地调试它一样。但我所看到的只是一个空白的桌面,有一些基本级别的服务器检查和管理例程。我甚至检查了事件查看器中与应用程序相关的消息,但没有看到。

所以现在我不知道我的工作者角色是否真的在运行,尽管来自管理门户的看似积极的状态消息,我仍然希望通过Visual Developer附加到我的Worker角色进行调试,如果可能的话,但我无法弄清楚如何。

任何有这方面经验的人都可以给我一些关于下一步该做什么的可靠提示,请回复。

更新:我相信我的工作者角色可能正在运行,因为我打开了一个命令窗口并做了一个Netstat并看到它正在侦听正确的端口。但是,这可能只是我的Worker Role shell类启动自定义EXE我将它作为生成的进程启动。我还没有确认我的自定义EXE是否还在运行。

UPDATE-2:从命令窗口运行TaskList,列出自定义EXE。

UPDATE-3:一切正常,因为我刚刚对服务进行了远程测试,所以这不是问题。仍然想知道如何从Visual Developer 2010附加到Worker角色进行远程调试,以及是否可以像在Cloud Emulator中进行本地调试时那样看到自定义EXE的显示形式。

- roschler

5 个答案:

答案 0 :(得分:4)

答案 1 :(得分:2)

您可以使用Visual Studio 2012设置远程调试 http://code.msdn.microsoft.com/Remote-Debugging-Windows-dedaaec9

答案 2 :(得分:1)

我想您可以远程访问VM,在那里安装Visual Studio,然后调试该过程......

我还假设有可能启用远程调试(不确定那里涉及到什么,但这样的事情存在,并且它可以通过TCP工作)并从Visual Studio的本地实例进行调试。

据我所知,两者都不常见。

答案 3 :(得分:1)

当你说:

  

但我所看到的只是一个空白的桌面,有一些基本的服务器检查和管理程序。

这正是您使用Azure VM获得的。这是一个基本的操作系统安装,加上它需要运行的Azure内容以及您上传的代码。默认情况下,机器上没有可用的花哨监控或运行状况检查,您可以自己提供这些检查或运行状况检查,而无需使用RDP进入机器进行检查。

RDP非常适合跟踪某些问题,例如检查启动任务是否会运行,检查安装了哪些目录项,以及通常是多管闲事。如果您需要额外的工具来追踪问题,您可以在连接到服务器时安装它们。例如,我已将RDP加入服务器并安装Microsoft Debugging Tools,以追踪内存问题。

答案 4 :(得分:1)

根据其他答案,您最好将日志文件写入本地存储。如果你真的想要,你可以从RDP读取文件。请记住,在Azure上进行调试并不是很简单,这是正确的。

我的想法是,也许你可以运行process using the user's credentials. I目前无法验证,但是当你使用rdp时,你可以更好地看到ui。