MSSQL en Linux: cantidad máxima de memoria que puede tener el grupo de recursos en función de la configuración y del estado del servidor (KB)

Microsoft.SQLServer.Linux.CollectionRule.ResourcePool.MaxMemoryKB (Rule)

Recopila el contador de rendimiento "Memoria máxima (KB)" de Linux de cada grupo de recursos del motor de base de datos de SQL.

Knowledge Base article:

Resumen

La regla recopila el contador de rendimiento "Memoria máxima (KB)" de Linux de cada grupo de recursos del motor de base de datos de SQL.

Esta métrica representa la cantidad máxima de memoria (en kilobytes) disponible para el grupo de recursos (teniendo en cuenta el estado del servidor y la configuración actuales).

Parámetros invalidables

Nombre

Descripción

Valor predeterminado

Habilitado

Habilita o deshabilita el flujo de trabajo.

Intervalo (segundos)

Intervalo de tiempo periódico en segundos en que se ejecuta el flujo de trabajo.

900

Tiempo de espera (segundos)

Especifica el tiempo que el flujo de trabajo se puede ejecutar antes de cerrarlo y marcarlo como erróneo.

300

Tiempo de expiración de la conexión de base de datos (segundos)

Se producirá un error en el flujo de trabajo y se registrará un evento si no puede obtener acceso a la base de datos durante el período especificado.

15

Element properties:

TargetMicrosoft.SQLServer.Linux.ResourcePool
CategoryPerformanceCollection
EnabledTrue
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.SQLServer.Linux.DataSource.SqlOsPerformanceReader Default
Mapper ConditionDetection System.Performance.DataGenericMapper Default
WriteToDB WriteAction Microsoft.SystemCenter.CollectPerformanceData Default
WriteToDW WriteAction Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData Default

Source Code:

<Rule ID="Microsoft.SQLServer.Linux.CollectionRule.ResourcePool.MaxMemoryKB" Target="SqlDiscL!Microsoft.SQLServer.Linux.ResourcePool" Enabled="true">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Microsoft.SQLServer.Linux.DataSource.SqlOsPerformanceReader">
<MachineName>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<InstanceName>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<IntervalSeconds>900</IntervalSeconds>
<ObjectName>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/PerformanceCounterObject$:Resource Pool Stats</ObjectName>
<PerfInstanceName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.ResourcePool"]/Name$</PerfInstanceName>
<PerfParams>
<NameOfHandler>SqlOsPerfCounterReader</NameOfHandler>
<PerformanceCounterObject>$Target/Host/Host/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/PerformanceCounterObject$</PerformanceCounterObject>
<CounterConfig>
<CategoryName>Resource Pool Stats</CategoryName>
<CounterName>Max memory (KB)</CounterName>
<BaseCounterName/>
<InstanceSelector>0</InstanceSelector>
<NeedsPrefix>1</NeedsPrefix>
<InstanceIndex>0</InstanceIndex>
</CounterConfig>
</PerfParams>
</DataSource>
</DataSources>
<ConditionDetection ID="Mapper" TypeID="SystemPerf!System.Performance.DataGenericMapper">
<ObjectName>SQL Resource Pool:Resource Pool Stats</ObjectName>
<CounterName>Max memory (KB)</CounterName>
<InstanceName/>
<Value>$Data/Property[@Name='CounterValue']$</Value>
</ConditionDetection>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="WriteToDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>