Debug di un servizio cloud di Azure pubblicato con Visual Studio e IntelliTraceDebugging a published Azure cloud service with Visual Studio and IntelliTrace

Con IntelliTrace è possibile registrare informazioni di debug approfondite per un'istanza del ruolo quando è in esecuzione in Azure.With IntelliTrace, you can log extensive debugging information for a role instance when it runs in Azure. Se è necessario individuare la causa di un problema, è possibile usare i log di IntelliTrace per esaminare il codice da Visual Studio come se fosse in esecuzione in Azure.If you need to find the cause of a problem, you can use the IntelliTrace logs to step through your code from Visual Studio as if it were running in Azure. In effetti, IntelliTrace registra i dati fondamentali dell’esecuzione del codice e dell’ambiente quando l'applicazione Azure è in esecuzione come servizio cloud in Azure e consente di riprodurre i dati registrati da Visual Studio.In effect, IntelliTrace records key code execution and environment data when your Azure application is running as a cloud service in Azure, and lets you replay the recorded data from Visual Studio.

È possibile usare IntelliTrace se Visual Studio Enterprise è installato e l'applicazione Azure è destinata a .NET Framework 4 o versione successiva.You can use IntelliTrace if you have Visual Studio Enterprise installed and your Azure application targets .NET Framework 4 or a later version. IntelliTrace raccoglie informazioni per i ruoli Azure.IntelliTrace collects information for your Azure roles. Le macchine virtuali per questi ruoli eseguono sempre sistemi operativi a 64 bit.The virtual machines for these roles always run 64-bit operating systems.

In alternativa, è possibile usare il debug remoto per connettersi direttamente a un servizio cloud in esecuzione in Azure.As an alternative, you can use remote debugging to attach directly to a cloud service that's running in Azure.

Importante

IntelliTrace è destinato esclusivamente a scenari di debug e non deve essere usato per una distribuzione di produzione.IntelliTrace is intended for debug scenarios only, and should not be used for a production deployment.

Configurare un'applicazione Azure per IntelliTraceConfigure an Azure application for IntelliTrace

Per abilitare IntelliTrace per un'applicazione Azure, è necessario creare e pubblicare l'applicazione da un progetto Azure di Visual Studio.To enable IntelliTrace for an Azure application, you must create and publish the application from a Visual Studio Azure project. È necessario configurare IntelliTrace per l'applicazione Azure prima di pubblicarla in Azure.You must configure IntelliTrace for your Azure application before you publish it to Azure. Se si pubblica l'applicazione senza configurare IntelliTrace, è necessario ripubblicare il progetto.If you publish your application without configuring IntelliTrace, you need to republish the project. Per altre informazioni, vedere Pubblicazione di progetti di servizi cloud di Azure con Visual Studio.For more information, see Publishing an Azure cloud services projects using Visual Studio.

  1. Quando si è pronti distribuire l'applicazione Azure, verificare che le destinazioni di compilazione del progetto siano impostate su Debug.When you are ready to deploy your Azure application, verify that your project build targets are set to Debug.

  2. In Esplora soluzioni fare clic con il pulsante destro del mouse sul progetto e scegliere Pubblica dal menu di scelta rapida.In Solution Explorer, right-click project, and, from the context menu, select Publish.

  3. Nella finestra di dialogo Pubblica applicazione Azure selezionare la sottoscrizione di Azure e scegliere Avanti.In the Publish Azure Application dialog, select the Azure subscription, and select Next.

  4. Nella pagina Impostazioni selezionare la scheda Impostazioni avanzate.In the Settings page, select the Advanced Settings tab.

  5. Per raccogliere i log di IntelliTrace per l'applicazione quando viene pubblicata nel cloud, selezionare l'opzione Abilita IntelliTrace.Turn on the Enable IntelliTrace option to collect IntelliTrace logs for your application when it is published in the cloud.

  6. Per personalizzare la configurazione di base di IntelliTrace, selezionare Impostazioni accanto ad Abilita IntelliTrace.To customize the basic IntelliTrace configuration, select Settings next to Enable IntelliTrace.

    Collegamento alle impostazioni di IntelliTrace

  7. Nella finestra di dialogo Impostazioni di IntelliTrace è possibile specificare gli eventi da registrare, se si desidera raccogliere informazioni sulle chiamate, i moduli e i processi di cui raccogliere i log e quanto spazio allocare per la registrazione.In the IntelliTrace Settings dialog, you can specify which events to log, whether to collect call information, which modules and processes to collect logs for, and how much space to allocate to the recording. Per ulteriori informazioni su IntelliTrace, vedere Debug con IntelliTrace.For more information about IntelliTrace, see Debugging with IntelliTrace.

    Impostazioni di IntelliTrace

Il log di IntelliTrace è un file di log circolare delle dimensioni massime specificate nelle impostazioni di IntelliTrace (le dimensioni predefinite sono 250 MB).The IntelliTrace log is a circular log file of the maximum size specified in the IntelliTrace settings (the default size is 250 MB). I log di IntelliTrace vengono raccolti in un file nel file system della macchina virtuale.IntelliTrace logs are collected to a file in the file system of the virtual machine. Quando si richiedono i log, a questo punto uno snapshot viene creato e scaricato nel computer locale.When you request the logs, a snapshot is taken at that point in time and downloaded to your local computer.

Dopo che il servizio cloud di Azure è stato pubblicato in Azure, è possibile determinare se IntelliTrace è stato abilitato dal nodo di Azure in Esplora server, come illustrato nella figura seguente:After the Azure cloud service has been published to Azure, you can determine if IntelliTrace has been enabled from the Azure node in Server Explorer, as shown in the following image:

Esplora server - IntelliTrace abilitato

Scaricare i log di IntelliTrace per un'istanza del ruoloDownload IntelliTrace logs for a role instance

Tramite Visual Studio, è possibile scaricare i log di IntelliTrace per un'istanza del ruolo attenendosi alla procedura seguente:Using Visual Studio, you can download IntelliTrace logs for a role instance by following these steps:

  1. In Esplora Server, espandere il nodo Servizi cloud e quindi individuare l'istanza del ruolo di cui si desidera scaricare i log.In Server Explorer, expand the Cloud Services node, and locate role instance whose logs you wish to download.

  2. Fare clic con il pulsante destro del mouse sull'istanza del ruolo e dal menu di scelta rapida scegliere Visualizza log IntelliTrace.Right-click the role instance, and from the s context menu, select View IntelliTrace Logs.

    Opzione del menu Visualizza log IntelliTrace

  3. I log di IntelliTrace vengono scaricati in un file in una directory nel computer locale.The IntelliTrace logs are downloaded to a file in a directory on your local computer. Ogni volta che si richiedono i log di IntelliTrace, viene creato un nuovo snapshot.Each time that you request the IntelliTrace logs, a new snapshot is created. Quando i log vengono scaricati, Visual Studio mostra lo stato di avanzamento dell'operazione nella finestra Log attività di Azure.While the logs are being downloaded, Visual Studio displays the progress of the operation in the Azure Activity Log window. Come illustrato nella figura riportata di seguito, è possibile espandere la voce dell'operazione per visualizzare altri dettagli.As shown in the following figure, you can expand the line item for the operation to see more detail.

VST_IntelliTraceDownloadProgress

È possibile continuare a lavorare in Visual Studio durante il download dei log di IntelliTrace.You can continue to work in Visual Studio while the IntelliTrace logs are downloading. Quando il download del log è terminato si apre automaticamente in Visual Studio.When the log has finished downloading, it opens in Visual Studio.

Nota

I log di IntelliTrace possono contenere eccezioni generate e poi gestite dal framework.The IntelliTrace logs might contain exceptions that the framework generates and handles afterwards. Codice interno del framework genera queste eccezioni come parte normale di avvio di un ruolo, pertanto può essere ignorato.Internal framework code generates these exceptions as a normal part of starting up a role, so you may safely ignore them.

Passaggi successiviNext steps