+1
I like the logic to change the minor one only for bug fixing, and as Micke suggest, to use
a 0.4.0 if there is some change in the Java/REST API.
Also for other components as well.
But I guess this is something to normalize at some point.
Thanks,
Lucas
----- Original Message -----
From: "Michael Burman" <miburman(a)redhat.com>
To: "Discussions around Hawkular development"
<hawkular-dev(a)lists.jboss.org>
Sent: Sunday, May 3, 2015 10:37:49 AM
Subject: Re: [Hawkular-dev] Hawkular Metrics 0.3.3 - Release & Beyond
Hi,
My wish for version numbering in the future - this should have been called
0.4.0 because of extensive external API-changes. 0.3.3 would have been fine
if the changes were just internal, but we should follow some sort of logic
in the version numbering.
- Micke
----- Original Message -----
From: "Stefan Negrea" <snegrea(a)redhat.com>
To: "Discussions around Hawkular development"
<hawkular-dev(a)lists.jboss.org>
Sent: Friday, May 1, 2015 1:28:14 AM
Subject: [Hawkular-dev] Hawkular Metrics 0.3.3 - Release & Beyond
Hello Everybody,
I am happy to announce release 0.3.3 of Hawkular Metrics. The release is
anchored by three major and notable changes: REST API reorganization, tenant
id changes, and Docker + Kubernetes work.
1) REST API reoganization
- The API has been reorganized to follow a more traditional REST structure.
- The numeric metrics have been renamed to Gauage. Going forward the term
number will be used for an overarching category of metrics (gauge, counter,
histograms, etc.).
- The root of the project has been updated to be consistent with the rest of
the Hawkular projects. The new root is
http://host:port/hawkular/metrics
The attached pdf document has the comparison for the API changes between
0.3.1 and 0.3.3.
2) Tenant Id
The tenant id has been removed from the URL to either a header parameter or a
query parameter. The query parameter can be used in cases (such as curl)
where setting a header is not possible, difficult, or inconvenient.
The concept of tenant will be an integral part of the project going forward.
But we wanted more flexibility in the way the tenant id for a request is
derived. So removing the tenant id from the URL will give us permanent &
consistent resource addresses (metrics and metric data points); and will
gain a lot of flexibility on the security side. In the future, users could
authenticate with a user/pass combo and the backend would transform that
into a tenant id. If the same user later decides to use the tenant id
header, the URL of the resources accessed with the user/pass combo would not
change. Another expectation is that tenant id is not sufficient, it is
typically a combo of id + secret; so we would have resorted to a header or
query param for the second piece of information (the secret) in the long run
anyway.
Here is an example of the change:
Existing URL:
/{tenantId}/gauge/{metricId}/data
New URL:
/gauge/{metricId}/data
Tenant id set via:
1) header - tenantId
2) query parameter - tenantId
There are two exceptions to this rule, /tenants and /db/{tenantid}/series.
The /tenants end-point will be changed into something different in the
upcoming releases since it is mostly a management type API that does not
belong in the same place with the regular metrics endpoint. And
/db/{tenantid}/series end-point is needed in this exact format for
compatibility with Influxdb compatible services.
The attached pdf document includes the removal of the tenant id from the URL.
3) Docker and Kubernetes
Thanks to the amazing work done by Matt Wringe, we now have a subproject in
Hawkular Metrics that can be used to create components to be run on
Openshift/Fabric8
(
https://github.com/hawkular/hawkular-metrics/tree/master/containers).
This includes:
a) A customized Cassandra docker image which uses a seed provider to
automatically detect other nodes running behind the same service.
b) A standalone dockerized Hawkular Metrics image. This will startup a
hawkular metrics instance which will automatically detect and connect to the
Cassandra service.
c) A kubernetes application for a single step install into OpenShift or
Fabric8. The zip can even be deployed via the drag-n-drop mechanism in the
Fabric8 console!
This is the foundation for later integrations that would require the project
package in the form of containers.
Github Release:
https://github.com/hawkular/hawkular-metrics/releases/tag/0.3.3
JBoss Nexus Maven artifacts:
http://origin-repository.jboss.org/nexus/content/repositories/public/org/...
Jira release tracker:
https://issues.jboss.org/browse/HWKMETRICS/fixforversion/12326937
Hawkular Metrics 0.3.4 and Beyond
Here is a list of features and enhancements that we planned for 0.3.4 and
beyond.
1) Gauge Aggregates - Long-term storage of numeric metrics at the expense of
losing some fidelity. The design has been already presented and discussed
during 0.3.3 release cycle. The task queue work has already been started by
John. We expect at least an initial implementation to land in 0.3.4.
3) Go client - will help with integrating with third party metrics
collection framework. This work is the foundation for a Heapster sink.
4) Public Java API - following the work done in 0.3.1 for the core, the goal
is to separate the implementation from a public API and make that available
to clients
5) 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.2 is to
increase coverage.
6) Improved docker and kubernetes support
A big "Thank you" goes to John Sanda, Thomas Segismont, Mike Thompson, Matt
Wringe, and Heiko Rupp for their project contributions. Special mentions go
to Jeeva Kandasamy, Jirka Kremser, and Michael Burman for their project
help.
Thank you,
Stefan Negrea
Software Engineer
_______________________________________________
hawkular-dev mailing list
hawkular-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hawkular-dev
_______________________________________________
hawkular-dev mailing list
hawkular-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hawkular-dev