Our free community-driven project includes the latest technology and features delivered through a rapid release cycle.
Download Now

OpenNMS Horizon

Horizon is an open-source solution that helps you visualize and monitor everything on your local and remote networks. It offers comprehensive fault, performance, traffic monitoring, and alarm generation in one place. Highly customizable and scalable, Horizon easily integrates with your core business applications and workflows.

Features include remote data collection, application perspective monitoring, alarm correlation, scalability, business service monitoring, and comprehensive management of inventory, faults, alarms, events, performance, and traffic.

Community Support

Issue Tracker


Horizon 29

Support for Cortex and improved streaming analytics for flows

Enhancements to Nephron, our streaming analytics plugin for flows, provide improved flow processing, persistence, and performance:

  1. Persist flows to Cortex
  2. Improved Elasticsearch persistence to support batching updates
  3. Streamlined metadata to eliminate redundancy, so less data is stored per update
  4. Better performance when processing large rulesets as a result of updates to the classification engine

Also new in Horizon 29:

Polling and Metadata Improvements

Threshold metadata and the wsman-config.xml file now use stricter error validation when evaluating their respective config files, reducing the likelihood of user error and limiting potential damage that could otherwise occur.

Kafka producer payloads now contain additional useful resource metadata including ID, label, name, index, type, and type label. Resource metadata in producer payloads provides richer information to external systems that consume our feed as part of an integration, and a more complete story about the alarms, metrics, and inventory information from the feed.

You can now optionally persist monitor status to RRD so that it can be retrieved using the Measurements API. Storing the status of a service monitor allows you to query the current status and the status history using the Measurements API.

Run as non-root by default

Reduce required permissions and improve security now that OpenNMS runs by default as the OpenNMS user rather than as root. Running as an unprivileged user significantly mitigates the risk in the event of system compromise.

Location-aware Requisitions from DNS

Configure OpenNMS to create provisioning requisitions from DNS that are associated with a monitoring location.

Administrative users can add a location-aware DNS requisition during provisioning so that imported nodes will have the proper Minion location set.

OpenNMS now monitors itself

OpenNMS now ships with a single node 'localhost' with interface '' to provision a node that represents itself for better OpenNMS metrics.

Add location information to nodes

Use the new GeoIP Provisioning Adapter to enrich a node's asset data with location information. It uses the GeoIP2 Databases from MaxMind to look up longitude/latitude values for a given IP address.

Improved layer-2 network topology with MikroTik LLDP discovery

LLDP discovery with MikroTik devices running RouterOS or Cloud Hosted Router OS enables OpenNMS to discover network links terminated on such devices, which it was previously unable to do. The result is a more complete picture of layer-2 network topology in networks that incorporate these devices.

Horizon 28

Visualize Flows Traffic by Quality of Service (QoS)

Network traffic prioritization is easier when you can visualize flows by QoS. You can quickly verify that your configuration for priority traffic works as specified, and make changes as needed to ensure optimal service performance.

Able to handle up to 300,000 data points per second with flows, and configurable to handle more, OpenNMS processes, aggregates, and exposes this data for improved streaming analytics. OpenNMS’ Helm plugin for Grafana allows you to create flexible dashboards to view this data as time series or tabular views.

Helm now includes options to filter flows traffic by ToS/DSCP (Differentiated Services Code Point). Using the Deep-Dive Flows Dashboard, simply select the DSCP value (or combination of values) from a drop-down list for the QoS you want to visualize (class selector, IP precedence, assured forwarding, expedited forwarding). The ECN (explicit congestion notification) drop-down allows you to further filter on this value to see which flows use ECN-capable transports, and congestion reports for them.

Also new in Horizon 28:

Documentation Migration

We migrated our documentation to the Antora platform, with a new UI and rebrand.

View documentation for all components and plugins in one place, with top-level links to additional help through training videos and community tools like Discourse and Mattermost.

New documentation search functionality allows you to easily find the answers you need.

Location-aware Requisitions from DNS

Configure OpenNMS to create provisioning requisitions from DNS that are associated with a monitoring location.

Administrative users can add a location-aware DNS requisition during provisioning so that imported nodes will have the proper Minion location set.

Brand Refresh

May 12 saw the unveiling of our brand refresh, including our new Open Gyroscope symbol and color palette.

We’ve applied this fresh, updated look across all our projects.

Horizon 27

New: Application Perspective Monitoring

Monitor Digital Experience from Different Perspectives

A key part of OpenNMS’ distributed monitoring solution, Application Perspective Monitoring (APM) monitors the digital experience (DEM) of services and application systems from different perspectives such as geographical locations (countries, regions, buildings) or a cloud application from the client’s viewpoint.

APM integrates seamlessly with our Minion component to monitor your entire network. When a service is not responsive, OpenNMS generates an outage alert that includes the corresponding perspective that identified the outage.

If the New York operations center can see the availability of a service hosted in Houston that is accessed by users in Seattle, you can identify the perspective from which an outage occurs for more effective troubleshooting and network reliability.

Also new in Horizon 27:


Leverage dynamic configuration to use metadata with provisioning, threshold evaluation, and notifications:

Provisioning: persist node, service, and interface metadata to the database during provisioning

Threshold evaluation: streamline threshold creation for single-DS and expression-based thresholds

Notifications: use node-, interface-, and service-level metadata in notifications

gNMI Support for OpenConfig

gNMI and OpenConfig offer a new way to expose data from routers and other tools that vendors are adopting for their devices. OpenNMS connects and establishes a tunnel to these devices, and retrieves and streams metrics every 30 seconds by default. Currently available only on the OpenNMS core, a future release will provide the same feature on Minion.

Vendor support for gNMI includes Juniper, Arista, and Cisco.

Improved Documentation

We have started to restructure the documentation to offer a more task-based approach to using OpenNMS. The Admin Guide includes updated chapters on users and provisioning, while the Installation Guide features a streamlined chapter on installing and configuring a Minion.

Flow Performance Enhancements

Better aggregate flow metrics and enhanced DNS enrichment for improved performance. Aggregate flow queries support resolving hostnames, if available. Sink RPC APIs now expose metrics to Karaf for tracing and performance tuning.

Central Search Functionality

We’ve made it easier to find nodes, KSC reports, and actions in the web UI, with a search bar available on the top of every page.