It’s time for OpenNMS On the Horizon!

In the last week we did a ton of work modernizing some dependencies in OpenNMS and Helm, fixed a bunch of bugs, and continued work to enhance flows reporting, and UIs on the road to Horizon 25.

Github Project Updates

  • Internals, APIs, and Documentation
    • Matt continued his work on persisting threshold state to the database and sharing that state across Sentinels.
    • Jesse worked on wrapping up his high-performance DNS hostname resolution integration.
    • Chandra finished some changes to Kafka initialization settings.
    • Jesse updated the Elasticsearch integration so you can set a prefix, allowing multiple “namespaces” for data persisted to ES.
    • Ronny wrapped up his work to make our continuous integration containers run as non-root. He also made it so branch builds can be tagged in CI for release to dockerhub.
    • Jesse updated our Elasticsearch support to ES 7.2.0. Note that Horizon 25 (and Meridian 2019) will require ElasticSearch 7.
    • Chandra continued his work on an optimized off-heap storage on the Minion (to replace H2).
    • Christian added support for %interface% and %interfaceresolve% on node events, using the primary IP when available.
    • I fixed an issue with find-java.sh failing when java is behind multiple levels of symlinks.
    • Alejandro updated the NXOS GPB parser to provide more info on configuring the Nexus switch to work with it.
    • Jesse fixed the snmphost mask in clogMessageDiscarded in the default eventconf.
    • Sean did more work on improving our CircleCI workflow.
    • Ron Roskens continued to work on getting the build and tests running under JDK 11.
    • Justin Wood contributed a patch to fix provision:show-import when using the DNS importer.
    • Jesse updated our embedded Drools to 7.24.
    • Chandra worked on adding support for “profiles” when attempting to connect to new SNMP hosts.
    • Sean contributed an update to Jaeger tracing with current thread info in the Camel and Kafka IPC bits.
  • Web, ReST, and UI
    • Markus did more work on simplifying the UI for scheduling reports.
    • Patrick updated his branch to make flow classification rule priority customizable.
    • I fixed some issues with DAOs and property caching in OpenNMS.js.
    • I cleaned up some authorization-management code in OpenNMS.js after the recent refactor.
    • I updated OpenNMS.js to use dependabot to update dependencies semi-automatically.
    • Christian fixed a bug with displaying headers in Vaadin apps when embedded in an <iframe> tag.
    • I added support for configuring alignment (left, center, right) in Helm Alarm Table columns.

Upcoming Events and Appearances

  • All Things Open in Raleigh, NC - October 13th through 15th
    Tarus Balog will be speaking at All Things Open again this year. It’s a wonderful open-source conference here in the back yard of The OpenNMS Group’s offices.

    The speaking schedule is still to be determined.

  • NETHINKS Training in Fulda, Germany - October 21st through 25th

    NETHINKS will be offering German-language training in their headquarters in Fulda, Germany the week of October 21st.

  • OSMC 2019 in Nuremberg, Germany - November 4th through 7th
    We will be at OSMC in November.

    There will be a 1-day workshop on November 4th, focusing on getting started with OpenNMS including notifications, alarms, and graphing in Grafana with Helm.

    For more information on OSMC, see their website. Details on the workshop and a link to purchase tickets are available on their workshops page.

Until Next Week…

If there’s anything you’d like me to talk about in a future OOH, or you just have a comment or criticism you’d like to share, don’t hesitate to say hi.

- Ben

Resolved Issues Since Last OOH

  • HELM-163: Enhance CircleCI workflow to capture test metadata for Helm
  • JS-38: PropertiesCache implementation can return the wrong cache
  • JS-39: basic auth does not initialize properly in GrafanaHTTP
  • NMS-9318: Traps failing to be ingested by Elasticsearch
  • NMS-9702: GenericResourceType is altering index names on class object initialization
  • NMS-10657: %interface% & %interfaceresolve% variables should resolve nodes managed IP address
  • NMS-11720: Run container image as non-root
  • NMS-11748: DNS Requisition import fails if location is specified
  • NMS-11759: Improve the sample content for the NXOS GPB Parser Groovy Script.
  • NMS-11995: Run system tests using OpenJDK 11
  • NMS-12082: Configurable index name for Event & Alarm Forwarder
  • NMS-12099: Update Elasticsearch integrations to support ES 7.x
  • NMS-12154: Easier Schedule Definition
  • NMS-12157: Improve performance of hostname resolution for flows
  • NMS-12163: Add SonarQube Code Coverage to CircleCI Workflow
  • NMS-12166: Topology/Geographical map: Header not hidden when displayed inside iFrame
  • NMS-12172: Kafka RPC shouldn’t set default auto.offset.reset to earliest
  • NMS-12176: find-java.sh does not canonicalize all symlinks in java path
  • NMS-12183: Remove the /etc/default/opennms from Debian/Ubuntu installs
  • NMS-12187: Allow developer to push OCI’s to docker hub from arbitrary branches
  • NMS-12189: The Cron Expression is only shown for reports which are created with the new UI
  • NMS-12191: Upgrade Drools to latest 7.x release
  • NMS-12195: Enhance Jaeger OpenTracing Logging with tag for thread name
  • NMS-12196: Fix typo in sonar.sh
  • NMS-12199: Fix CircleCI Test Gathering for Smoke Tests

Jump to section

About the Author: RangerRick

Principal Software Engineer. Manages the release process of OpenNMS Horizon and Meridian, and a bunch of other stuff.
Published On: August 5th, 2019Last Updated: February 21st, 20234 min readTags: , , , , , , , , , , , , , , , , , , , ,