The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

bkpr-top - Display real-time performance metrics of running workers

VERSION

Version 0.09

SYNOPSIS

  Usage: bkpr-top [OPTIONS]
  
  Display real-time performance metrics of running workers.
  
    -h, --host  str  display status only of specified host
    -p, --pool  str  display status only of specified pool
    -c, --class str  display status only of specified worker class
    -l, --list       display status of every individual worker
    -b, --batch      display current status and exit immediately
    -h, --help       display this help and exit
  
  Filters --host, --pool and --class can be combined.
  
  The metrics displayed are:
  
     nps:   number of received notifications per second
     cps:   number of processed calls per second
     err:   number of errors per second
     mem:   resident memory size in KiB
     cpu:   percentage of CPU load
     load:  percentage of busy time
  
  Change sorting field pressing (N)otifications, (C)alls, (M)emory, cp(U) or (L)oad.

DESCRIPTION

Display real-time performance metrics of running workers in a top fashion.

Sorting order can be changed pressing keys N, C, M, U and L. Pressing Q quits the program.

Displayed metrics

nps

Number of received notifications per second.

cps

Number of processed calls per second.

err

Number of errors per second generated while handling calls or notifications.

mem

Resident non shared memory size in KiB. This is roughly equivalent to the value of RES minus SHR displayed by top.

For example, supposing that there are 2 GiB of memory available, a service that shows a mem usage of 1024 is using half of the memory resources.

cpu

Percentage of CPU load (100 indicates a full utilization of one core thread).

For example, supposing that there are 4 core threads available, a service that shows a cpu load of 200 is using half of the CPU resources.

load

Percentage of busy time (100% indicates that there are no idle workers).

Note that workers can have a high load with very little CPU usage when being blocked by synchronous operations (like slow SQL queries).

For example, supposing that there are 10 workers running, a service that shows a load of 50% is working at half capacity. Spawning 10 additional workers will lower the load to 25%.

Due to inaccuracies of measurement the actual maximum may be slightly below 100%.

Unless the option --host is passed the values shown are the aggregate of all workers, even if these are on different hosts.

SEE ALSO

Beekeeper::Service::Supervisor.

AUTHOR

José Micó, jose.mico@gmail.com

COPYRIGHT AND LICENSE

Copyright 2015-2021 José Micó.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language itself.

This software is distributed in the hope that it will be useful, but it is provided “as is” and without any express or implied warranties. For details, see the full text of the license in the file LICENSE.