MySQL-server, övervakning av långsamma frågor, i procent

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

Knowledge Base article:

Sammanfattning

Procentandelen långsamma MySQL-serverfrågor jämfört med alla frågor. Långsamma frågor är frågor som körs i MySQL-databaser och som tar längre tid än den globala variabeln "long_query_time". Den här övervakaren hämtar antalet långsamma frågor från den globala statusvariabeln "Slow_queries" och dividerar med antalet frågor från den globala statusvariabeln "Queries". För MySQL 5.0 och 5.1 är antalet frågor summan av följande globala statusvariabler: "Questions", "Com_ping" , "Com_statistics", "Com_stmt_prepare", "Com_stmt_close" och "Com_stmt_reset". Tröskelvärdet för övervakaren analyseras mot ett medeltal av de värden som returneras vid avsökningar till agenten, där parametern Antal prover styr antalet prov som tas med vid beräkning av medelvärdet.

Orsaker

Ett feltillstånd visar att procentandelen frågor som är större än den globala variabeln "long_query_time" är hög.

Lösningar

Åtgärda höga procentandelar långsamma frågor genom att aktivera loggning av långsamma frågor i konfigurationsfilen. Gör detta genom att lägga till följande rad tillsammans med destinationssökvägen för loggfilen under instansgruppens alternativ: “log-slow-queries= filsökväg till logg”. Som alternativ kan servern startas med följande alternativ: “--log-slow-queries=filsökväg till logg”.

Konfiguration

Standardkonfiguration

Parameter

Standardvärde

Varningströskelvärde

Större än 15

Feltröskelvärde

Större än 25

Antal insamlingar

3

Åsidosättningar kan användas för att ändra parametervärden som har definierats ovan för alla instanser eller för specifika instanser eller grupper.

Element properties:

TargetMicrosoft.MySQLServer.ManagedServer.Unix
Parent MonitorMicrosoft.MySQLServer.RowOperationsPerformanceRollup
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Oss.WSManEnumeration.GreaterThanThreshold.ThreeState.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
MySQL-server, långsamma frågor, i procent
Aktuellt procenttal för långsamma frågor ({0}\%) för MySQL-servern är högt
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.MySQLServer.ManagedServer.Unix.SlowQueryPct.Monitor" Accessibility="Public" Target="Microsoft.MySQLServer.ManagedServer.Unix" TypeID="Oss!Microsoft.Oss.WSManEnumeration.GreaterThanThreshold.ThreeState.MonitorType" Enabled="onStandardMonitoring" ParentMonitorID="Microsoft.MySQLServer.RowOperationsPerformanceRollup">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.MySQLServer.ManagedServer.Unix.SlowQueryPct.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>Slow Query 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(.)='SlowQueryPct']$</Value>
<WarningThreshold>15</WarningThreshold>
<ErrorThreshold>25</ErrorThreshold>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>