Scripts and Binaries

This depends on the stack component:

Component name

Contains scripts and binaries ?

metricator-for-nmon

No

SA-metricator-for-nmon

No

TA-metricator-for-nmon

Yes

TA-metricator-hec-for-nmon

Yes

DA-ITSI-METRICATOR-NMON

No

metricator-for-nmon

The core front-end application does NOT contain any kind of script or binary.

SA-metricator-for-nmon

The Support Add-on does NOT contain any kind of script or binaries.

DA-ITSI-METRICATOR-NMON

The ITSI module does NOT contain any kind of script or binary.

Technical Addons

The Technical Add-on contains various scripts and binaries:

Embedded Scripts in the Technical Add-on

metricator_helper:

  • bin/metricator_helper.sh:

This shell script is being used by the application to launch Nmon binaries whenever it is detected as required.

It is responsible as well for launching the fifo_reader scripts.

metricator_reader:

  • bin/metricator_reader.pl

  • bin/metricator_reader.py

  • bin/metricator_reader.sh

These scripts are continuously running as background processes on each server running the technical Add-ons. Their purpose is to read the fifo files (named pipe) nmon processes are writing to, and extract the different typologies of data from their nmon data

metricator_consumer:

  • bin/metricator_consumer.sh

This script is scheduled by default to run every 60 seconds. Its purpose is to recompose the nmon flaw of data to be parsed by the nmon parser scripts. (see below)

nmonparser:

  • bin/nmonparser.sh | bin/nmonparser.py | bin/nmonparser.pl | bin/nmonparser_hec.py | bin/nmonparser_hec.pl:

Shell / Python / Perl scripts used to manage and process Nmon raw data into multiple csv files being indexed by Splunk for the TA-metricator-for-nmon, or sent over http for the TA-metricator-hec-for-nmon.

The Shell script is a wrapper script to Python / Perl scripts. (this decision is made on local interpreter availability with Python as the default choice)

metricator_cleaner:

  • bin/metricator_cleaner.sh / bin/metricator_cleaner.py / metricator_cleaner.pl

Shell / Python / Perl scripts used to manage internal retention and purge.

The Shell script is a wrapper script to Python / Perl scripts. (decision is made on local interpreter availability with Python as the default choice)

Embedded Binaries in the Technical Add-on

The TA-nmon embeds Nmon binaries for Linux vendors and Solaris OS. AIX embeds by default its own version of Nmon, known as “topas-nmon”.

For Linux OS:

  • bin/linux: Main directory for Linux specific Nmon binaries

  • bin/linux/amzn: 64 bits binaries for Amazon Linux (AMI)

  • bin/linux/centos: 32/64 bits binaries for Centos

  • bin/linux/debian: 32/64 bits binaries for Debian GNU/Linux

  • bin/linux/fedora: 32/64 bits binaries for Fedora project

  • bin/linux/generic: 32/64/ia64/power/mainframe binaries compiled for generic Linux

  • bin/linux/mint: 32/64 bits binaries for Linux Mint

  • bin/linux/opensuse: 32/64 bits binaries for Linux Opensuse

  • bin/linux/ol: 32/64 bits binaries for Oracle Linux

  • bin/linux/rhel: 32/64/ia64/mainframe/power binaries for Redhat Entreprise Server

  • bin/linux/sles: 32/64/ia64/mainframe/power binaries for Suse Linux Entreprise Server

  • bin/linux/ubuntu: 32/64/power/arm binaries for Ubuntu Linux

  • bin/linux/arch: 32/64 bits binaries for Archlinux

  • bin/raspbian: arms binaries for Raspbian Linux

Most of these binaries come from the official Nmon Linux project site. On x86 processor and for Centos / Debian / Ubuntu / Oracle Linux these binaries compiled by myself using Vagrant and Ansible automation. (See https://github.com/guilhemmarchand/nmon-binaries)

Associated scripts resource (metricator_helper.sh) will always try to use the best available version of Nmon and it will fall back to generic or system embedded if none of the specially compiled versions can fit the system.

For Solaris OS:

sarmon binaries for Oracle Solaris x86 and Sparc:

  • bin/sarmon_bin_i386: sarmon binaries for Solaris running on x86 arch

  • bin/sarmon_bin_sparc: sarmon binaris for Solaris running on sparc arch

sarmon binaries comes from the official sarmon site project.

For AIX:

Nmon is shipped within AIX by default with topas-nmon binary.