Archiviare ed eliminare il contenuto di un database

In questa sezione viene descritto come archiviare e ripulire un archivio di monitoraggio (nome predefinito di ApplicationServerMonitoring) o semplicemente ripulire un archivio salvataggi permanenti (nome predefinito di ApplicationServerPersistence) in Microsoft AppFabric 1.1 per Windows Server. Man mano che un archivio di monitoraggio o di salvataggio permanente cresce in dimensione può accumulare una grande quantità di dati. Per mantenere le massime prestazioni è consigliabile archiviare i dati di monitoraggio meno recenti sulla base di criteri specifici o ripulire eventuali dati di salvataggio permanente di istanza non aggiornati rispettivamente dall'archivio di monitoraggio e dall'archivio salvataggi permanenti di AppFabric.

Con AppFabric è possibile archiviare e ripulire un archivio solo utilizzando i cmdlet di Windows PowerShell, in dotazione con AppFabric e concepiti specificamente per queste operazioni. I dati archiviati sono di esclusiva pertinenza dell'archivio di monitoraggio. È opportuno archiviare i dati di monitoraggio poiché sono di tipo cronologico e il Dashboard AppFabric visualizza le metriche cronologiche di monitoraggio nella sezione Cronologia chiamate WCF della pagina Eventi rilevati e nella sezione Cronologia istanze WF della pagina Istanze WF rilevate. Tuttavia le metriche visualizzate nella sezione Istanze WF permanenti/pagina Istanze WF permanenti sono dati in tempo reale per le istanze di flusso di lavoro correnti permanenti. Archiviare le informazioni dell'istanza di flusso di lavoro permanente e visualizzarla in un secondo tempo, quando queste istanze sono probabilmente state completate o non esistono più, non fornisce dati particolarmente utili. Quindi tutti i cmdlet associati all'archivio sono applicabili solo all'archivio di monitoraggio. Le capacità di ripulitura di cmdlet si applicano sia all'archivio di monitoraggio sia all'archivio salvataggi permanenti. La caratteristica di pulizia automatica dell'archivio dati di AppFabric può essere utilizzata solo per le installazioni di AppFabric configurate per l'utilizzo di Microsoft SQL Server per l'archiviazione dei dati di monitoraggio. L'archivio di monitoraggio è l'unico database di AppFabric per il quale esiste la funzionalità di pulizia automatica. Questa non può essere configurata per l'archivio salvataggi permanenti.

Cmdlet per la pulizia e l'archiviazione di un database

I cmdlet di AppFabric per Windows PowerShell riportati di seguito vengono utilizzati per eseguire diverse attività associate alla pulizia e all'archiviazione degli archivi AppFabric.

 

Cmdlet Descrizione

Clear-ASMonitoringSqlDatabase

Pulisce i dati in un database di monitoraggio. Facoltativamente i dati rimossi con la pulizia possono essere inviati a un database di archivio.

Set-ASMonitoringSqlDatabaseArchiveConfiguration

Associa un database di monitoraggio con un archivio database di destinazione. L'archivio database di destinazione deve essere un database di monitoraggio inizializzato pre-esistente.

Get-ASMonitoringSqlDatabaseArchiveConfiguration

Restituisce l'eventuale configurazione dell'archivio (essenzialmente la stringa di connessione che identifica l'archivio database di destinazione) dal database di monitoraggio specificato.

Remove-ASMonitoringSqlDatabaseArchiveConfiguration

Rimuove le informazioni di configurazione su un database di archivio relativo al database di monitoraggio. Questo presuppone che la configurazione dell'archivio venga definita in precedenza utilizzando Set-ASMonitoringSqlDatabaseArchiveConfiguration.

Remove-ASAppServiceInstance

Effettua la pulizia dei dati di istanza "non aggiornati" dall'archivio salvataggi permanenti. Non esiste un'opzione di archivio per i dati di istanza rimossi con la pulizia.

Nelle sezioni seguenti ciascuno di questi cmdlet viene descritto nei dettagli e ne viene esemplificato l'utilizzo.

Impostazione, ottenimento e rimozione della configurazione dell'archivio di monitoraggio

Set-ASMonitoringSqlDatabaseArchiveConfiguration consente di configurare un database di monitoraggio specifico con un archivio database di destinazione associato. Il database archivio di destinazione deve essere un database di monitoraggio inizializzato esistente. Questo cmdlet garantisce che i database principale e di archivio contengano entrambi artefatti database di monitoraggio e che le rispettive versioni corrispondano.

Get-ASMonitoringSqlDatabaseArchiveConfiguration consente di recuperare la configurazione del database archivio da un database di monitoraggio.

Remove-ASMonitoringSqlDatabaseArchiveConfiguration consente di rimuovere le informazioni di configurazione su un database di archivio relativo al database di monitoraggio.

Set-ASMonitoringSqlDatabaseArchiveConfiguration

Sintassi 1:

Set-ASMonitoringSqlDatabaseArchiveConfiguration -ArchiveDatabase <String> -Database <String> [-Confirm] [-LinkedArchiveServer <String>] [-Server <String>] [-WhatIf] [<CommonParameters>]

Sintassi 2:

Set-ASMonitoringSqlDatabaseArchiveConfiguration -ArchiveDatabase <String> -ConnectionString <String> [-Confirm] [-LinkedArchiveServer <String>] [-WhatIf] [<CommonParameters>]

 

Parametro Descrizione

ArchiveDatabase

Nome del database archivio di destinazione.

Database

Nome del database principale per il quale configurare l'archiviazione. Facoltativo solo se viene specificato ConnectionString.

ConnectionString

Stringa di connessione per il database di monitoraggio principale.

LinkedArchiveServer

Nome del server SQL che ospita il database archivio di destinazione.

Server

Nome del server SQL che ospita il database di monitoraggio principale.

WhatIf

Consente la connessione al database ma non di configurare effettivamente l'archiviazione. Facoltativo.

Esempio

Nell'esempio riportato di seguito viene impostata la configurazione dell'archivio per il database di monitoraggio principale ApplicationServerMonitoring. Il database archivio di destinazione è ArchiveMonitoringDatabase. All'utente viene richiesto di confermare l'operazione prima di impostare la configurazione dell'archiviazione.

Set-ASMonitoringSqlDatabaseArchiveConfiguration –ArchiveDatabase ArchiveMonitoringDatabase –Database ApplicationServerMonitoring

Get-ASMonitoringSqlDatabaseArchiveConfiguration

Sintassi 1:

Get-ASMonitoringSqlDatabaseArchiveConfiguration -Database <String> [-Server <String>] [<CommonParameters>]

Sintassi 2:

Get-ASMonitoringSqlDatabaseArchiveConfiguration -ConnectionString <String> [<CommonParameters>]

 

Parametro Descrizione

Database

Nome del database principale di cui si desidera recuperare la configurazione dell'archivio. Facoltativo solo se è specificata una stringa di connessione.

Server

Nome del server SQL che ospita il database di monitoraggio principale. Facoltativo; se non specificato questo parametro assume il valore predefinito, ovvero il computer locale.

ConnectionString

Stringa di connessione al database di monitoraggio principale. Facoltativo solo se è specificato Database ed è indicato Server oppure se quest'ultimo è impostato sul computer locale.

Remove-ASMonitoringSqlDatabaseArchiveConfiguration

Sintassi 1:

Remove-MonitoringDatabaseArchiveConfiguration [-Database <String>] [–Server <String>] [-Confirm <Switch>][-ConnectionString<String>]

 

Parametro Descrizione

Database

Nome del database principale di cui si desidera recuperare la configurazione dell'archivio. Facoltativo solo se è specificata una stringa di connessione.

Server

Nome del server SQL che ospita il database di monitoraggio principale. Facoltativo; se non specificato questo parametro assume il valore predefinito, ovvero il computer locale.

Confirm

Se specificato, gli utenti devono confermare la rimozione del collegamento.

ConnectionString

Stringa di connessione al database di monitoraggio principale. Facoltativo solo se è specificato il parametro Database ed è indicato il parametro Server oppure se quest'ultimo è impostato sul computer locale.

Esempio

Nell'esempio riportato di seguito viene rimossa la configurazione dell'archivio per il database di monitoraggio principale ApplicationServerMonitoring.

Remove-MonitoringDatabaseArchiveConfiguration –Database “ApplicationServerMonitoring”

Pulizia e archiviazione di un archivio di monitoraggio

Per la pulizia dei dati dal database di monitoraggio si utilizza il cmdlet Clear-ASMonitoringSqlDatabase e, facoltativamente, è possibile indirizzare i dati rimossi con la pulizia a un archivio di destinazione del database di monitoraggio.

Clear-ASMonitoringSqlDatabase

Sintassi 1:

Clear-ASMonitoringSqlDatabase -Database <String> [-Archive] [-CutoffTime <DateTime>] [-MaxAge <TimeSpan>] [-PurgeMode {<EventAgeMode | None | WFInstanceCompletedMode}] [-Server <String>] [<CommonParameters> [-WhatIf]]

Sintassi 2:

Clear-ASMonitoringSqlDatabase -ConnectionString <String> [-Archive] [-CutoffTime <DateTime>] [-MaxAge <TimeSpan>] [-PurgeMode {<EventAgeMode | None | WFInstanceCompletedMode>}] [-WhatIf] [<CommonParameters>]

 

Parametro Descrizione

Database

Nome del database sul quale effettuare la pulizia. Facoltativo solo se viene specificato ConnectionString.

ConnectionString

Stringa di connessione al database da pulire. Facoltativo se sono specificati Database e Server.

Archive

I dati da eliminare con la pulizia vengono prima archiviati nel database archivio preconfigurato (tramite Set-ASMonitoringSqlDatabaseArchiveConfiguration). Facoltativo.

CutoffTime

Tutti gli eventi nel database che sono stati creati prima dell'orario limite verranno eliminati. In WFInstanceCompletedMode, vengono conservati gli eventi WF associati alle istanze attive. Si tratta di un parametro facoltativo e, se non viene specificato, il valore corrispondente viene calcolato dall'ora corrente sottraendo il parametro MaxAge.

MaxAge

Il tempo di permanenza di un evento in un database di monitoraggio prima che risulti idoneo per un'eliminazione temporizzata. Si tratta di un parametro facoltativo, il valore predefinito è 0.

PurgeMode

Consente di determinare la modalità di esecuzione dell'eliminazione. Sono disponibili due opzioni:

  • EventAgeMode – Per eliminare tutti gli eventi WCF e WF, nonché le registrazioni delle istanze WF indipendentemente dal fatto che l'istanza di riferimento sia completa o meno. Gli eventi vengono conservati o eliminati semplicemente sulla base della loro "età".

  • WFInstanceCompletedMode – Per eliminare tutti gli eventi in base all'età, escludendo le istanze WF e gli eventi attività associati alle istanze attive. In questa modalità vengono eliminate le registrazioni delle istanze completate e gli eventi attività corrispondenti.

    Facoltativo; il valore predefinito è EventAgeMode.

Server

Nome del server che ospita il database da sottoporre a pulizia. Facoltativo; se non viene indicato, il valore predefinito è il server locale.

Esempio

Questo è un semplice esempio che illustra come archiviare ed eliminare eventi associati a istanze completate. Viene sottoposto a pulizia il database di monitoraggio ContosoDatabase presente sul server locale.

Clear-ASMonitoringSqlDatabase –Database “ContosoDatabase” –PurgeMode “WFInstanceCompletedMode” –Archive

Eliminazione di istanze non aggiornate da un archivio salvataggi permanenti

Le istanze di servizi che sono stati rimossi da tutti i computer in una Web farm possono rimanere nell'archivio salvataggi permanenti e interferire nelle query effettuate su tale archivio. Se un computer viene rimosso dalla rete, un'istanza permanente associata al computer rimosso viene mantenuta come istanza non aggiornata nell'archivio salvataggi permanenti. Il cmdlet Remove-ASAppServiceInstance consente di eliminare queste istanze non aggiornate.

Remove-ASAppServiceInstance

Sintassi 1:

Remove-ASAppServiceInstance -Database <String> -InstanceId <Guid> [-Confirm] [-Force] [-Server <String>] [-WhatIf] [<CommonParameters>]

Sintassi 2:

Remove-ASAppServiceInstance -ConnectionString <String> [-Confirm] [-Force] [-WhatIf] [<CommonParameters>]

Sintassi 3:

Remove-ASAppServiceInstance -ServiceInstanceInfo <InstanceInfo> [-Confirm] [-Force] [-WhatIf] [<CommonParameters>]

 

Parametro Descrizione

Database

Nome dell'archivio salvataggi permanenti sul quale effettuare la pulizia. Obbligatorio se non è specificato ConnectionString.

InstanceId

ID istanza servizio sotto forma di GUID.

Confirm

L'utente deve confermare l'operazione prima che vengano eliminate le istanze del servizio. Da non utilizzare con Force.

Force

Consente di forzare l'operazione senza la conferma dell'utente. Da non utilizzare con Confirm.

Server

Nome del server SQL che ospita il Database. Facoltativo; il valore predefinito è il server locale.

WhatIf

Consente la connessione all'archivio ma non di eliminare effettivamente dati di istanza del servizio.

ConnectionString

Stringa di connessione all'archivio salvataggi permanenti da pulire. Facoltativo, può essere utilizzato in sostituzione di Database e Server.

ServiceInstanceInfo

Vedere anche

  2012-03-05
Mostra: