¿Cómo puedo escribir el resultado pidstat
en un archivo para analizarlo más adelante?
En sar
, puede monitorear el uso y escribir en un archivo para su posterior análisis utilizando el -o
argumento. Desde la página de manual:
If multiple samples and multiple reports are desired, it is convenient to specify an output file for the sar command. Run the sar command as a
background process. The syntax for this is:
sar -o datafile interval count >/dev/null 2>&1 &
All data are captured in binary form and saved to a file (datafile). The data can then be selectively displayed with the sar command using the
-f option. Set the interval and count parameters to select count records at interval second intervals. If the count parameter is not set, all
the records saved in the file will be selected. Collection of data in this manner is useful to characterize system usage over a period of time
and determine peak usage hours.
...
-o [ filename ]
Save the readings in the file in binary form. Each reading is in a separate record. The default value of the filename parameter is the
current daily data file, the /var/log/sa/sadd file. The -o option is exclusive of the -f option. All the data available from the kernel
are saved in the file (in fact, sar calls its data collector sadc with the option "-S ALL". See sadc(8) manual page).
Necesito monitorear el uso de recursos de un proceso específico por nombre. La herramienta equivalente para esto es pidstat
. Lamentablemente pidstat
no tiene -o
argumentos
[root@host ~]# pidstat -o pidstat.sadc -C "nginx" 1
Usage: pidstat [ options ] [ <interval> [ <count> ] ]
Options are:
[ -d ] [ -h ] [ -I ] [ -l ] [ -r ] [ -s ] [ -t ] [ -U [ <username> ] ] [ -u ]
[ -V ] [ -w ] [ -C <command> ] [ -p { <pid> [,...] | SELF | ALL } ]
[ -T { TASK | CHILD | ALL } ]
[root@host ~]#
¿Cómo puedo saber pidstat
cómo generar un archivo en formato sadc para poder analizarlo más tarde con herramientas como kSAR?
Respuesta1
puedes agregar su salida a un archivo de esta manera:
pidstat 3 -G nginx >> out.log