# nmon.conf



################################
# Nmon processes related options
################################

#
# These options will be used to manage Nmon processes starting options
#

# This configuration file will set the interval and snapshot values when starting up the nmon binary
# It is being sourced by the metricator_helper.sh script during script startup

# *** BE UPGRADE RESILIENT: *** Copy this file to your local/nmon.conf to prevent future upgrades from overwriting your settings
# *** DON'T MODIFY THIS FILE ***

# *** FILE ENCODING: UTF-8 ! ***
# When creating a local/nmon.conf, pay attention to file encoding specially when working under Windows.
# The file must be UTF-8 encoded or you may run in trouble.

### NMON COLLECT OPTIONS ###

# The metricator_helper.sh input script is set by default to run every 60 seconds
# If Nmon is not running, the script will start Nmon using the configuration above

###
### FIFO options:
###

# Using FIFO files (named pipe) are now used to minimize the CPU footprint of the technical addons
# As such, it is not required anymore to use short cycle of Nmon run to reduce the CPU usage

# You can still want to manage the volume of data to be generated by managing the interval and snapshot values
# as a best practice recommendation, the time to live of nmon processes writing to FIFO should be 24 hours

# value for interval: time in seconds between 2 performance measures
fifo_interval="60"

# value for snapshot: number of measure to perform
fifo_snapshot="1440"

### VARIOUS COMMON OPTIONS ###

# Time in seconds of margin before running a new iteration of Nmon process to prevent data gaps between 2 iterations of Nmon
# the metricator_helper.sh script will spawn a new Nmon process when the age in seconds of the current process gets higher than this value

# The endtime is evaluated the following way: 
# endtime=$(( ${interval} * ${snapshot} - ${endtime_margin} ))

# When the endtime gets higher than the endtime_margin, a new Nmon process will be spawned
# default value to 240 seconds which will start a new process 4 minutes before the current process ends

# Setting this value to "0" will totally disable this feature

endtime_margin="240"

### NFS OPTIONS ###

# Change to "1" to activate NFS V2 / V3 (option -N) for AIX hosts
AIX_NFS23="0"

# Change to "1" to activate NFS V4 (option -NN) for AIX hosts
AIX_NFS4="0"

# Change to "1" to activate NFS V2 / V3 / V4 (option -N) for Linux hosts
# Note: Some versions of Nmon introduced a bug that makes Nmon to core when activating NFS, ensure your version is not outdated
Linux_NFS="0"

### LINUX OPTIONS ###

# Change the priority applied while looking at nmon binary
# by default, the metricator_helper.sh script will use any nmon binary found in PATH
# Set to "1" to give the priority to embedded nmon binaries
# Note: Since release 1.6.07, priority is given by default to embedded binaries
Linux_embedded_nmon_priority="1"

# Change the limit for processes and disks capture of nmon for Linux
# In default configuration, nmon will capture most of the process table by capturing main consuming processes
# This function is percentage limit of CPU time, with a default limit of 0.01
# Changing this value can influence the volume of data to be generated, and the associated CPU overhead for that data to be parsed

# Possible values are:
# Linux_unlimited_capture="0" --> Default nmon behavior, capture main processes (no -I option)
# Linux_unlimited_capture="-1" --> Set the capture mode to unlimited (-I -1)
# Linux_unlimited_capture="x.xx" --> Set the percentage limit to a custom value, ex: "0.01" will set "-I 0.01"
Linux_unlimited_capture="0"

# Set the maximum number of devices collected by Nmon, default is set to 1500 devices
# This option will be ignored if you set the Linux_unlimited_capturation below.
# Increase this value if you have systems with more devices
# Up to 3000 devices will be taken in charge by the Application (hard limit in nmonparser)
Linux_devices="1500"

# Enable disks extended statistics (DG*)
# Default is true, which activates and generates DG statistics
Linux_disk_dg_enable="1"

# Name of the User Defined Disk Groups file, "auto" generates this for you
Linux_disk_dg_group="auto"

### SOLARIS OPTIONS ###

# Change to "1" to activate VxVM volumes IO statistics
Solaris_VxVM="0"

# UARG collection (new in Version 1.11), Change to "0" to deactivate, "1" to activate (default is activate)
Solaris_UARG="1"

### AIX COMMON OPTIONS ###

# CAUTION: Since release 1.3.0, we use fifo files, which requires the option "-yoverwrite=1"

# Change this line if you add or remove common options for AIX, do not change NFS options here (see NFS options)
# the -p option is mandatory as it is used at launch time to save instance pid
AIX_options="-T -A -d -K -L -M -P -^ -p -yoverwrite=1"

# enable this line if you want to get only active disks
# AIX_options=""-T -A -d -K -L -M -P -^ -p -k `lspv|grep active|awk '{print $1","}'|tr -d '\040\011\012\015'` -yoverwrite=1"

#############################
# Application related options
#############################

#
# These options are not directly related to nmon processes but to general features of the technical add-on
#

######################
# hostname definition:
######################

# This option can be used to force the technical add-on to use the Splunk configured value of the server hostname
# If for some reason, you need to use the Splunk host value instead of the system real hostname value, set this value to "1"

# We will search for the value of host=<value> in $SPLUNK_HOME/etc/system/local/inputs.conf
# If no value can be found, or if the file does not exist, we will fallback to the normal behavior

# Default is use system hostname

# FQDN management in nmonparser: The --fqdn option is not compatible with the host name override, if the override_sys_hostname
# is activated, the --fqdn argument will have no effect

override_sys_hostname="0"

#####################
# frameID definition:
#####################

# The frameID definition is an enrichment mechanism used within the application to associate a given host with a given frame identifier
# By default, the mapping is operated against the value of "serialnum" which is defined at the raw level by nmon binaries

# On AIX systems, the serialnum value is equal to the serial number of the frame hosting the partition
# On Linux and Solaris systems, the serialnum is equal to the value of the hostname

# Using this option allows you to override the serialnum value by a static value defined in the nmon.conf configuration file
# nmon.conf precedence allows defining the serialnum value on per deployment basis (local/nmon.conf) or on a per server basis (/etc/nmon.conf)

# default is:
# override_sys_serialnum="0"
# which lets nmon set the serialnum value

# Set this value to:
# override_sys_serialnum="1"
# to activate the serialnum override based on the value defined in:

# override_sys_serialnum_value="<sting>"
# Acceptable values for <string> are letters (lower and upper case), numbers and "-" / "_"

override_sys_serialnum="0"
override_sys_serialnum_value="none"

########################
# nmon external metrics:
########################

# nmon external generation management

# This option will manage the activation or deactivation of the nmon external data generation at the lower level, before it comes to parsers
# default is activated (value=1), set to "0" to deactivate

nmon_external_generation="1"

###############
# fifo options:
###############

# Fifo options

# The realtime mode which corresponds to the old mechanism is now deprecated
# fifo mode is mandatory

# Default is "1" which means write to fifo

mode_fifo="1"

#######################
# nmon parsers options:
#######################

# consult the documentation to get the full list of available options

# --mode fifo|colddata --> explicitly manage data in fifo/colddata
# --use_fqdn --> use the host fully qualified domain name (default)
# --silent --> minimize the processing output to save data volume (deactivated by default)
# --show_zero_values --> allows generating metrics with 0 values (default removes any metric with a zero value before it reaches the ingestion)

# In fifo mode, options are sent by the metricator_consumer.sh
# In file mode, options are sent by Splunk via the nmon_processing stanza in props.conf

nmonparser_options="--mode fifo --use_fqdn --silent"
