OSVIS(1)

πŸ‘‘ OSVIS(1) β€” the osvis manual, bestie edition πŸ’–

okay so like. <rainbow>osvis</rainbow> is the visualize high-level system activity girlie. she's from the General Commands Manual section (that's the (1) btw, iykyk ✨), and she's about to make your whole system's vibe check look gorgeous.


✨ SYNOPSIS ✨

osvis [-V] [-b bytes] [-d activity] [-i ops] [-m packets] [pmview options] [interface ...]

πŸ¦‹ DESCRIPTION πŸ¦‹

So <pink>osvis</pink> pulls up a high-level overview of performance statistics, and the way it does that is by collecting them from the Performance Co-Pilot infrastructure (that's PCP(1), mwah πŸ’…). The display literally breathes β€” it's modulated by the values of the performance metrics it retrieves from the target host (which is running pmcd(1)) or from the PCP archive log identified by archive. And it refreshes every interval seconds β€” default is 2 seconds, no cap 🫢.

Same deal as literally every pmview(1) scene: move the mouse over one of the bars and the current value + metric info for that bar pops up in the text box near the top of the display. Iconic behaviour honestly. And the height and/or color of the bars is proportional to the performance metric values relative to the maximum expected activity, which is controlled by the -d, -i and -m options (scroll down bestie, they're all there πŸ’–).

The bars in the osvis scene represent this info:

  • CPU β€” this column shows CPU utilization, aggregated over all CPUs. every single one. periodt.
  • Disk β€” the first stack is the rate of disk read and write operations aggregated over all disk spindles. The second bar is the average time the disks are busy, which approximates average time utilization of all disks. ✨
  • Disk Controllers β€” the average time the disks were busy on each controller, which approximates the average time utilization of all disks on each controller.
  • Load β€” the three bars represent the average load for the past 1, 5 and 15 minutes. This is normalized by twice the number of CPUs on the machine. math girlie πŸ’…
  • Mem β€” the stack shows memory utilization by breaking real memory down into kernel, file system and user usage. lowkey important: the memory utilization metrics (mem.util) may not be available on all hosts, so Mem may only show the amount of free memory as a single bar on some hosts. not every host is blessed 😭
  • Network Input β€” the two rows of bars show the input byte rate and the input packet rate for each network interface, except loopback and slip interfaces. sorry loopback, not today πŸ™ˆ
  • Network Output β€” the two rows of bars show the output byte rate and the output packet rate for each network interface, except for loopback and slip interfaces.

πŸŽ€ COMMAND LINE OPTIONS πŸŽ€

If you pass any optional interface arguments on the command line, then only the network interfaces matching those interface arguments will show up in the Network Input and Network Output sections. By default? all interfaces, we're using everybody πŸ’…. The interface arguments get used as patterns for egrep(1) matching against the interface names β€” so like, ec would select all external Ethernet interfaces for a Challenge S. so true.

osvis uses pmview(1), so the user interface follows the one described for pmview(1), which in turn displays the scene within an Inventor examiner viewer. fancy fr fr.

osvis passes most command line options straight to pmview(1). So these ones β€” -A, -a, -C, -h, -n, -O, -p, -S, -t, -T, -x, -Z and -z β€” plus the user interface, are all described in the pmview(1) man page. go read that one bestie, it's not my job today πŸ’–

Options that are specific to osvis:

  • -b β€” controls the maximum expected network throughput, in bytes. The default value is 65536 bytes.
  • -d β€” controls the maximum expected disk utilization, as a percentage. The default value is 30%.
  • -i β€” controls the maximum (normalization) value for the disk read and write rates. The default value is 100 operations/second.
  • -m β€” controls the maximum (normalization) value for the packet input and packet output rates. The default value is 750 packets/second.
  • -V β€” the derived configuration file for pmview(1) gets written on standard output. This may be saved and used directly with pmview if you wanna customize the display, or modify some of the normalization parameters. slay ✨

🌸 FILES 🌸

  • $PCP_VAR_DIR/pmns/* β€” default PMNS specification files
  • $PCP_VAR_DIR/config/pmlogger/config.osvis β€” pmlogger(1) configuration file that can be used to create a PCP archive suitable for display with osvis

πŸ’œ PCP ENVIRONMENT πŸ’œ

Environment variables with the prefix PCP_ are used to parameterize the file and directory names used by PCP. On each installation, the file /etc/pcp.conf contains the local values for these variables. The $PCP_CONF variable may be used to specify an alternative configuration file, as described in pcp.conf(4). environment girlies stay winning 🫢


🌈 SEE ALSO 🌈

pmcd(1), pmlogger(1), pmview(1), pcp.conf(4), pcp.env(4) and pmlaunch(5).

like. go read them. the whole friend group πŸ’–


πŸ’€ DIAGNOSTICS πŸ’€

osvis will silently remove those blocks from the scene whose metrics are not available from the live host or the archive. no drama, no error message, she just quietly ghosts them 😭 not me getting ghosted by my own metricsβ€”


bestie this whole thing is from Performance Co-Pilot, it's OSVIS(1), and that's the whole page. mwah πŸ’…βœ¨πŸŽ€πŸ¦‹πŸŒΈ
πŸ“¦ where this page comes from