This is a cache of https://support.nagios.com/kb/article/nagios-xi-bpi-xml-cache-568.html. It is a snapshot of the page at 2025-05-14T00:09:35.588+0000.
Nagios <strong>xi</strong> - BPI XML Cache
Home » Categories » Multiple Categories

Nagios xi - BPI XML Cache

Overview

This KB article will explain how the Business Process Intelligence (BPI) component uses the XML cache file.

If you are not familiar with BPI, please refer to the following documentation:

Using Nagios BPI

 

 

What Is The BPI Cache

The BPI cache is a "point in time" dump of the BPI groups that currently exist in Nagios xi. It contains all the information of each group including the current state of each group. The cache is stored in the file bpi.xml and is stored by default in the /usr/local/nagiosxi/var/components/ location.

However the bpi.xml file does not exist by default. It only exists once you have run the BPI Configuration Wizard to create service checks of your BPI groups. From the documentation:

Once you've created your BPI groups, to receive notifications when their thresholds are exceeded you need to create services.

The plugin check_bpi.php is what actually creates/updates the bpi.xml file.

 

 

How Is The BPI Cache Used

After creating service(s) for your BPI group(s), the plugin check_bpi.php is executed as per the Nagios xi service check_interval, lets use 5 minutes as the example for this KB article.

If the check_bpi.php plugin cannot locate the bpi.xml file, it will create the file by talking to the Nagios xi database to generate the current state of all the BPI groups.

The check_bpi.php plugin will then finish it's job, to check to see if that specific BPI group has exceeded it's threshold.

Every time the check_bpi.php plugin is run, it will use the values in the bpi.xml file, instead of having to talk to the Nagios xi databases. The following chapter explains when the file is updated.

 

 

BPI Cache Threshold

There is an XML Cache Threshold of 90 seconds defined in the BPI Settings (default value).

Every time the check_bpi.php plugin is run, it will test to see if the bpi.xml file age is greater than the XML Cache Threshold. If the file is older than the threshold, the bpi.xml will be updated by talking to the Nagios xi database to generate the current state of all the BPI groups.

This means that when you have lots of BPI service checks, the check_bpi.php plugin does not need to perform a database query each time to get the status, it can be obtained directly from the bpi.xml file.

The BPI Settings can be accessed from the BPI home page by clicking the Edit BPI Settings button.

 

 

Threshold Example

Nagios xi service check_interval for "Service A", "Service B", "Service C", "Service D", "Service E" = 5 minutes.

XML Cache Threshold = 90 seconds.

 

  • 10.01 = "Service A" check, does not find bpi.xml file so it is created, next check 10.06
  • 10.02 = "Service B" check, finds bpi.xml file and it is not older than 90 seconds, the data in the file is used, next check 10.07
  • 10.03 = "Service C" check, finds bpi.xml file and it is older than 90 seconds, the file is updated, next check 10:08
  • 10.04 = "Service D" check, finds bpi.xml file and it is not older than 90 seconds, the data in the file is used, next check 10.09
  • 10.05 = "Service E" check, finds bpi.xml file and it is older than 90 seconds, the file is updated, next check 10:10
  • 10.06 = "Service A" check, finds bpi.xml file and it is not older than 90 seconds, the data in the file is used, next check 10.11

 

You can see in that simple example how the bpi.xml file is regularly updated as per the threshold setting.

 

 

Final Thoughts

For any support related questions please visit the Nagios Support Forums at:

http://support.nagios.com/forum/



Special Offer For Knowledgebase Visitors! Get a huge discount on Nagios Log Server by clicking below.

Get 60% Off Nagios Log Server!

Did you know? Nagios provides complete monitoring of: Windows, Linux, UNIX, Servers, Websites, SNMP, DHCP, DNS, Email, Storage, Files, Apache, IIS, EC2, and more!

1 (1)
Article Rating (1 Votes)
Rate this article
  • Icon PDFExport to PDF
  • Icon MS-WordExport to MS Word
Attachments Attachments
There are no attachments for this article.
Related Articles RSS Feed
PHP 7.2 to 7.4 Upgrade Instructions for CentOS Stream 8
Viewed 5434 times since Wed, Feb 2, 2022
Database Storage Engine and High CPU usage in Nagios xi
Viewed 5397 times since Thu, Mar 4, 2021
Nagios xi - Advanced Features of Nagios xi - NWC14
Viewed 5056 times since Thu, Feb 4, 2016
Nagios xi - Installing The AIX Agent
Viewed 8981 times since Wed, Jan 27, 2016
Nagios xi - Distributed Monitoring With NRDP
Viewed 7105 times since Thu, Aug 17, 2017
Nagios xi - Enabling Memcached Support
Viewed 6196 times since Wed, Jan 27, 2016
Nagios xi - Manual Config File Management
Viewed 12782 times since Tue, Jan 26, 2016
Nagios xi - Understanding Email Sending
Viewed 11713 times since Tue, May 2, 2017
Nagios xi - Monitoring Linux Using SNMP
Viewed 14097 times since Thu, Jan 28, 2016
Nagios xi - Using the Negate Plugin
Viewed 8175 times since Thu, Jan 28, 2016