Função PdhOpenLogA (pdh.h)
Abre o arquivo de log especificado para leitura ou gravação.
Sintaxe
PDH_FUNCTION PdhOpenLogA(
[in] LPCSTR szLogFileName,
[in] DWORD dwAccessFlags,
[in] LPDWORD lpdwLogType,
[in] PDH_HQUERY hQuery,
[in] DWORD dwMaxSize,
[in] LPCSTR szUserCaption,
[out] PDH_HLOG *phLog
);
Parâmetros
[in] szLogFileName
Cadeia de caracteres terminada em nulo que especifica o nome do arquivo de log a ser aberto. O nome pode conter um caminho absoluto ou relativo.
Se o parâmetro lpdwLogType for PDH_LOG_TYPE_SQL, especifique o nome do arquivo de log no formulário , SQL:DataSourceName!LogFileName.
[in] dwAccessFlags
Tipo de acesso a ser usado para abrir o arquivo de log. Especifique um dos valores a seguir.
Você pode usar o operador OR inclusivo bit a bit (|) para combinar o tipo de acesso com um ou mais dos sinalizadores de criação a seguir.
Valor | Significado |
---|---|
|
Cria um novo arquivo de log com o nome especificado. |
|
Cria um novo arquivo de log com o nome especificado. Se o arquivo de log já existir, a função removerá o arquivo de log existente antes de criar o novo arquivo. |
|
Abre um arquivo de log existente com o nome especificado. Se um arquivo de log com o nome especificado não existir, isso será igual a PDH_LOG_CREATE_NEW. |
|
Abre um arquivo de log existente com o nome especificado ou cria um novo arquivo de log com o nome especificado. |
|
Cria um arquivo de log circular com o nome especificado. Quando o arquivo atinge o valor do parâmetro dwMaxSize , os dados são encapsulados no início do arquivo de log. Você só poderá especificar esse sinalizador se o parâmetro lpdwLogType for PDH_LOG_TYPE_BINARY. |
|
Usado com PDH_LOG_TYPE_TSV para gravar o usuário legenda ou a descrição do arquivo de log indicado pelo parâmetro szUserString de PdhUpdateLog ou PdhOpenLog. A descrição do arquivo de log ou legenda do usuário é gravada como a última coluna na primeira linha do log de texto. |
[in] lpdwLogType
Tipo de arquivo de log a ser aberto. Esse parâmetro pode usar um dos valores a seguir.
[in] hQuery
Especifique um identificador de consulta se você estiver gravando dados de consulta em um arquivo de log. A função PdhOpenQuery retorna esse identificador.
Esse parâmetro será ignorado e deverá ser NULL se você estiver lendo do arquivo de log.
[in] dwMaxSize
Tamanho máximo do arquivo de log, em bytes. Especifique o tamanho máximo se quiser limitar o tamanho do arquivo ou se dwAccessFlagsespecificar PDH_LOG_OPT_CIRCULAR; caso contrário, defina como 0.
Para arquivos de log circulares, você deve especificar um valor grande o suficiente para conter pelo menos um exemplo. O tamanho da amostra depende da coleta de dados. No entanto, especificar um valor de pelo menos um megabyte abrangerá a maioria dos exemplos.
[in] szUserCaption
Cadeia de caracteres terminada em nulo que especifica o legenda definido pelo usuário do arquivo de log. Um arquivo de log legenda geralmente descreve o conteúdo do arquivo de log. Quando um arquivo de log existente é aberto, o valor desse parâmetro é ignorado.
[out] phLog
Manipule para o arquivo de log aberto.
Retornar valor
Se a função for bem-sucedida, ela retornará ERROR_SUCCESS.
Se a função falhar, o valor retornado será um código de erro do sistema ou um código de erro PDH.
Comentários
Para usar essa função para gravar dados de desempenho em um arquivo de log, você deve abrir uma consulta usando PdhOpenQuery e adicionar os contadores desejados a ele, antes de chamar essa função.
Sistemas operacionais mais recentes podem ler arquivos de log que foram gerados em sistemas operacionais mais antigos; no entanto, os arquivos de log criados no Windows Vista e em sistemas operacionais posteriores não podem ser lidos em sistemas operacionais anteriores.
As regras a seguir se aplicam aos arquivos de log
READ_ACCESS requer OPEN_EXISTING.
UPDATE_ACCESS não pode ser usado com logs baseados em arquivo. Ele só pode ser usado com logs de banco de dados.
WRITE_ACCESS requer uma das OPEN_ALWAYS CREATE_NEW, CREATE_ALWAYS, OPEN_EXISTING e OPEN_ALWAYS.
Exemplos
Para obter um exemplo, consulte Gravando dados de desempenho em um arquivo de log.
Observação
O cabeçalho pdh.h define PdhOpenLog como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | pdh.h |
Biblioteca | Pdh.lib |
DLL | Pdh.dll |