Olá Pessoal,
No embalo do post anterior, onde falei da ferramenta Logman, vou aproveitar para falar também de outra ferramenta que podemos trabalhar em conjunto com a Logman que é a Relog. Com esta ferramenta você pode manipular os arquivos coletados com o Logman, gerando novos arquivos com períodos diferentes de coleta, unir vários arquivos em um só ou “quebrar” um grande arquivo em vários menores e por ai vai. Vamos ver como fazer isso.
A sintaxe completa com as descrições dos parâmetros do comando Relog segue abaixo:
Microsoft r Relog.exe (6.1.7601.17514)
Relog creates new performance logs from data in existing performance logs by
changing the sampling rate and/or converting the file format. Supports all
performance log formats, including Windows NT 4.0 compressed logs.Usage:
relog <filename [filename ...]> [options]Parameters:
<filename [filename ...]> Performance file to relog.Options:
-? Displays context sensitive help.
-a Append output to the existing binary file.
-c <path [path ...]> Counters to filter from the input log.
-cf <filename> File listing performance counters to filter
from the input log. Default is all counters
in the original log file.
-f <CSV|TSV|BIN|SQL> Output file format.
-t <value> Only write every nth record into the output
file. Default is to write every record.
-o Output file path or SQL database.
-b <dd/MM/yyyy HH:mm:ss> Begin time for the first record to write
into the output file.
-e <dd/MM/yyyy HH:mm:ss> End time for the last record to write into
the output file.
-config <filename> Settings file containing command options.
-q List performance counters in the input file.
-y Answer yes to all questions without prompting.
Na rotina de monitoramento que estou criando, eu quero carregas os dados coletados para dentro do SQL Server, e para isso vou utilizar a seguinte sintaxe:
relog “c:\PerfLogs\MyDataCollector_000001.blg” -f SQL -o SQL:DSN_SQL!SRVPROD
Com esta instrução estou informando que desejo que a saída do meu arquivo seja o SQL Server. Para me conectar a uma instância específica, temos antes de criar uma DSN no servidor que estamos trabalhando. No meu exemplo, minha DSN é a DSN_SQL e o servidor que estou trabalhando é o SRVPROD. Com isso, faremos a carga dos dados coletados no arquivo MyDataCollector_000001.blg para o SQL Server.
Quando os dados são carregados para o SQL Server são criadas 3 tabelas no banco de dados que você especificou para conexão na DSN. As tabelas são:
- dbo.DisplayToID
- dbo.CounterData
- dbo.CounterDetails
A tabela DisplayToID possui informações da coleta como um todo como por exemplo servidor que foram coletadas as informações e início e fim da coleta. Já a tabela CounterDetails possui informações de cada contador utilizado na coleta como nome do objeto, nome do contador, instância do contador e assim por diante. Por fim, a tabela CounterData possui os dados efetivamente da coleta.
Com as informações destas três tabelas você consegue responder quando a coleta foi realizada, quais contadores, com detalhes, foram utilizados e quais os valores coletados. A cada coleta realizada é gerado um novo registro na tabela DisplayToID, com um novo código sequencial. Se novos contadores forem utilizados, estes são adicionados à tabela de detalhes, caso contrário, somente os dados de coleta são adicionados na tabela de dados.
Acho que por enquanto é isso. Boas coletas!
[]’s
Erickson Ricci
Erickson, ao executar o Relog estou com o seguinte erro : ” Erro: para colocar novamente no log vários arquivos, todos eles devem estar em formato binário. ” Você já teve este tipo de problema, tem alguma alternativa para me indicar ?
Sintaxe : ” relog C:\Program Files\Microsoft SQL Server\Perfmon\SRVHOMOLOG2_Performance_Counter.blg -f SQL -o SQL:DSNSQL “
Ah Erickson, Obrigado consegui resolver já !