KB 070 – NIPING utility (SAP system availability check)
Please follow steps below to setup the NIPING utility (SAP system availability check). The utility will continuously send (with customizable interval) NIPING packets to predefined list of SAP system and wait for the response.
- Download Python runtime on the official Python download page or Teams folder and install it on the server.
This step is not needed if the utility is located on the Splunk server.
- Copy and decompress bnw_niping_utility.zip to the system folder.
- Amend the \lookups\sap_instances.csv file and define the list of SAP system to be monitored with following format (the header should remain in the file):
source,”INSTANCE_NAME”
N71,”SAPN71D_N71_00″ - Setup the utility using nipping.conf file.
Populate [General] and [Splunk_HEC_Indexer] sections. Please find the sample below.
[General]
log_level = debug
enable_populate_instance_lookup = 0
enable_send_data_to_hec = 1
enable_send_data_to_file = 0
instance_lookup_file = sap_instances.csv[Splunk_HEC_Indexer]
splunk_host = 10.100.2.148
token = 6DD8531A-279C-41DA-85A9-15BE4F2040C1
enable_ssl = 0
enable_ssl_cert_validation = 0
port = 8088 - In case of Windows environment, execute the \bin\niping_start.bat, which will send NIPING packets and wait for the response. The monitor interval is 10 seconds by default. It can be overridden by calling the script with the additional parameter: interval in seconds.
- In case the utility is located on the Splunk server, the script should be executed via following command:
On Windows:
$SPLUNK_HOME\bin\splunk.exe cmd python bin\collect_niping_status.py
Batch script \bin\niping_start.bat should be amended accordingly.On Linux:
$SPLUNK_HOME/bin/splunk cmd python bin/collect_niping_status.py
For additional information, please refer to the README.md file.
All files are available on PowerConnect Teams folder.
The check result is sent to Splunk with EVENT_TYPE=NIPING_AVAILABILITY. Please find the sample alert search below:
index=id7_hec EVENT_TYPE=NIPING_AVAILABILITY
| dedup INSTANCE_HOST INSTANCE_NAME INSTANCE_SID sortby -_time
| where STATUS=”false”
| table _time INSTANCE_HOST INSTANCE_NAME INSTANCE_SID STATUS