Perfmon-Like for Linux

Perfmon-like for Linux?

The program "top" does most of this. It does not handle network traffic though.

Edit:

If you need to log this information for post processing/analysis you can use the standard package "sar" to do this. It supports MANY different performance numbers including: disk, cpu, memory, network, etc.

sar manpage

Ubuntu performance monitor tools like PerfMon

thanks to Nachiket Kate
, the closest thing to my requirments is the following command: pidstat -r -u -p -I 3

Linux Performance Monitoring, any way to monitor per-thread?

perf is a system profiling tool you can use. it's not like https://github.com/castl/easyperf), which is a library and you use it in your code. Following the steps and use it to profile your program:

  1. Install perf on Ubuntu. The installation could be quite different in different Linux distribution. You can find out the installation tutorial line.

  2. Simply run your program and get all thread id of your program:

    ps -eLf | grep [application name]

  3. open separate terminal and run perf as perf stat -t [threadid] according to man page:

    usage: perf stat [<options>] [<command>]

    -e, --event <event>   event selector. use 'perf list' to list available events
    -i, --no-inherit child tasks do not inherit counters
    -p, --pid <n> stat events on existing process id
    -t, --tid <n> stat events on existing thread id
    -a, --all-cpus system-wide collection from all CPUs
    -c, --scale scale/normalize counters
    -v, --verbose be more verbose (show counter open errors, etc)
    -r, --repeat <n> repeat command and print average + stddev (max: 100)
    -n, --null null run - dont start any counters
    -B, --big-num print large numbers with thousands' separators

there is an analysis article about perf, you can get a feeling about it.

testing performance on Linux dockers

There are several ways of monitoring Docker instance statistics:

  1. Built-in Runtime Metrics
  2. cAdvisor - probably this one will be the easiest to setup and use
  3. Any of built-in Linux monitoring tools

Of course you can normally use JMeter PerfMon Plugin as this way you will get performance monitoring results integrated into your test script and be able to correlate JMeter metrics with server health metrics. Just make sure there is a TCP/UDP connectivity between JMeter and PerfMon Server Agent, default port is 4445 so make sure container exposes this port to the outside world.



Related Topics



Leave a reply



Submit