Поделиться через


Тип сборщика счетчиков производительности

Можно воспользоваться типом сборщика «Счетчики производительности» для сбора конкретных сведений о счетчиках на компьютере, где работает SQL Server 2008. Эти данные можно использовать позже в качестве основания для диагностики или планирования ресурсных затрат. Этот тип сборщика зарегистрирован в представлении core.supported_collector_types.

Этот тип сборщика имеет следующие входные параметры.

  • Objects. Объекты SQL Server, работающие в экземпляре SQL Server.

  • Counters. Счетчики, связанные с объектом SQL Server.

  • Instances. Экземпляры заданного объекта.

Дополнительные сведения об объектах и счетчиках см. в разделе Использование объектов SQL Server.

ПримечаниеПримечание

Перечисленные атрибуты поддерживают символы-шаблоны, что позволяет включить несколько счетчиков в одну инструкцию. Но поддержка символов-шаблонов ограничена. Нельзя использовать символы-шаблоны на уровне объектов. На уровнях счетчиков и экземпляров поддерживаются только символы-шаблоны в начале строки (например, «* Processor») или в конце строки (например, «Memory *»).

Входная схема сборщика «Счетчики производительности»

Тип сборщика «Счетчики производительности» использует следующую схему для входных параметров.

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="DataCollectorType">
  <xs:element name="PerformanceCountersCollector">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="PerformanceCounters">
          <xs:complexType>
            <xs:attribute name="Objects" type="xs:string" use="required" />
            <xs:attribute name="Counters" type="xs:string" use="required" />
            <xs:attribute name="Instances" type="xs:string" use="optional" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="StoreLocalizedCounterNames" type="xs:boolean" use="optional" default="false" />
    </xs:complexType>
  </xs:element>
</xs:schema>

Следующий пример кода демонстрирует использование схемы.

<ns:PerformanceCountersCollector xmlns:ns="DataCollectorType">  
<PerformanceCounters 
      Objects="SQLServer:Locks" 
      Counters="Lock *" 
      Instances="_Total" 
      /> 
<PerformanceCounters 
      Objects="SQLServer:SQL Statistics" 
      Counters="*/sec" 
      /> 
<PerformanceCounters 
      Objects="Processor" 
      Counters="% Processor Time" 
      Instances="*"
      /> 
</ns:PerformanceCountersCollector>

В результате этого примера в экземпляре «_Total» будут извлечены все счетчики с именами, начинающимися с «Lock», для объекта SQLServer:Locks. Кроме того, извлекаются все экземпляры всех счетчиков, которые содержат «/sec» для объекта SQLServer:SQLStatistics. И наконец, будут получены счетчики «% Processor Time» для всех экземпляров объекта Processor.

Обработка и вывод данных

Тип сборщика «Счетчики производительности» использует пакеты для сбора и передачи, предоставленные сборщиком данных. Этот тип сборщика использует API-интерфейс модуля поддержки данных производительности для выполнения запросов и получения данных из счетчиков производительности. Дополнительные сведения см. в статье Using the Performance Data Helper Lib MSDN (на английском языке).

После завершения сбора данных сборщик данных выполняет массовую передачу данных в таблицу snapshots.performance_counters хранилища данных управления. Дополнительные сведения см. в разделе Хранилище управляющих данных.