Windows 2008 R2:Perfmon,多个数据收集集,这是可能的

Windows 2008 R2:Perfmon,多个数据收集集,这是可能的

我正在尝试在我们的网络服务器上设置一些性能监控。

我认为拥有两个独立的数据收集集是有意义的,一个用于硬件和操作系统的计数器,另一个用于网络信息(.net 性能、每分钟连接数、错误等)。

我设置了时间表,让两个程序同时运行,但其中一个程序总是在 5 秒后停止运行。是否可以同时运行多个数据收集器?

答案1

好吧,多年来,我在许多性能日志中都遇到了同样的问题。对我来说最有效的解决方法是:

  • 仅在一个作业中配置所有计数器
  • 确保目标文件夹不受系统保护
  • 使用 relog -q 一次“提取”所有计数器
  • 使用一些脚本(我使用 vbscrip)将大文件“分割”为具有您真正需要的计数器的小文件。

我认为这种方法更好,因为:

  1. 您可以检查“更多”计数器并在收集后对其进行过滤,但您始终可以选择获取“其他”计数器。
  2. relog 可以导出到 csv 或 txt,并解析图表

在我的服务器中,经过处理后,我通常会得到大约 6-8 个不同的文件、csv 和其他脚本将它们加载到图表 DDBB 中以进行定期查询。

希望能帮助到你。

- - - - - - - 附加信息 - - - - - - - -

这是脚本的一部分,不是英文的,但我想如果你对脚本有一点了解的话你就会明白这一点(我相信你懂的)

我有一个“脚本”文件夹、一个“度量”文件夹和一个“计数器”文件夹,基本上,我使用不同的参数和计数器但相同的“输入”启动重新记录,因此我获得与我想要提取的计数器组一样多的文件。

如果将它们导出为二进制(BLG),您可以使用性能控制台打开它们(也适合调试)。

' *** Constantes ***
' Algunas incluyen el espacio para que sea mas comodo su concatenacion
Const LanzaScript = "cscript "
Const ScriptConversion = "CambiaFormatoFechaYCaracterDecimal.vbs "
Const ArchivoMetrica = "DataCollector01.blg"
Const Para_Relog = "relog.exe "
Const Para_FormatoBin = " -f BIN "
Const Para_ExtBin = ".blg"
Const Para_FormatoCsv = " -f CSV "
Const Para_ExtCSV = ".csv"
Const Para_Contadores = " -cf "
Const Para_Salida = " -o "
Const Directorio_Salida = "D:\Metricas\"
Const Para_Confirmacion = " -y "

' Comprobaciones previas
CompruebaUso
CompruebaArgumentos

' Variables
Dim fso
Dim DirectorioMetricas
Dim DirectorioContadores
Dim Archivo

Dim objShell
Dim Estado
Dim Cmdz

' Objetos de ambito global
Set fso = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("WScript.Shell")
Set DirectorioMetricas = fso.GetFolder (WScript.Arguments(0))
Set DirectorioContadores = fso.GetFolder (WScript.Arguments(1))

' Comprobamos o creamos el directorio de salida
If Not fso.FolderExists (Directorio_Salida & "\" & Right (WScript.Arguments(0),6)) Then
    fso.CreateFolder (Directorio_Salida & "\" & Right (WScript.Arguments(0),6))
End If

' Algoritmo
If WScript.Arguments.Count = 3 Then
    Set Archivo = fso.GetFile (WScript.Arguments(1) & "\" & WScript.Arguments(2))
    ProcesaMetrica (Archivo)
Else
    For Each Archivo In DirectorioContadores.Files
        ProcesaMetrica (Archivo)
    Next
End If
' Salida

' Funciones
Sub ProcesaMetrica (Archivo)
    Dim Cmdz
    Dim fso
    ' Extraemos contadores a formato binario
    Cmdz = Transforma (Archivo, "BIN")
    objShell.Run Cmdz,2,True
    ' Extraemos contadores a formato CSV
    Cmdz = Transforma (Archivo, "CSV")
    objShell.Run Cmdz,2,True
    ' Cambiamos orden de fecha y caracter decimal
    Cmdz = CambiaFormato (Archivo.Name)
    objShell.Run Cmdz,2,True
End Sub

Function Transforma (Contador, tipo)
' tipo puede ser "BIN" o "CSV"
    Dim Cmdz
    Select Case LCase(tipo)
        Case "bin"
            ' Extraemos contadores a formato binario
            Cmdz = Para_Relog & Chr(34) & DirectorioMetricas & "\" & ArchivoMetrica & Chr(34)
            Cmdz = Cmdz & Para_Contadores & Chr(34) & Contador & Chr(34) & Para_FormatoBin & Para_Salida
            Cmdz = Cmdz & Chr(34) & Directorio_Salida & Right(WScript.Arguments(0),6) & "\" & Archivo.Name & Para_ExtBin & Chr(34) & Para_Confirmacion
            WScript.Echo "*** Para BLG :" & Cmdz
        Case "csv"
            ' Extraemos contadores a formato CSV
            Cmdz = Para_Relog & Chr(34) & DirectorioMetricas & "\" & ArchivoMetrica & Chr(34)
            Cmdz = Cmdz & Para_Contadores & Chr(34) & Contador & Chr(34) & Para_FormatoCsv & Para_Salida
            Cmdz = Cmdz & Chr(34) & Directorio_Salida & Right(WScript.Arguments(0),6) & "\" & Archivo.Name & Para_ExtCSV & Chr(34) & Para_Confirmacion
            WScript.Echo "*** Para CSV :" & Cmdz
    End Select
    Transforma = Cmdz
End Function

相关内容