Hawkular Metrics 0.3.4 - Release

A blog post by Stefan Negrea

metrics | release

I am happy to announce release 0.3.4 of Hawkular Metrics. The release is anchored by stability improvements and Docker + Kubernetes work.

Here are the release highlights:

  1. InfluxDB Compatibility Layer

    • pretty printing of query results with the 'pretty' query parameter

    • absolute moment operands in queries (ex: select * from test where time > 1501560s and time < 4560546h)

    • various fixes which allow to integrate nicely with Grafana (declaring Hawkular Metrics as an InfluxDB 0.8 datasource)

  2. RxJavaMigration

    • big refactoring to use RxJava instead of Guava’s ListenableFuture

    • RxJava provides a much richer API for building asynchronous programs

  3. Server Start-up

    • the server no longer requires Cassandra to be started first

    • any client requests will get back a 503 response code if the server has not fully initialized due to Cassandra being down at start up time

  4. Docker and Kubernetes


    • tenantId header was renamed to Hawkular-Tenant

    • tenantId header fallback was removed

    • GET {id}/tags only returns the tags, not the whole definition anymore

    • GET {id} returns the metric definition (see HWKMETRICS-110 for known issue)

  6. UI Explorer

    • was removed from the project

      • discussions are underway to find a new home for the functionality and code (probably hawkular-ui-components)

    • npm is no longer required to compile the project

  7. Task Queue

    • a generic task queue was designed and developed as part of this release

    • provides functionality for scheduling and executing background tasks or jobs

    • task execution is

      • scalable - automatically distributed among Hawkular Metrics servers

      • durable - Tasks are persisted

      • fault tolerant - Tasks are rescheduled for future execution when there is a failure

    • it will serve as the foundation for

      • computing/storing aggregated metrics (i.e., rollups)

      • deleting metrics

      • changing data retention

    • this functionality will be basis for any background task based design for the project

Hawkular Metrics 0.3.5 and Beyond

  1. Gauge Aggregates - Long-term storage of numeric metrics at the expense of losing some fidelity. With task queue released in 0.3.4, the expectation is to start the actual implementation 0.3.5.

  2. Update REST testing - while the current set of tests is a good gauge for regressions, the overall coverage is still low. The plan for 0.3.5 is to increase coverage.

  3. Improved Docker and Kubernetes support - this is a long term goal for the project

  4. RXJava - the initial transition from Guava was done in 0.3.4. Future releases will build upon this foundation.


A big "Thank you" goes to John Sanda, Thomas Segismont, Mike Thompson, Matt Wringe, Michael Burman, and Heiko Rupp for their project contributions. Special mentions go to Jeeva Kandasamy and Jirka Kremser for their project help.

Published by Stefan Negrea on 01 June 2015


© 2016 | Hawkular is released under Apache License v2.0