Monitoraggio percentuale uso della cache delle chiavi del server MySQL

Microsoft.MySQLServer.ManagedServer.Unix.KeyCacheUsePct.Monitor (UnitMonitor)

Knowledge Base article:

Riepilogo

Percentuale della cache delle chiavi usata attualmente. La cache delle chiavi MyISAM è una struttura di dati che contiene i blocchi di indice usati più frequentemente. Le dimensioni della cache delle chiavi sono controllate con la variabile globale 'key_buffer_size'. La soglia di monitoraggio viene analizzata confrontandola con una media dei valori restituiti all'agente in forma di polling, dove il parametro Numero di campioni si riferisce al numero di campioni inclusi nel calcolo della media.

Cause

Uno stato non integro indica che la percentuale della cache delle chiavi in uso è alta. La cache delle chiavi non ha spazio sufficiente per archiviare i blocchi di chiavi usati di recente e continuerà a eliminare il blocco di chiavi usato meno di recente.

Soluzioni

Per risolvere il problema dell'alta percentuale d'uso della cache delle chiavi, aumentare il valore key_buffer_size nel file di configurazione. A tale scopo, aggiungere la riga seguente con le dimensioni sotto le opzioni del gruppo di istanze: "key_buffer_size=dimensioni". In alternativa, avviare il server con l'opzione seguente: "--key_buffer_size=dimensioni"

Configurazione

Configurazione predefinita

Parametro

Valore predefinito

Soglia di avviso

Maggiore di 70

Soglia di errore

Maggiore di 85

Numero di campioni

3

Gli override possono essere usati per modificare i valori dei parametri definiti in precedenza per tutte le istanze oppure per istanze o gruppi specifici.

Element properties:

TargetMicrosoft.MySQLServer.ManagedServer.Unix
Parent MonitorMicrosoft.MySQLServer.KeyCachePerformanceRollup
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Oss.WSManEnumeration.GreaterThanThreshold.ThreeState.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Percentuale uso della cache delle chiavi del server MySQL
La percentuale d'uso corrente della cache delle chiavi ({0}\%) per il server MySQL è alta
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.MySQLServer.ManagedServer.Unix.KeyCacheUsePct.Monitor" Accessibility="Public" Target="Microsoft.MySQLServer.ManagedServer.Unix" TypeID="Oss!Microsoft.Oss.WSManEnumeration.GreaterThanThreshold.ThreeState.MonitorType" Enabled="onStandardMonitoring" ParentMonitorID="Microsoft.MySQLServer.KeyCachePerformanceRollup">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.MySQLServer.ManagedServer.Unix.KeyCacheUsePct.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Value$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState HealthState="Success" MonitorTypeStateID="StatusOK" ID="UnderThreshold"/>
<OperationalState HealthState="Warning" MonitorTypeStateID="StatusWarning" ID="OverWarningThreshold"/>
<OperationalState HealthState="Error" MonitorTypeStateID="StatusError" ID="OverErrorThreshold"/>
</OperationalStates>
<Configuration>
<Interval>300</Interval>
<TargetSystem>$Target/Host/Property[Type="Unix!Microsoft.Unix.Computer"]/NetworkName$</TargetSystem>
<Uri>http://schemas.microsoft.com/wbem/wscim/1/cim-schema/2/MySQL_ServerStatistics?__cimnamespace=root/mysql</Uri>
<WSManFilter/>
<ObjectName>MySQL Server</ObjectName>
<CounterName>Key Cache Use Pct</CounterName>
<InstanceXPath>/DataItem/WsManData/*[local-name(.)='MySQL_ServerStatistics']/*[local-name(.)='InstanceID']</InstanceXPath>
<InstanceName>$Target/Property[Type="Microsoft.MySQLServer.Installation"]/InstanceID$</InstanceName>
<Value>$Data/WsManData/*[local-name(.)='MySQL_ServerStatistics']/*[local-name(.)='KeyCacheUsePct']$</Value>
<WarningThreshold>70</WarningThreshold>
<ErrorThreshold>85</ErrorThreshold>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>