我试图在我们的网络服务器上设置一些性能监控。
我认为有两个单独的数据收集集是有意义的,一个带有硬件和OS计数器,另一个用于web信息(.net性能、每分钟连接、错误等等)。
我设定了时间表,以便两者同时运行,但其中一个总是在5秒后退出。有可能同时运行多个数据收集器集吗?
发布于 2013-03-21 12:52:23
多年来,我在许多性能日志中都遇到了同样的问题。对我来说最有效的解决办法是:
在我看来,这种做法要好得多,因为:
在我的服务器中,在处理之后,我通常会得到大约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 Functionhttps://serverfault.com/questions/490023
复制相似问题