[Deprecato] Spazio disponibile nel file di log del database (\%)

Microsoft.SQLServer.2008.Database.TransactionLogSizePercentMonitor (UnitMonitor)

Questo monitoraggio è DEPRECATO. Esegue il monitoraggio dello spazio disponibile nei file di log e nel supporto che ospita i file di log (in percentuale).

Knowledge Base article:

Riepilogo

Esegue il monitoraggio dello spazio disponibile nei file di log e nel supporto che ospita i file di log. Lo spazio disponibile nel supporto che ospita i file di log è incluso nello spazio disponibile se l'opzione di aumento automatico delle dimensioni è abilitata per uno dei file e l'opzione per l'inclusione dello spazio su disco dell'oggetto filegroup è impostata su TRUE.

Cause

Uno stato non integro viene determinato nel caso in cui lo spazio disponibile per tutti i file di log sia insufficiente. Lo spazio disponibile può risultare insufficiente per i motivi seguenti:

Per visualizzare i dati sulle prestazioni, usare il collegamento Dati sulle prestazioni del database.

Questo monitoraggio aggrega lo spazio disponibile per ogni file di log all'interno di un database a seconda della configurazione di ogni file:

Nessun aumento automatico delle dimensioni

Per un file senza aumento automatico delle dimensioni, lo spazio disponibile corrisponde alla differenza tra le dimensioni iniziali di un file e lo spazio usato.

Aumento automatico delle dimensioni abilitato

Oltre alla differenza tra le dimensioni del file e lo spazio usato, lo spazio disponibile per i file con opzione di aumento automatico delle dimensioni abilitata corrisponde al valore più basso tra le dimensioni massime e le dimensioni del file e lo spazio disponibile su disco.

Lo spazio disponibile insufficiente per i file di log del database con aumento automatico delle dimensioni può indicare che le dimensioni del file si stanno avvicinando ai limiti dell'unità logica di hosting. Per i file per i quali è abilitato l'aumento automatico delle dimensioni con dimensioni massime, lo spazio disponibile potrebbe inoltre risultare insufficiente se le dimensioni del file si avvicinano a quelle massime specificate.

I calcoli dello spazio disponibile tengono inoltre conto del fatto che l'aumento delle dimensioni del file può non riuscire se il livello di aumento del file è maggiore della quantità di spazio disponibile sul disco e che le dimensioni del file non possono aumentare se la differenza tra le dimensioni massime e quelle correnti del file è minore dell'aumento. In questi casi, lo spazio disponibile su disco non è incluso nello spazio disponibile perché le dimensioni non possono aumentare ulteriormente.

Soluzioni

Per risolvere il problema, effettuare una delle operazioni seguenti:

Vedere l'argomento della documentazione online di SQL Server Architettura di file e filegroup

Parametri di cui è possibile eseguire l'override

Nome

Descrizione

Valore predefinito

Priorità avviso

Definisce la priorità dell'avviso.

Normale

Gravità avviso

Definisce la gravità dell'avviso.

MatchMonitorHealth

Abilitato

Abilita o disabilita il flusso di lavoro.

No

Genera avvisi

Definisce se il flusso di lavoro genera un avviso.

Intervallo (secondi)

Intervallo di tempo ricorrente in secondi in cui eseguire il flusso di lavoro.

900

Soglia inferiore

Soglia inferiore per questo monitoraggio.

10

Ora di sincronizzazione

Ora di sincronizzazione specificata usando il formato a 24 ore. Può essere omessa.

 

Timeout (secondi)

Specifica il tempo di esecuzione consentito per il flusso di lavoro prima che venga chiuso e contrassegnato come non riuscito.

300

Soglia superiore

Soglia superiore per questo monitoraggio.

20

Element properties:

TargetMicrosoft.SQLServer.2008.Database
Parent MonitorMicrosoft.SQLServer.2008.Database.DBSpaceMonitor
CategoryPerformanceHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2008.DBAndLogSizeMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Spazio file di log insufficiente
Lo spazio disponibile per i file di log del database {0} nell'istanza di SQL Server {1} sul computer {2} è insufficiente. Per ulteriori informazioni, vedere la scheda relativa al contesto dell'avviso.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2008.Database.TransactionLogSizePercentMonitor" Accessibility="Public" Enabled="false" Target="SQL2008Core!Microsoft.SQLServer.2008.Database" ParentMonitorID="Microsoft.SQLServer.2008.Database.DBSpaceMonitor" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2008.DBAndLogSizeMonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2008.Database.TransactionLogSizePercentMonitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UnderThreshold1" MonitorTypeStateID="UnderThreshold1" HealthState="Error"/>
<OperationalState ID="OverThreshold1UnderThreshold2" MonitorTypeStateID="OverThreshold1UnderThreshold2" HealthState="Warning"/>
<OperationalState ID="OverThreshold2" MonitorTypeStateID="OverThreshold2" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<ConnectionString>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ConnectionString$</ConnectionString>
<ServerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ServerName>
<SqlInstanceName>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.ServerRole"]/InstanceName$</SqlInstanceName>
<DatabaseName>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</DatabaseName>
<Value>Property[@Name='DBLogFreeSpacePercent']</Value>
<Threshold1>10</Threshold1>
<Threshold2>20</Threshold2>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>