Skip to main content

XiVO VoIP Server

Connector dependencies​

The following monitoring connectors will be installed when you install the XiVO VoIP Server connector through the Configuration > Monitoring Connector Manager menu:

Pack assets​

Templates​

The Monitoring Connector XiVO VoIP Server brings a host template:

  • App-VoIP-XiVO-custom

The connector brings the following service templates (sorted by the host template they are attached to):

Service AliasService TemplateService Description
XiVO-process-nginxApp-VoIP-XiVO-Process-nginx-customCheck nginx process
XiVO-process-postgresApp-VoIP-XiVO-Process-postgres-customCheck postgres process.
XiVO-process-xivo-agentdApp-VoIP-XiVO-Process-xivo-agentd-customCheck xivo-agentd process
XiVO-process-xivo-agidApp-VoIP-XiVO-Process-xivo-agid-customCheck xivo-agid process
XiVO-process-xivo-amidApp-VoIP-XiVO-Process-xivo-amid-customCheck xivo-amid process
XiVO-process-xivo-confgendApp-VoIP-XiVO-Process-xivo-confgend-customCheck xivo-confgend process
XiVO-process-xivo-ctidApp-VoIP-XiVO-Process-xivo-ctid-customCheck xivo-ctid process

The services listed above are created automatically when the App-VoIP-XiVO-custom host template is used.

Collected metrics & status​

Here is the list of services for this connector, detailing all metrics and statuses linked to each service.

NameUnit
nbprocN/A
mem_totalB
mem_avgB
cpu_total%

Prerequisites​

SNMP Configuration​

The SNMP service must be configured and activated on the host. Please refer to the official documentation. Your resource may require a list of addresses authorized to query it to be set up. Please ensure that the addresses of the Centreon pollers are included in this list.

Network flow​

The target resource must be reachable from the Centreon poller on the UDP/161 SNMP port.

Installing the monitoring connector​

Pack​

  1. If the platform uses an online license, you can skip the package installation instruction below as it is not required to have the connector displayed within the Configuration > Monitoring Connector Manager menu. If the platform uses an offline license, install the package on the central server with the command corresponding to the operating system's package manager:
dnf install centreon-pack-applications-voip-xivo
  1. Whatever the license type (online or offline), install the XiVO VoIP Server connector through the Configuration > Monitoring Connector Manager menu.

Plugin​

Since Centreon 22.04, you can benefit from the 'Automatic plugin installation' feature. When this feature is enabled, you can skip the installation part below.

You still have to manually install the plugin on the poller(s) when:

  • Automatic plugin installation is turned off
  • You want to run a discovery job from a poller that doesn't monitor any resource of this kind yet

More information in the Installing the plugin section.

Use the commands below according to your operating system's package manager:

dnf install centreon-plugin-Operatingsystems-Linux-Snmp

Using the monitoring connector​

Using a host template provided by the connector​

  1. Log into Centreon and add a new host through Configuration > Hosts.
  2. Fill in the Name, Alias & IP Address/DNS fields according to your resource's settings.
  3. Apply the App-VoIP-XiVO-custom template to the host. A list of macros appears. Macros allow you to define how the connector will connect to the resource, and to customize the connector's behavior.
  4. Fill in the macros you want. Some macros are mandatory.
MacroDescriptionDefault valueMandatory
SNMPEXTRAOPTIONSAny extra option you may want to add to every command (a --verbose flag for example). All options are listed here.
  1. Deploy the configuration. The host appears in the list of hosts, and on the Resources Status page. The command that is sent by the connector is displayed in the details panel of the host: it shows the values of the macros.

Using a service template provided by the connector​

  1. If you have used a host template and checked Create Services linked to the Template too, the services linked to the template have been created automatically, using the corresponding service templates. Otherwise, create manually the services you want and apply a service template to them.
  2. Fill in the macros you want (e.g. to change the thresholds for the alerts). Some macros are mandatory (see the table below).
MacroDescriptionDefault valueMandatory
PROCESSNAMEFilter process namenginx
PROCESSPATHFilter process path
PROCESSARGSFilter process arguments
CRITICALCritical threshold of matching processes count5:5
WARNINGWarning threshold of matching processes count
EXTRAOPTIONSAny extra option you may want to add to the command (a --verbose flag for example). All options are listed here.
  1. Deploy the configuration. The service appears in the list of services, and on the Resources Status page. The command that is sent by the connector is displayed in the details panel of the service: it shows the values of the macros.

How to check in the CLI that the configuration is OK and what are the main options for?​

Once the plugin is installed, log into your Centreon poller's CLI using the centreon-engine user account (su - centreon-engine). Test that the connector is able to monitor a resource using a command like this one (replace the sample values by yours):

/usr/lib/centreon/plugins/centreon_linux_snmp.pl \
--plugin=os::linux::snmp::plugin \
--mode=processcount \
--hostname=10.0.0.1 \
--snmp-version='2c' \
--snmp-community='my-snmp-community' \
--process-name='xivo-sysconfd' \
--process-path='' \
--process-args='' \
--regexp-name \
--regexp-path \
--regexp-args \
--warning='' \
--critical='1:1'

The expected command output is shown below:

OK: Number of current processes running: 1 | 'nbproc'=1;;;0; 'mem_total'=63850B;;;0; 'mem_avg'=93737B;;;0; 'cpu_total'=25%;;;0; 

Troubleshooting​

Please find the troubleshooting documentation for Centreon Plugins typical issues.

Available modes​

In most cases, a mode corresponds to a service template. The mode appears in the execution command for the connector. In the Centreon interface, you don't need to specify a mode explicitly: its use is implied when you apply a service template. However, you will need to specify the correct mode for the template if you want to test the execution command for the connector in your terminal.

All available modes can be displayed by adding the --list-mode parameter to the command:

/usr/lib/centreon/plugins/centreon_linux_snmp.pl \
--plugin=os::linux::snmp::plugin \
--list-mode

The plugin brings the following modes:

ModeLinked service template
arp [code]Not used in this Monitoring Connector
channel-usage [code]Not used in this Monitoring Connector
collection [code]Not used in this Monitoring Connector
cpu [code]Not used in this Monitoring Connector
cpu-detailed [code]Not used in this Monitoring Connector
disk-usage [code]Not used in this Monitoring Connector
diskio [code]Not used in this Monitoring Connector
expected-content [code]Not used in this Monitoring Connector
inodes [code]Not used in this Monitoring Connector
interfaces [code]Not used in this Monitoring Connector
json-content [code]Not used in this Monitoring Connector
list-diskio [code]Not used in this Monitoring Connector
list-diskspath [code]Not used in this Monitoring Connector
list-interfaces [code]Not used in this Monitoring Connector
list-processes [code]Not used in this Monitoring Connector
list-storages [code]Not used in this Monitoring Connector
load [code]Not used in this Monitoring Connector
memory [code]Not used in this Monitoring Connector
offset [code]Not used in this Monitoring Connector
processcount [code]App-VoIP-XiVO-Process-nginx-custom
App-VoIP-XiVO-Process-postgres-custom
App-VoIP-XiVO-Process-xivo-agentd-custom
App-VoIP-XiVO-Process-xivo-agid-custom
App-VoIP-XiVO-Process-xivo-amid-custom
App-VoIP-XiVO-Process-xivo-call-logd-custom
App-VoIP-XiVO-Process-xivo-confd-custom
App-VoIP-XiVO-Process-xivo-confgend-custom
App-VoIP-XiVO-Process-xivo-ctid-custom
App-VoIP-XiVO-Process-xivo-dxtora-custom
App-VoIP-XiVO-Process-xivo-provd-custom
App-VoIP-XiVO-Process-xivo-sysconfd-custom
response [code]Not used in this Monitoring Connector
response-time [code]Not used in this Monitoring Connector
soap-content [code]Not used in this Monitoring Connector
storage [code]Not used in this Monitoring Connector
swap [code]Not used in this Monitoring Connector
tcpcon [code]Not used in this Monitoring Connector
time [code]Not used in this Monitoring Connector
udpcon [code]Not used in this Monitoring Connector
uptime [code]Not used in this Monitoring Connector

Available options​

Generic options​

All generic options are listed here:

OptionDescription
--memcachedMemcached server to use (only one server).
--redis-serverRedis server to use (only one server). Syntax: address[:port]
--redis-attributeSet Redis Options (--redis-attribute="cnx_timeout=5").
--redis-dbSet Redis database index.
--failback-fileFall back on a local file if Redis connection fails.
--memexpirationTime to keep data in seconds (default: 86400).
--statefile-dirDefine the cache directory (default: '/var/lib/centreon/centplugins').
--statefile-suffixDefine a suffix to customize the statefile name (default: '').
--statefile-concat-cwdIf used with the '--statefile-dir' option, the latter's value will be used as a sub-directory of the current working directory. Useful on Windows when the plugin is compiled, as the file system and permissions are different from Linux.
--statefile-formatDefine the format used to store the cache. Available formats: 'dumper', 'storable', 'json' (default).
--statefile-keyDefine the key to encrypt/decrypt the cache.
--statefile-cipherDefine the cipher algorithm to encrypt the cache (default: 'AES').
--process-statusFilter process status. Can be a regexp. (default: 'running|runnable').
--process-nameFilter process name.
--regexp-nameAllows to use regexp to filter process name (with option --process-name).
--process-pathFilter process path.
--regexp-pathAllows to use regexp to filter process path (with option --process-path).
--process-argsFilter process arguments.
--regexp-argsAllows to use regexp to filter process arguments (with option --process-args).
--warningWarning threshold of matching processes count.
--criticalCritical threshold of matching processes count.
--memoryCheck memory usage.
--warning-mem-eachWarning threshold of memory used by each matching processes (in Bytes).
--critical-mem-eachCritical threshold of memory used by each matching processes (in Bytes).
--warning-mem-totalWarning threshold of total memory used by matching processes (in Bytes).
--critical-mem-totalCritical threshold of total memory used by matching processes (in Bytes).
--warning-mem-avgWarning threshold of average memory used by matching processes (in Bytes).
--critical-mem-avgCritical threshold of average memory used by matching processes (in Bytes).
--cpuCheck CPU usage. Should be used with fix processes. If processes pid changes too much, the plugin can't compute values.
--warning-cpu-totalWarning threshold of CPU usage for all processes (in percent). CPU usage is in % of one CPU, so maximum can be 100% * number of CPU and a process can have a value greater than 100%.
--critical-cpu-totalCritical threshold of CPU usage for all processes (in percent). CPU usage is in % of one CPU, so maximum can be 100% * number of CPU and a process can have a value greater than 100%.
--topEnable top memory usage display.
--top-numNumber of processes in top memory display (default: 5).
--top-sizeMinimum memory usage to be in top memory display (default: 52428800 -> 50 MB).

All available options for a given mode can be displayed by adding the --help parameter to the command:

/usr/lib/centreon/plugins/centreon_linux_snmp.pl \
--plugin=os::linux::snmp::plugin \
--mode=processcount \
--help