Geneos Monitoring Report
Introduction Copied
The Geneos Gateway provides a Geneos command that will generate a report of what the Gateway is monitoring. This report is presented in the form of a JSON or YAML document, with example scripts to convert into CSV files.
The report includes the following:
Report information | Specific details |
---|---|
Details of all the probes that are running on the Gateway
|
|
Details of all the managed entities that are running on the Gateway |
|
Details of each sampler that are running on the Gateway |
|
Details of all the rules that are available on the Gateway |
|
Details of all the active times that are available on the Gateway |
|
Generating a Gateway report using a Geneos Command Copied
The report can be generated by running the Gateway command /REPORTING:monitoring
.
- The command is available on the Gateway directory component and the Gateway sampler that is provided as part of the Gateway self-monitoring.
- In the Active Console and in the Entity Viewer, the command is called
Monitoring
. This can be found under theReporting
menu.
This can be run in all the ways that a Geneos command is available:
- From the Active Console
- From the Entity Viewer App in the Web Console
- Using a Geneos Task
- Scheduled using scheduled commands
- Via the commands REST API
The results of the command are stored in a file that can be found in the directory specified in the command arguments. The file can either be in JSON (form monitoring_report_<timestamp>.json
) or YAML (monitoring_report_<timestamp>.yaml
) format.
Note
While YAML is easier for humans to read, JSON is easier to manipulate to generate other data. JSON is ideal for maintaining data types and interacting with APIs or web services, while YAML is useful for creating configuration settings or adding comments in your data because of its user-friendly and readable format.
Adding Custom Details Copied
Certain information that needs to be captured for the monitoring report can be obtained from headlines and cells in certain dataviews.
The monitoring report command allows the user to provide report configuration in YAML format. This configuration instructs the report to provide detailed information for certain samplers.
Note
- The user can provide a list of details that are required.
- Each set of details is composed of two parts: a filter that identifies which sampler these details should be provided for and a list of additional information to obtain.
# Report YAML that defines the extra detailed information to obtain for the report
report:
# Array of details - each of which is extracted for each sampler that matches the filters and plugin type defines
details:
# Name of the details which is used to wrap the data when placed in the report
# Details will be placed along side other information for each sampler that the filters apply to.
- name: fkm
# Plugin name of the samplers that these details will be collected for
plugin: fkm
# Filters to use to limit which samplers to collect this data for
filters:
# Type of the filter (hostname, probe, managedEntity, sampler, samplerType, dataview, attributes)
- type: attribute
# Name of the attribute to match agains (not required for any other filter)
name: environment
# List of regular expressions to match against the value provided by the type. If any one of the regular
# expressions match then the details will be extracted
regex:
- prod
- uat
# Details extraction type
# row - data is extracted for every row in the dataviews that match the filters provided
# dataview - data is extracted for every row in the dataviews that match the filters provided
type: row
# List of columns. Cells in these columns will be extracted from the dataview and placed in the report
# This data is only extracted if the type of the details is `row`
columns:
- name
- fileOwner
- filename
# List of headlines. These headline cells will be extracted from the dataview and placed in the report
headlines:
- filesMonitored
Extra FKM Columns Copied
For FKM, it is important to be aware of the configuration information associated with each file being monitored. This includes the table cells and headlines extracted from the FKM dataview. The Details sections for the FKM plugin will also provide four additional types of information:
- fkmActiveTime - the active time associated with the file (if defined)
- ignoreKeys - a list of ignore keys for this file
- failKeys - a list of fail keys for this file
- warningKeys - a list of warning keys for this file
It is essential to know the keys used to monitor various files. These keys (Critical, Warning, and Ignore) are automatically extracted if the plugin type is fkm
.
Note
This additional functionality is dependent on the Netprobe being version 7.1.0 or higher.
Generating a Gateway report using a REST request Copied
Enabling a REST Service in the Gateway allows you to directly request a monitoring report. The YAML report configuration can be passed as the POST body of the REST request. A report in JSON format will be returned from the request.
To run the report on an insecure Gateway running on the same machine with no authentication, run the following:
curl -X POST -H 'Content-Type: application/json' http://127.0.0.1:7039/rest/reporting/monitoring
To connect to a Gateway with authentication, refer to user authentication and authorizing an SSO user.
Generating Excel reports Copied
The JSON reports can be converted into an Excel workbook through a python
script. This script will convert the JSON reports from multiple Gateways into a single workbook with multiple sheets.
The script (monitoring_report_to_excel.py
) is included in the Gateway package (located in <gateway package>/templates/monitoring_report_to_excel.py
.) as an example and is built to work with reports generated using the default parameters.
Note
Ensure that thexlsxwriter
python package is installed before running the script.
A sample JSON report and Excel workbook generated by running monitoring_report_to_excel.py
can be downloaded here.