Log di traccia del servizio del server di report
Il log di traccia del server di report contiene informazioni estremamente dettagliate relative alle operazioni del servizio, ad esempio operazioni eseguite dal servizio Web ReportServer, da Gestione report e dall'elaborazione in background. Nel file di log di traccia sono contenute inoltre informazioni ridondanti, che vengono registrate in altri file di log, e informazioni aggiuntive non disponibili altrove. Le informazioni contenuti nel log di traccia sono utili se si esegue il debug di un'applicazione che include un server di report o se è necessario risolvere un problema specifico che è stato inserito nel registro eventi o nel log di esecuzione.
[!NOTA]
Nelle versioni precedenti sono presenti più file di log di traccia, uno per ogni applicazione. In questa versione tutti i dati del log sono contenuti in un singolo file. I file seguenti sono obsoleti e non vengono più creati in SQL Server 2008: ReportServerWebApp_<timestamp>.log, ReportServer_<timestamp>.log e ReportServerService_main_<timestamp>.log.
Visualizzazione delle informazioni dei log di traccia
Il file di log di traccia è ReportServerService_<timestamp>.log. Il log di traccia è un file di testo ASCII. Per visualizzare il file, è possibile utilizzare qualsiasi editor di testo. Il percorso del file è \Microsoft SQL Server\<istanza di SQL Server>\Reporting Services\LogFiles. I log di traccia vengono creati quotidianamente, a partire dalla prima voce registrata dopo la mezzanotte (ora locale) e tutte le volte in cui il servizio viene riavviato. Il timestamp si basa su l'ora UTC (Coordinated Universal Time). Il file è in formato en-US. Per impostazione predefinita, i log di traccia possono occupare uno spazio massimo di 32 MB e vengono eliminati dopo 14 giorni.
Impostazioni di configurazione per il file di log ReportServerService
I livelli di traccia vengono specificati tramite le impostazioni DefaultTraceSwitch e RSTrace. Tutte le impostazioni a livello di traccia vengono archiviate nel file ReportingServicesService.exe.config.
Il percorso della cartella in cui si trova il file di configurazione è: \Programmi\Microsoft SQL Server\MSRS10.<instance name>\Reporting Services\ReportServer\bin
Il file di log ReportServerService è abilitato per impostazione predefinita.
Per disattivarlo, impostare il livello di traccia su 0 nella sezione RStrace del file ReportingServicesService.exe.config.
Per limitare il numero di giorni per cui il file viene mantenuto, specificare l'impostazione di configurazione KeepFilesForDays nella sezione RStrace. Per impostazione predefinita, questo valore è impostato su 14.
Per limitare la dimensione del file, specificare l'impostazione di configurazione FileSizeLimitMb nella sezione RStrace. Il valore predefinito corrisponde a 32 MB. È possibile controllare le dimensioni del file impostando i livelli di traccia da 0 a 4 per definire la quantità di contenuto registrata. È inoltre possibile specificare i componenti per la traccia. Se il valore massimo del file di log viene raggiunto prima della data di scadenza di 14 giorni, le voci meno recenti verranno sostituite con le voci nuove.
Campi del file di log
Nei log di traccia sono disponibili i campi seguenti:
Informazioni sul sistema, quali il sistema operativo, la versione, il numero di processori e la memoria.
Informazioni sul componente Reporting Services e sulla versione.
Eventi registrati nel registro applicazioni.
Eccezioni generate dal server di report.
Avvisi di risorse insufficienti registrati da un server di report.
Buste SOAP in ingresso e buste SOAP in uscita riepilogate.
Informazioni sull'intestazione HTTP, sull'analisi dello stack e sulla traccia di debug.
Esaminando le informazioni dei log di traccia è possibile stabilire se ha avuto luogo un recapito di report, chi ha ricevuto il report e quanti tentativi di recapito sono stati eseguiti. Nei log di traccia vengono inoltre registrati l'attività di esecuzione del report e le variabili di ambiente attive durante l'elaborazione del report, nonché gli errori e le eccezioni. È possibile, ad esempio, trovare errori di timeout nel report, indicati dalla voce ThreadAbortExceptions.
Esempio di impostazioni di configurazione
Nell'esempio seguente viene illustrata la struttura XML delle impostazioni RStrace. Il valore di DefaultTraceSwitch determina il tipo di informazioni aggiunte al log. Con l'eccezione dell'attributo Components, i valori per RStrace sono uguali in tutti i file di configurazione.
<system.diagnostics>
<switches>
<add name="DefaultTraceSwitch" value="3" />
</switches>
</system.diagnostics>
<RStrace>
<add name="FileName" value="ReportServerService_" />
<add name="FileSizeLimitMb" value="32" />
<add name="KeepFilesForDays" value="14" />
<add name="Prefix" value="tid, time" />
<add name="TraceListeners" value="file" />
<add name="TraceFileMode" value="unique" />
<add name="Components" value="all" />
</RStrace>
Nella tabella seguente sono incluse informazioni su ogni impostazione.
Impostazione |
Descrizione |
---|---|
RStrace |
Specifica gli spazi dei nomi utilizzati per errori e traccia. |
DefaultTraceSwitch |
Specifica il livello delle informazioni da includere nel log di traccia ReportServerService. Ogni livello include anche le informazioni raccolte da tutti i livelli inferiori. Non è consigliabile disabilitare la funzionalità di traccia. I valori validi sono: 0= Disabilita la funzionalità di traccia 1= Eccezioni e riavvii 2= Eccezioni, riavvii, avvisi 3= Eccezioni, riavvii, avvisi, messaggi di stato (valore predefinito) 4= Modalità dettagliata |
FileName |
Specifica la prima parte del nome del file di log. Il resto del nome viene completato con il valore specificato da Prefix. |
FileSizeLimitMb |
Specifica il limite massimo per le dimensioni del log di traccia. Il file è misurato in megabyte. I valori validi sono compresi tra 0 e il valore integer massimo. Il valore predefinito è 32. Se si specifica 0 o un numero negativo, il server di report lo considera come 1. |
KeepFilesForDays |
Specifica dopo quanti giorni un file di log di traccia viene eliminato. I valori validi sono compresi tra 0 e il valore integer massimo. Il valore predefinito è 14. Se si specifica 0 o un numero negativo, il server di report lo considera come 1. |
Prefix |
Specifica un valore generato che distingue ogni istanza del log dalle altre. Per impostazione predefinita, ai nomi file dei log di traccia vengono aggiunti valori timestamp. Questo valore è impostato su "tid, time". Non modificare questa impostazione. |
TraceListeners |
Specifica una destinazione per l'output del contenuto del log di traccia. È possibile specificare più destinazioni, separandole con una virgola. I valori validi sono: DebugWindow File (valore predefinito) StdOut |
TraceFileMode |
Specifica se i log di traccia devono contenere dati per un periodo di 24 ore. È consigliabile utilizzare un solo log di traccia al giorno per ogni componente. Questo valore è impostato su "Unique" (valore predefinito). Non modificare questo valore. |
Components |
Specifica i componenti per i quali vengono generate informazioni nel log di traccia e il livello di traccia nel formato seguente: <categoria componente>:<livellotraccia> Le categorie dei componenti possono essere impostate nei modi seguenti:
I valori validi del livello di traccia sono i seguenti: 0= Disabilita la funzionalità di traccia 1= Eccezioni e riavvii 2= Eccezioni, riavvii, avvisi 3= Eccezioni, riavvii, avvisi, messaggi di stato (valore predefinito) 4= Modalità dettagliata Il valore predefinito per il server di report è: "all:3". È possibile specificare tutti i componenti o solo alcuni (all, RunningJobs, SemanticQueryEngine, SemanticModelGenerator). Se non si desidera generare informazioni per un componente specifico, è possibile disabilitare la traccia per tale componente (ad esempio "SemanticModelGenerator:0"). Non disabilitare la funzionalità di traccia per il componente all. Se non si aggiunge un livello di traccia dopo il nome del componente, verrà utilizzato il valore specificato per DefaultTraceSwitch. Ad esempio, se si specifica "all,RunningJobs,SemanticQueryEngine,SemanticModelGenerator", per tutti i componenti verrà utilizzato il livello di traccia predefinito. È possibile impostare "SemanticQueryEngine:4" se si desidera visualizzare le istruzioni Transact-SQL che vengono generate per ogni query semantica. Le istruzioni Transact-SQL vengono registrate nel log di traccia. Nell'esempio seguente viene illustrata l'impostazione di configurazione per l'aggiunta delle istruzioni Transact-SQL al log: <add name="Components" value="all,SemanticQueryEngine:4" /> |
Aggiunta di un'impostazione di configurazione personalizzata per specificare il percorso del file di dump
È possibile aggiungere un'impostazione personalizzata per definire la directory di archiviazione utilizzata dallo strumento Dr. Watson per Windows per i file di dump. L'impostazione personalizzata è Directory. Nell'esempio seguente viene illustrato come specificare questa impostazione di configurazione nella sezione RStrace:
<add name="Directory" value="U:\logs\" />
Per ulteriori informazioni, vedere l'articolo della Knowledge Base 913046 nel sito Web Microsoft.