Esporta (0) Stampa
Espandi tutto

Inizializzare o modificare la configurazione di Diagnostica Windows Azure

Aggiornamento: dicembre 2013

I dati di diagnostica possono essere raccolti importando il modulo Diagnostica Windows Azure nel modello del servizio e configurando le origini dati da cui vengono raccolti questi dati. Il monitoraggio Diagnostica viene eseguito in Windows Azure e nell'Emulatore di calcolo di Azure per raccogliere i dati di diagnostica per un'istanza del ruolo. Se il modulo Diagnostica è stato importato nel modello del servizio per un ruolo, il monitoraggio Diagnostica viene avviato automaticamente all'avvio di un'istanza del ruolo. Per raccogliere i dati di diagnostica, è necessario aggiungere le origini dati alla configurazione del monitoraggio Diagnostica. Se il monitoraggio Diagnostica non viene configurato in modo esplicito, all'avvio del ruolo verrà utilizzata la configurazione predefinita. Solo alcune delle origini dati disponibili vengono aggiunte al monitoraggio Diagnostica per impostazione predefinita, pertanto è necessario configurare la raccolta di altre origini dati utilizzando il file diagnostics.wadcfg. I dati di diagnostica verranno raccolti e archiviati nell'istanza del ruolo, ma non verranno salvati in modo permanente nello spazio di archiviazione, a meno che non sia stato specificato un account di archiviazione nel file ServiceConfiguration.cscfg. Dopo aver distribuito l'applicazione in Windows Azure, è possibile modificare in modalità remota la configurazione del monitoraggio Diagnostica da un'applicazione eseguita esternamente a Windows Azure. Per una descrizione dettagliata dei passaggi necessari per abilitare la diagnostica nell'applicazione, vedere Come abilitare il modulo Diagnostica in un servizio cloud.

Per raccogliere i dati di diagnostica, è necessario importare il modulo Diagnostica nel modello del servizio per ogni ruolo da cui si desidera raccogliere questi dati. Il modulo viene importato aggiungendo un elemento Import nel file ServiceDefinition.csdef. Nell'esempio seguente viene illustrato l'elemento Import definito per un ruolo Web:

<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="MyHostedService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2012-10.1.8">
  <WebRole name="WebRole1">
    <!--<Sites> ... </Sites> -->
    <!-- <Endpoints> ... </Endpoints> -->
    <Imports>
      <Import moduleName="Diagnostics" />
    </Imports>
  </WebRole>
</ServiceDefinition>

Per ulteriori informazioni sulla definizione del file di definizione e del file di configurazione del servizio, vedere Riferimenti agli schemi. Per ulteriori informazioni sulla definizione del modello per un servizio ospitato, vedere Impostare un servizio cloud per Windows Azure.

I dati di diagnostica non vengono salvati in modo permanente nello spazio di archiviazione per impostazione predefinita. Per trasferire i dati di diagnostica nell'account di archiviazione, è necessario definire una stringa di connessione nel file ServiceConfiguration.cscfg. Nell'esempio seguente viene illustrato come definire una stringa di connessione per trasferire i dati nell'Emulatore di archiviazione di Azure:

<?xml version="1.0" encoding="utf-8"?>
<ServiceConfiguration serviceName="MyHostedService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="1" osVersion="*">
  <Role name="WebRole1">
    <Instances count="1" />
    <ConfigurationSettings>
    <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
    </ConfigurationSettings>
  </Role>
</ServiceConfiguration>

Se si desidera utilizzare un account di archiviazione in Windows Azure, è necessario modificare la stringa di connessione per includere un nome e una chiave account:


<ConfigurationSettings>
   <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="DefaultEndpointsProtocol=https;AccountName=<AccountName>;AccountKey=<AccountKey>"/>
</ConfigurationSettings>

I valori AccountKey e AccountName sono inclusi nel dashboard dell'account di archiviazione sul portale di gestione di Windows Azure, in Gestisci chiavi di accesso. Il protocollo per la stringa di connessione deve essere https.

Solo alcune delle origini dati disponibili vengono aggiunte al monitoraggio Diagnostica per impostazione predefinita, pertanto è necessario aggiungerne altre per raccogliere tipi specifici di questi dati. Per informazioni sui tipi di dati di diagnostica per cui è possibile configurare la raccolta tramite l'applicazione, vedere Diagnostics Data Sources.

I dati di diagnostica possono essere raccolti importando il modulo Diagnostica nel modello del servizio e configurando le origini dati da cui vengono raccolti questi dati. Per raccogliere i dati di diagnostica, è necessario aggiungere le origini dati alla configurazione del monitoraggio Diagnostica. Sono disponibili diversi meccanismi per configurare il modulo Diagnostica. L'utilizzo del file di configurazione diagnostics.wadcfg in fase di distribuzione è il meccanismo preferito per gestire la configurazione a livello del ruolo. Per ulteriori informazioni, vedere Diagnostics Configuration Mechanisms and Order of Precedence.

Dopo aver distribuito un servizio cloud, è possibile modificare in modalità remota la configurazione del monitoraggio Diagnostica nell'applicazione da un'altra applicazione eseguita esternamente a Windows Azure.

È possibile configurare il monitoraggio Diagnostica a livello di codice, tuttavia Windows Azure SDK offre la possibilità di configurare Diagnostica utilizzando un file di configurazione XML (diagnostics.wadcfg). Questo metodo presenta numerosi vantaggi rispetto alla scrittura di codice nel metodo OnStart:

  1. Il modulo Diagnostica viene avviato prima che venga eseguito il metodo OnStart in modo che gli errori che si verificano nelle attività di avvio possano essere rilevati e registrati.

  2. Eventuali modifiche apportate alla configurazione in fase di esecuzione verranno mantenute anche dopo un riavvio.

  3. Le modifiche alla configurazione del modulo Diagnostica non richiedono ricompilazione del codice.

  4. È possibile avviare automaticamente il monitoraggio Diagnostica con una configurazione specifica senza necessità di altro codice (che potrebbe causare un'eccezione che impedirebbe l'avvio del ruolo).

Per i ruoli Web, il file di configurazione diagnostics.wadcfg si trova nella directory bin nella directory radice del ruolo. Per i ruoli di ruolo, il file di configurazione diagnostics.wadcfg si trova nella directory radice del ruolo. Se il file di configurazione si trova in uno di questi percorsi quando viene importato il modulo Diagnostica, le impostazioni predefinite verranno sostituite da quelle configurate tramite il file di configurazione. Quando il ruolo di lavoro o il ruolo Web viene distribuito, le informazioni di configurazione nel file diagnostics.wadcfg vengono scritte nel contenitore wad-control-container nell'account di archiviazione. Per ulteriori informazioni sull'utilizzo del file di configurazione di Diagnostica, vedere Utilizzare il file di configurazione di Diagnostica Windows Azure.

Il metodo Start con DiagnosticMonitorConfiguration può essere utilizzato per impostare la configurazione di Diagnostica nel metodo OnStart del ruolo. Questo approccio è efficace per le nuove distribuzioni, ma inefficace per quelle aggiornate, pertanto è preferibile evitarlo.

Dopo aver distribuito un servizio cloud, è possibile modificare in modalità remota la configurazione del monitoraggio Diagnostica dal codice eseguito in un'applicazione esternamente a Windows Azure utilizzando la classe DeploymentDiagnosticManager. Da questa classe, è possibile modificare i monitoraggi Diagnostica per una o più istanze del ruolo. È anche possibile modificare la configurazione del monitoraggio Diagnostica per una sola istanza del ruolo utilizzando la classe RoleInstanceDiagnosticManager. Per ulteriori informazioni, vedere Modificare in modalità remota la configurazione del monitoraggio Diagnostica.

Vedere anche

Mostra:
© 2014 Microsoft