Condividi tramite


Gestire un processo in esecuzione

SQL Server Reporting Services consente di monitorare lo stato dei processi in esecuzione nel server di report. Tramite il server di report viene effettuata un'analisi a intervalli regolari dei processi in corso e vengono scritte informazioni sullo stato nel database del server di report o nei database dell'applicazione di servizio per la modalità SharePoint. Un processo è considerato in corso se è in esecuzione una delle operazioni seguenti, ovvero esecuzione di query su un server di database locale o remoto, elaborazione di report e rendering di report.

È possibile gestire sia i processi utente sia i processi di sistema.

  • I processi utente vengono avviati da un singolo utente o da una sottoscrizione. Questo processo include:

    • Esecuzione di report su richiesta
    • Richiesta di uno snapshot della cronologia del report
    • Creazione manuale di uno snapshot del report
    • Elaborazione di una sottoscrizione standard
  • I processi di sistema vengono avviati dal server di report. Includono snapshot dell'esecuzione di report pianificati, snapshot della cronologia dei report pianificati e sottoscrizioni guidate dai dati.

L'utilizzo delle risorse e il tempo di elaborazione del report variano significativamente a seconda del report, della complessità della query, della quantità di dati e del formato di rendering specificato per il report. I report con query semplici su un'origine dati locale vengono spesso completati in millisecondi e non richiedono mai operazioni di gestione o di ottimizzazione. Al contrario, un report di grandi dimensioni di cui viene eseguito il rendering in PDF o Excel potrebbe richiedere tempi di elaborazione significativi. Il tempo dipende dalle risorse hardware, dalle opzioni di recapito e dalla possibilità che altri processi vengano eseguiti simultaneamente. Su un server di report la maggior parte dei processi con esecuzione prolungata riguarda le operazioni di rendering dei report e i processi in attesa di conclusione dell'elaborazione di query. Può talvolta essere necessario annullare l'elaborazione di un report per mettere un computer in modalità offline o per arrestare un processo in esecuzione il cui completamento richiede troppo tempo.

È possibile annullare i processi seguenti:

  • Elaborazione di report su richiesta.

  • Elaborazione di report pianificati.

  • Sottoscrizioni standard appartenenti a utenti singoli.

L'annullamento di un processo comporta l'annullamento solo dei processi in esecuzione nel server di report. In alcuni casi il server di report non gestisce l'elaborazione dati che si verifica in altri computer. È quindi necessario annullare manualmente i processi di query orfani in altri sistemi. Per chiudere automaticamente le query con esecuzione eccessivamente prolungata, è possibile specificare valori di timeout delle query. Per altre informazioni, vedere Impostazione dei valori di timeout per l'elaborazione di report e di set di dati condivisi (SSRS). Per altre informazioni sulla sospensione temporanea di un report, vedere Disabilitare o sospendere l'elaborazione di report e sottoscrizioni.

Nota

Per annullare un processo, in rare circostanze potrebbe essere necessario riavviare il server. Per la modalità SharePoint potrebbe essere necessario riavviare il pool di applicazioni in cui viene ospitata l'applicazione del servizio Reporting Services. Per altre informazioni, vedere Avviare e arrestare il servizio del server di report.

Contenuto dell'articolo:

Visualizzare e annullare i processi (modalità nativa)

È possibile usare SQL Server Management Studio per visualizzare o annullare un processo in esecuzione nel server di report. È necessario aggiornare la pagina per recuperare un elenco di processi attualmente in esecuzione oppure per ottenere stato del processo aggiornato dal database del server di report. Quando si esegue la connessione a un server di report in Management Studio, è possibile aprire una cartella Processi per visualizzare un elenco di report che attualmente in esecuzione nel computer server di report. Le informazioni sullo stato per ogni processo vengono visualizzate nella pagina Proprietà processo. Per visualizzare informazioni sullo stato di tutti i processi, aprire la finestra di dialogo Annulla processi server di report.

È possibile usare SQL Server Management Studio per visualizzare o annullare un processo in esecuzione nel server di report. È necessario aggiornare la pagina per recuperare un elenco di processi attualmente in esecuzione oppure per ottenere stato del processo aggiornato dal database del server di report. Quando si esegue la connessione a un server di report in Management Studio, è possibile aprire una cartella Processi per visualizzare un elenco di report che attualmente in esecuzione nel computer server di report. Le informazioni sullo stato per ogni processo vengono visualizzate nella pagina Proprietà processo. Per visualizzare informazioni sullo stato di tutti i processi, aprire la finestra di dialogo Annulla processi server di report.

Non è possibile usare Management Studio per elencare o annullare la generazione o l'elaborazione di modelli o sottoscrizioni guidate dai dati. In Reporting Services non è possibile annullare la generazione o l'elaborazione di modelli. Per annullare sottoscrizioni guidate dai dati, è possibile tuttavia utilizzare le istruzioni fornite in questo articolo.

Annullamento di un'elaborazione del report o di una sottoscrizione

  1. In Management Studio connettersi al server di report. Per istruzioni, vedere Eseguire la connessione a un server di report in Management Studio.

  2. Aprire la cartella Processi .

  3. Fare clic con il pulsante destro del mouse sul report, quindi scegliere Annulla processi.

Annullamento di una sottoscrizione guidata dai dati

  1. Aprire il file RSReportServer.config in un editor di testo.

  2. Trovare IsNotificationService.

  3. Impostarlo su False.

  4. Salvare il file.

  5. In Gestione report eliminare la sottoscrizione guidata dai dati dalla scheda Sottoscrizioni del report o da Sottoscrizioni personali.

  6. Dopo aver eliminato la sottoscrizione, trovare IsNotificationService nel file RSReportServer.config e impostarlo su True.

  7. Salvare il file.

Configurare le impostazioni di frequenza per recuperare lo stato del processo

Un processo in esecuzione viene archiviato nel database temporaneo del server di report. Per controllare la frequenza con la quale il server di report esegue l'analisi dei processi in corso e l'intervallo trascorso il quale lo stato di un processo cambia da nuovo a in esecuzione, è possibile modificare le impostazioni di configurazione nel file RSReportServer.config. L'impostazione RunningRequestsDbCycle specifica la frequenza con cui il server di report esegue l'analisi dei processi in esecuzione. Per impostazione predefinita, le informazioni sullo stato vengono registrate ogni 60 secondi. L'impostazione RunningRequestsAge specifica l'intervallo dopo il quale un processo passa da nuovo a in esecuzione.

Visualizzare e annullare i processi (modalità SharePoint)

La gestione di processi in una distribuzione in modalità SharePoint viene completata usando Amministrazione centrale SharePoint per ogni applicazione di servizio Reporting Services.

Gestire i processi in modalità SharePoint

  1. In Amministrazione centrale SharePoint, selezionare Gestisci applicazioni di servizio.

  2. Trovare e fare clic sul nome dell'applicazione di servizio Reporting Services per aprire la pagina di gestione dell'applicazione.

  3. Selezionare Gestione processi.

  4. Fare clic su ID processo per visualizzarne i dettagli.

  5. In alternativa, selezionare la casella per il processo e scegliere Elimina per annullare il processo. L'eliminazione del processo non comporta l'eliminazione della sottoscrizione.

Gestione di processi a livello programmatico

I processi possono essere gestiti a livello di programmazione o mediante l'utilizzo di uno script. Per altre informazioni, vedere ListJobse CancelJob.