Risoluzione dei problemi relativi ai criteri della gestione basata su criteri

La gestione basata su criteri consente di registrare gli eventuali errori nel registro eventi di Windows e, per i criteri pianificati, nel log di SQL Server Agent. Se i criteri non sono abilitati o non vengono applicati alla destinazione prevista, il problema non viene considerato un errore e non viene registrato.

Risoluzione dei problemi relativi ai criteri

In questa sezione vengono descritti due problemi relativi ai criteri e le operazioni che è possibile effettuare per risolverli.

Un criterio Su modifica: solo log o Su modifica: impedisci esecuzione non viene eseguito

Un criterio che utilizza la modalità di valutazione Su modifica: solo log o Su modifica: impedisci esecuzione non è valido per uno dei motivi seguenti:

  • Il criterio è disabilitato.

  • La destinazione è esclusa da un filtro.

  • La destinazione non sottoscrive il gruppo di criteri contenente il criterio.

  • Per la modalità di valutazione Su modifica: impedisci esecuzione, il meccanismo di gestione degli eventi di Service Broker non esegue il monitoraggio degli eventi corretti.

  • Si è verificato un problema nel motore di valutazione.

Per risolvere questo problema, effettuare le operazioni seguenti:

  1. Controllare se il criterio è stato eseguito. Tali dati possono essere visualizzati anche tramite il visualizzatore log.

    1. Per determinare se il criterio è stato eseguito con messaggi di eccezione, controllare la cronologia di esecuzione del criterio nella vista msdb.dbo.syspolicy_policy_execution_history.

    2. Per determinare se il criterio è stato eseguito per la destinazione specifica, controllare la cronologia di esecuzione del criterio per la destinazione in questione nella vista msdb.dbo.syspolicy_policy_execution_history_details.

  2. Controllare se il criterio è valido nella destinazione in questione.

    1. Verificare che il criterio sia abilitato.

    2. Per verificare che il criterio si applichi alla destinazione, utilizzare la pagina Visualizza criteri in SQL Server Management Studio.

  3. Per i criteri che utilizzano la modalità di valutazione Su registrazione: impedisci esecuzione, Service Broker controlla che il meccanismo di gestione degli eventi esegua il monitoraggio degli eventi corretti.

    1. Verificare che una transazione abbia generato un evento supportato dal facet su cui si basa la definizione della condizione del criterio e ne abbia eseguito il commit.

    2. Verificare che la coda di Service Broker esegua il monitoraggio degli eventi corretti utilizzando la query seguente:

      SELECT * FROM sys.server_event_notifications 
      WHERE name = N'syspolicy_event_notification' ;
      GO
      
  4. Controllare il motore di valutazione.

    • Verificare l'eventuale presenza di un errore relativo alla gestione basata su criteri nel registro eventi di Windows.

Un criterio Su pianificazione non viene eseguito

L'esecuzione di un criterio Su pianificazione può avere esito negativo per gli stessi motivi che influiscono su un criterio Su modifica: solo log oppure su un criterio Su modifica: impedisci esecuzione per un errore nel processo di SQL Server. Per ulteriori informazioni sui processi, vedere Visualizzazione e modifica di processi.

Risoluzione dei problemi relativi alle prestazioni

La gestione basata su criteri non fornisce strumenti specifici per la diagnosi di problemi correlati alle prestazioni. Per determinare la data e l'ora di esecuzione dei criteri, eseguire una query sulle colonne start_date ed end_date nella vista msdb.dbo.syspolicy_policy_execution_history.

Informazioni sulla gestione e sulla registrazione degli errori

In questa sezione viene descritto il funzionamento della gestione e della registrazione degli errori per diversi criteri.

Criteri Su modifica: solo log e Su modifica: impedisci esecuzione

Gli errori di esecuzione dei criteri vengono registrati nel registro eventi di Windows. Il registro includerà il testo dell'errore relativo alla gestione basata su criteri e una descrizione XML contenente i dettagli dell'evento di SQL Server. Le eccezioni relative alla logica di esecuzione principale e gli errori di esecuzione dei criteri vengono visualizzati nelle viste msdb.dbo.syspolicy_policy_execution_history e msdb.dbo.syspolicy_policy_execution_history_details.

Criterio Su pianificazione

Poiché un criterio Su pianificazione comporta l'utilizzo di SQL Server Agent, i file di log dell'agente costituiscono la prima posizione in cui controllare. Verificare se il processo è stato completato correttamente. Il log di SQL Server Agent conterrà errori relativi a chiamate a stored procedure. Se il processo è stato completato correttamente, verificare l'eventuale presenza di errori di esecuzione dei criteri nel registro eventi di Windows.