The Business Process module is one of the most useful modules in NetEye, but it’s often underestimated.
A Business Process offers a way to model relations between monitored objects by NetEye (host and services), allowing you to model applications or infrastructures.
They also allow you to drill down into the details, from high-level services to progressively lower-level services. This can help you prioritize service components as well as explore hypothetical incident recovery strategies. The Business Process module also lets you achieve the following objectives:
One of the most complex phases in the Business Processes implementation is the initial analysis. Once that’s done, we’ll have one or more services correctly monitored, but with a dashboard more useful for navigation than for the visualization of states and impacts.
Here’s an example of the main view:
The standard Business Process overview in NetEye can’t help you in situations where there’s a need to view the output on a large screen available to IT operators.
For this reason I created a new dashboard using the ITOA module with the aim of keeping track of the status of the BPs. You can try it on our NetEye Demo system as well as your own NetEye implementation.
This dashboard can help you by displaying two sections:
– The main section shows the status (OK, WARNING, CRITICAL) of the selected business processes in a very evident way.
– The second section shows a a table that, for each selected business process, shows monitoring details (such as the last change of status and the duration of the status)
You can also filter the Business Processes by (Handled/Not handled/All) including or excluding objects in downtime or acknowledged.
Each displayed Business Process’ status and the Service Name in the Details table can also be selected, and via a link you will be redirected to the standard NetEye GUI.
This dashboard does not take into account the user’s role and related permissions and only is intended for use by an administrator on an on-premise non-multi-tenant installation of NetEye.
Before downloading and importing the dashboard, ensure Grafana has access to the Icinga Database by creating a properly configured MySQL Data Source (if one doesn’t already exist):
SELECT
privileges on the Icinga DatabaseAs already shared by my colleague Rocco Pezzani in his latest post, we can proceed as follows using a bash script.
Just remember to set a proper password in the MYSQL_PASSWORD
variable. The Data Source name is mysql-icinga2.
MYSQL_USERNAME='icingareadonly'
MYSQL_PASSWORD='<Change Me!>'
. /usr/share/neteye/scripts/rpm-functions.sh
. /usr/share/neteye/secure_install/functions.sh
. /usr/share/neteye/grafana/scripts/grafana_autosetup_functions.sh
cat << EOF | mysql
CREATE USER '${MYSQL_USERNAME}'@'%' IDENTIFIED BY '${MYSQL_PASSWORD}';
CREATE USER '${MYSQL_USERNAME}'@'localhost' IDENTIFIED BY '${MYSQL_PASSWORD}';
GRANT SELECT ON icinga.* TO '${MYSQL_USERNAME}'@'%';
GRANT SELECT ON icinga.* TO '${MYSQL_USERNAME}'@'localhost';
FLUSH PRIVILEGES;
EOF
datasource="mysql-icinga2"
datasource_type='mysql'
mysql_host="mariadb.neteyelocal"
mysql_port=3306
db_name="icinga"
grafana_host="grafana.neteyelocal"
datasource_data='"name":"'${datasource}'","type":"'${datasource_type}'","host":"'${mysql_host}':'${mysql_port}'","access":"proxy","database":"'${db_name}'","user":"'${MYSQL_USERNAME}'","password":"'${MYSQL_PASSWORD}'"'
create_datasource "${datasource}" "${datasource_data}" "${grafana_host}"
Now you can freely export the dashboard from our NetEye Demo environment: just access the Dashboard, click on Share dashboard or panel link and select the Export tab. Next, choose the format for your link after selecting Export for sharing externally.
Next, you can go to your own NetEye’s ITOA and Import the new dashboard.
Now import the dashboard in the preferred Folder.
Finally, you can check if the “business_processes” variable based on a query that uses the business_processes_host is working correctly by showing all the existing business processes (related to each service check monitored by NetEye).