How can we improve the Windows Azure Tools for Visual Studio?

Add the ability to remote debug my application running in the cloud

195 votes
Vote
Sign in
Check!
(thinking…)
Reset
or sign in with
  • facebook
  • google
    Password icon
    I agree to the terms of service
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Jim NakashimaJim Nakashima shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →
    planned  ·  Haris MajeedAdminHaris Majeed (Admin, Microsoft Windows Azure) responded  · 

    At PDC 2010, we announced the introduction of new diagnostic information in Azure, and remote desktop functionality to make it easier to connect to a running instance for monitoring and troubleshooting. Both will will be generally available later this year.

    We look forward to hearing how much these new features improve the remote debugging experience for you.

    7 comments

    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      Submitting...
      • Scott OseychikScott Oseychik commented  ·   ·  Flag as inappropriate

        Respectfully, a couple of points in regards to debugging ...

        >> I agree that debugging in production doesn't make real sense

        Why not? What if it's all you're left with to restore production service using a debugger + conditional breakpoints?

        >> When you build and release a commercial product how often do you get to connect to it, if ever?

        This is a daily occurrence in any software companies' Escalation Services / Sustained Engineering group(s). For example, attaching & rewriting a process' instruction pointer to temporarily "step around" bugs is common practice.

        Kind Regards,
        Scott Oseychik

      • Mike KellyMike Kelly commented  ·   ·  Flag as inappropriate

        I think one win here would be able to more easily get application level traces into logging. Right now, I have to instrument every method to get a trace of what's happening on the cloud fabric with e.g. my worker role and persist that logging information to the diagnostics API. It would be great if (like DEBUG) there is a switch which when I compile my assembly with it, it turns on tracing for a source file or class in the cloud fabric - so I start seeing in application logs the real-time execution trace of m my code without having to do a lot of manual work.

      • Roy MoreyRoy Morey commented  ·   ·  Flag as inappropriate

        I agree that debugging in production doesn't make real sense, however, debugging an application in Staging is valuable because there are always differences between real Azure and the local development sandbox. So it helpful to be able to step through a service or web app running on Azure and track down permissions problems, connnectivity/network issues, etc. While it's always possible to debug using a trace log, modern debuggers were specifically developed to avoid that kind of pain.

      • Jim NakashimaJim Nakashima commented  ·   ·  Flag as inappropriate

        We get a fair amount of feedback that we need to improve the ability to debug an application in the cloud and we'd like to better understand what that means to you.

        We have a fairly comprehensive set of diagnostics available with the November release -- how else can we help you diagnose/debug your applications running in the cloud? (since the 2 comments don't support wanting the ability to attach a debugger to role instances running in the cloud)

      • ShaunTShaunT commented  ·   ·  Flag as inappropriate

        I agree with Joannes -- this might sound great in theory but it seems like a significant technical hurdle. Isn't this what the local development sandbox is for? When you build and release a commercial product how often do you get to connect to it, if ever?

      • Joannes VermorelJoannes Vermorel commented  ·   ·  Flag as inappropriate

        We have been working a lot on debugging our own cloud app. Bottom line is: debugger is really NOT the way to go to troubleshoot any complex distributed apps. Although, it might look like reassuring to be able to plug the debugger on a remote instance, in my (limited) experience the amount of bugs that you would be able to catch that way would be close to zero.

      Feedback and Knowledge Base