Compartilhar via


Dar suporte à classe Win32_PerfFormattedData

Ao escrever um provedor de alto desempenho que deriva classes de Win32_PerfFormattedData, você deve seguir convenções específicas para que o WMI possa calcular os valores da propriedade.

Observação

Escrever um provedor WMI de alto desempenho para criar contadores de desempenho não é recomendado em nenhuma versão do sistema operacional Windows. Para obter mais informações, confira Tornar um provedor de instância em um provedor de alto desempenhoe Bibliotecas de desempenho e WMI.

 

O procedimento a seguir descreve como dar suporte à classe Win32_PerfFormattedData.

Para dar suporte à classe Win32_PerfFormattedData

  1. Crie sua classe no mesmo namespace que a classe bruta correspondente. A classe precisa ser derivada de Win32_PerfFormattedData e ter o qualificador HiPerf definido como TRUE. Para obter mais informações sobre como criar sua própria classe para o WMI, confira Projetar classes do MOF (Managed Object Format).

  2. Especifique "HiPerfCooker_v1" no qualificador Provider.

  3. Especifique os seguintes qualificadores de nível de classe, além dos qualificadores usados para as classes brutas:

    Observação

    Não defina nenhum valor para GenericPerfCtr, PerfIndex nem HelpIndex, pois eles serão definidos pelo processo ADAP. Para obter mais informações, consulte Qualificadores de classe para classes de contador de desempenho.

     

  4. Inclua uma propriedade de chave chamada Name em sua classe (essa propriedade não é necessária para classes singleton).

    O valor da propriedade Name deve ser o mesmo que a classe bruta correspondente. Você não deve usar nenhuma propriedade de chave diferente de Name em sua classe.

  5. Crie propriedades com tipo de dados DWORD (uint32) ou QWORD (uint64).

    As propriedades devem corresponder a uma propriedade na classe bruta ou a uma propriedade na classe que você está criando.

  6. Especifique os seguintes qualificadores de nível de propriedade para todas as propriedades em sua classe, além dos qualificadores PerfIndex e PerfDetail usados para as propriedades de classe bruta:

    Para obter mais informações, confira Qualificadores de propriedade para classes de contador de desempenho. Além disso, o arquivo de cabeçalho Winperf.h contém valores que você pode especificar para PerfDetail e CounterType.

  7. Verifique se o provedor atende aos requisitos de desempenho.

Requisitos de desempenho

Quando você escreve um provedor de alto desempenho, o desempenho dele deve atender aos seguintes requisitos:

  • Abrir o arquivo DLL de alto desempenho não pode levar mais de 100 milissegundos. Em geral, abrir cada provedor de alto desempenho e a biblioteca de desempenho não pode exceder 5 segundos.
  • A atualização de dados não pode levar mais de 10 milissegundos por coleta. Em uma operação geral de atualização e coleta, todos os provedores de alto desempenho juntos não podem levar mais de 800 milissegundos.
  • A carga geral da CPU para todos os provedores de alto desempenho não pode exceder de 6 a 7% de sobrecarga de CPU interativamente ou 5% para registro em log.

Transformar um provedor de instância em um provedor de alto desempenho