Speicherplatz in Datenbankprotokolldatei (Rollup)

Microsoft.SQLServer.2012.Database.DBLogFileSpaceMonitorRollUp (DependencyMonitor)

Überwacht den Speicherplatz, der in Protokolldateien verfügbar ist

Knowledge Base article:

Zusammenfassung

Überwacht den verfügbaren Speicherplatz in den Protokolldateien und auf dem Medium, auf dem die Protokolldateien gehostet werden. Der verfügbare Speicherplatz auf dem Medium, auf dem die Protokolldateien gehostet werden, wird nur dann als Teil des verfügbaren Speicherplatzes einbezogen, wenn die automatische Vergrößerung für mindestens eine der Dateien aktiviert ist.

Ursachen

Der fehlerhafte Zustand wird durch wenig freien Speicherplatz in allen Protokolldateien verursacht. Mögliche Ursachen von wenig freiem Speicherplatz:

Dieser Monitor aggregiert den verfügbaren Speicherplatz für jede Protokolldatei innerhalb einer Datenbank, abhängig von der Konfiguration der jeweiligen Datei:

Keine automatische Vergrößerung

Für eine Datei, für die keine automatische Vergrößerung festgelegt ist, entspricht der freie Speicherplatz der Differenz zwischen der anfänglichen Größe einer Datei und dem belegten Speicherplatz.

Automatische Vergrößerung aktiviert

Neben der Differenz zwischen der Dateigröße und dem verwendeten Speicherplatz wird der verfügbare Speicherplatz für Dateien mit aktivierter automatischer Vergrößerung berechnet. Dieser ergibt sich aus dem Minimum der Differenz zwischen der maximalen Größe und der Dateigröße oder der Differenz zwischen der maximalen Größe und dem auf dem Datenträger verbleibenden freien Speicherplatz.

Wenn für Datenbankdateien mit aktivierter automatischer Vergrößerung zu wenig Speicherplatz verfügbar ist, kann dies bedeuten, dass die Datei sich den Grenzen des logischen Laufwerks nähert, das als Host fungiert. Für Dateien, bei denen die automatische Vergrößerung mit einer maximalen Größe aktiviert ist, kann ein geringer verfügbarer Speicherplatz auch bedeuten, dass sich die Datei der maximalen Größe annähert, die für eine Datei angegeben ist.

Bei Berechnungen des freien Speicherplatzes wird auch berücksichtigt, dass eine Vergrößerung der Datei nicht möglich ist, wenn die Größenzunahme der Datei den auf dem Datenträger verbleibenden Speicherplatz überschreitet. Zudem wird berücksichtigt, dass die Dateigröße nicht zunehmen kann, wenn die Differenz zwischen der maximalen Größe und der aktuellen Größe kleiner ist als die Größenzunahme. In solchen Situationen ist der auf dem Datenträger verbleibende Speicherplatz nicht Teil des freien Speicherplatzes, da keine weitere Größenzunahme möglich ist.

Lösungen

Dieses Problem können Sie möglicherweise durch eine der folgenden Aktionen beheben:

In der SQL Server-Onlinedokumentation finden Sie weitere Informationen: Architektur von Dateien und Dateigruppen

Überschreibbare Parameter

Name

Beschreibung

Standardwert

Warnungspriorität

Definiert die Warnungspriorität.

Normal

Warnungsschweregrad

Definiert den Warnungsschweregrad.

MatchMonitorHealth

Aktiviert

Aktiviert oder deaktiviert den Workflow.

Ja

Generiert Warnungen.

Definiert, ob der Workflow eine Warnung generiert.

Ja

Element properties:

TargetMicrosoft.SQLServer.2012.Database
Parent MonitorMicrosoft.SQLServer.2012.Database.DBLogFileSpaceMonitor
AlgorithmBestOf
Source MonitorMicrosoft.SQLServer.2012.Monitoring.DBLogFileSpaceMonitor
RelationshipMicrosoft.SQLServer.2012.DBHostsLogFile
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
RemotableTrue
AccessibilityPublic
Alert Message
Für die Protokolldateien ist nur noch wenig Speicherplatz vorhanden
In der Datenbank {0} in SQL-Instanz {1} auf Computer {2} ist nur noch wenig Protokolldateispeicherplatz verfügbar. Weitere Informationen finden Sie im Wissensabschnitt.

Source Code:

<DependencyMonitor ID="Microsoft.SQLServer.2012.Database.DBLogFileSpaceMonitorRollUp" Accessibility="Public" Enabled="true" Target="SQL2012Core!Microsoft.SQLServer.2012.Database" ParentMonitorID="Microsoft.SQLServer.2012.Database.DBLogFileSpaceMonitor" Remotable="true" Priority="Normal" RelationshipType="SQL2012Core!Microsoft.SQLServer.2012.DBHostsLogFile" MemberMonitor="Microsoft.SQLServer.2012.Monitoring.DBLogFileSpaceMonitor">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2012.Database.DBLogFileSpaceMonitorRollUp.AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<Algorithm>BestOf</Algorithm>
<MemberUnAvailable>Error</MemberUnAvailable>
</DependencyMonitor>