From theute at redhat.com Wed Apr 1 09:15:42 2015
From: theute at redhat.com (Thomas Heute)
Date: Wed, 01 Apr 2015 14:15:42 +0100
Subject: [Hawkular-dev] Public Hawkular Instances
In-Reply-To: <594183060.9221248.1427812686912.JavaMail.zimbra@redhat.com>
References: <594183060.9221248.1427812686912.JavaMail.zimbra@redhat.com>
Message-ID: <551BEF7E.7090605@redhat.com>
Very cool, thanks :)
I guess both instances are using embedded Cassandra ?
Once we have multitenant and expiration/aggregation working we should
use a separate Cassandra to keep the data as long as we can.
Thomas
On 03/31/2015 03:38 PM, Matthew Mahoney wrote:
> A couple notes on the Public Hawkular instance:
>
> 1) Improvements have been made to the Public Hawkular instance
> (http://209.132.178.218:18080 ) smoke
> test, as to mitigate the number of false failures that were happening.
>
> /We invite & encourage community use of this instance./
>
> 2) A new Public Hawkular instance (http://209.132.178.218:18090
> ) has been created which is intended to
> be used by Development/community for those use-cases such as Demos where
> you need to ensure that the instance will not be randomly restarted (for
> reasons such as when new Hawkular images are created, test cases git
> pushes, infrastructure improvements, etc).
> This instance is an on-demand build only. Please ping/email me
> (mmahoney at redhat.com ) if you want access to
> the Jenkins Hawkular Dev build job.
>
> Thanks,
>
> Matt
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From mmahoney at redhat.com Wed Apr 1 11:17:34 2015
From: mmahoney at redhat.com (Matthew Mahoney)
Date: Wed, 1 Apr 2015 11:17:34 -0400 (EDT)
Subject: [Hawkular-dev] Public Hawkular Instances
In-Reply-To: <551BEF7E.7090605@redhat.com>
References: <594183060.9221248.1427812686912.JavaMail.zimbra@redhat.com>
<551BEF7E.7090605@redhat.com>
Message-ID: <387763148.10182892.1427901454219.JavaMail.zimbra@redhat.com>
----- Original Message -----
> From: "Thomas Heute"
> To: "Discussions around Hawkular development"
> Sent: Wednesday, April 1, 2015 9:15:42 AM
> Subject: Re: [Hawkular-dev] Public Hawkular Instances
>
> Very cool, thanks :)
>
> I guess both instances are using embedded Cassandra ?
>
That is correct.
> Once we have multitenant and expiration/aggregation working we should
> use a separate Cassandra to keep the data as long as we can.
>
Sure - let's discuss when a separate Cassandra is ready.
> Thomas
>
> On 03/31/2015 03:38 PM, Matthew Mahoney wrote:
> > A couple notes on the Public Hawkular instance:
> >
> > 1) Improvements have been made to the Public Hawkular instance
> > (http://209.132.178.218:18080 ) smoke
> > test, as to mitigate the number of false failures that were happening.
> >
> > /We invite & encourage community use of this instance./
> >
> > 2) A new Public Hawkular instance (http://209.132.178.218:18090
> > ) has been created which is intended to
> > be used by Development/community for those use-cases such as Demos where
> > you need to ensure that the instance will not be randomly restarted (for
> > reasons such as when new Hawkular images are created, test cases git
> > pushes, infrastructure improvements, etc).
> > This instance is an on-demand build only. Please ping/email me
> > (mmahoney at redhat.com ) if you want access to
> > the Jenkins Hawkular Dev build job.
> >
> > Thanks,
> >
> > Matt
> >
> >
> > _______________________________________________
> > hawkular-dev mailing list
> > hawkular-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hawkular-dev
> >
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From theute at redhat.com Wed Apr 1 13:01:56 2015
From: theute at redhat.com (Thomas Heute)
Date: Wed, 01 Apr 2015 18:01:56 +0100
Subject: [Hawkular-dev] Public Hawkular Instances
In-Reply-To: <387763148.10182892.1427901454219.JavaMail.zimbra@redhat.com>
References: <594183060.9221248.1427812686912.JavaMail.zimbra@redhat.com> <551BEF7E.7090605@redhat.com>
<387763148.10182892.1427901454219.JavaMail.zimbra@redhat.com>
Message-ID: <551C2484.7070206@redhat.com>
Matt has a separate Cassandra docker container we could use I guess, but
I think the main problem is to not run out of disk space.
Thomas
On 04/01/2015 04:17 PM, Matthew Mahoney wrote:
>
>
> ----- Original Message -----
>> From: "Thomas Heute"
>> To: "Discussions around Hawkular development"
>> Sent: Wednesday, April 1, 2015 9:15:42 AM
>> Subject: Re: [Hawkular-dev] Public Hawkular Instances
>>
>> Very cool, thanks :)
>>
>> I guess both instances are using embedded Cassandra ?
>>
>
> That is correct.
>
>> Once we have multitenant and expiration/aggregation working we should
>> use a separate Cassandra to keep the data as long as we can.
>>
>
> Sure - let's discuss when a separate Cassandra is ready.
>
>> Thomas
>>
>> On 03/31/2015 03:38 PM, Matthew Mahoney wrote:
>>> A couple notes on the Public Hawkular instance:
>>>
>>> 1) Improvements have been made to the Public Hawkular instance
>>> (http://209.132.178.218:18080 ) smoke
>>> test, as to mitigate the number of false failures that were happening.
>>>
>>> /We invite & encourage community use of this instance./
>>>
>>> 2) A new Public Hawkular instance (http://209.132.178.218:18090
>>> ) has been created which is intended to
>>> be used by Development/community for those use-cases such as Demos where
>>> you need to ensure that the instance will not be randomly restarted (for
>>> reasons such as when new Hawkular images are created, test cases git
>>> pushes, infrastructure improvements, etc).
>>> This instance is an on-demand build only. Please ping/email me
>>> (mmahoney at redhat.com ) if you want access to
>>> the Jenkins Hawkular Dev build job.
>>>
>>> Thanks,
>>>
>>> Matt
>>>
>>>
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>>
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From jsanda at redhat.com Wed Apr 1 13:16:16 2015
From: jsanda at redhat.com (John Sanda)
Date: Wed, 1 Apr 2015 13:16:16 -0400
Subject: [Hawkular-dev] Public Hawkular Instances
In-Reply-To: <551C2484.7070206@redhat.com>
References: <594183060.9221248.1427812686912.JavaMail.zimbra@redhat.com>
<551BEF7E.7090605@redhat.com>
<387763148.10182892.1427901454219.JavaMail.zimbra@redhat.com>
<551C2484.7070206@redhat.com>
Message-ID:
We already have support for setting data retention. It currently defaults to 7 days.
> On Apr 1, 2015, at 1:01 PM, Thomas Heute wrote:
>
> Matt has a separate Cassandra docker container we could use I guess, but
> I think the main problem is to not run out of disk space.
>
> Thomas
>
> On 04/01/2015 04:17 PM, Matthew Mahoney wrote:
>>
>>
>> ----- Original Message -----
>>> From: "Thomas Heute"
>>> To: "Discussions around Hawkular development"
>>> Sent: Wednesday, April 1, 2015 9:15:42 AM
>>> Subject: Re: [Hawkular-dev] Public Hawkular Instances
>>>
>>> Very cool, thanks :)
>>>
>>> I guess both instances are using embedded Cassandra ?
>>>
>>
>> That is correct.
>>
>>> Once we have multitenant and expiration/aggregation working we should
>>> use a separate Cassandra to keep the data as long as we can.
>>>
>>
>> Sure - let's discuss when a separate Cassandra is ready.
>>
>>> Thomas
>>>
>>> On 03/31/2015 03:38 PM, Matthew Mahoney wrote:
>>>> A couple notes on the Public Hawkular instance:
>>>>
>>>> 1) Improvements have been made to the Public Hawkular instance
>>>> (http://209.132.178.218:18080 ) smoke
>>>> test, as to mitigate the number of false failures that were happening.
>>>>
>>>> /We invite & encourage community use of this instance./
>>>>
>>>> 2) A new Public Hawkular instance (http://209.132.178.218:18090
>>>> ) has been created which is intended to
>>>> be used by Development/community for those use-cases such as Demos where
>>>> you need to ensure that the instance will not be randomly restarted (for
>>>> reasons such as when new Hawkular images are created, test cases git
>>>> pushes, infrastructure improvements, etc).
>>>> This instance is an on-demand build only. Please ping/email me
>>>> (mmahoney at redhat.com ) if you want access to
>>>> the Jenkins Hawkular Dev build job.
>>>>
>>>> Thanks,
>>>>
>>>> Matt
>>>>
>>>>
>>>> _______________________________________________
>>>> hawkular-dev mailing list
>>>> hawkular-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>>>
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>>
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From hrupp at redhat.com Thu Apr 2 07:06:25 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Thu, 02 Apr 2015 12:06:25 +0100
Subject: [Hawkular-dev] Public Hawkular Instances
In-Reply-To: <551C2484.7070206@redhat.com>
References: <594183060.9221248.1427812686912.JavaMail.zimbra@redhat.com>
<551BEF7E.7090605@redhat.com>
<387763148.10182892.1427901454219.JavaMail.zimbra@redhat.com>
<551C2484.7070206@redhat.com>
Message-ID:
On 1 Apr 2015, at 18:01, Thomas Heute wrote:
> Matt has a separate Cassandra docker container we could use I guess,
> but
> I think the main problem is to not run out of disk space.
The other issue to look into is the remainder of
$wildfly/standalone/data,
as this will (at least for some time) also contain data like alert
trigger definitions.
From vrockai at redhat.com Thu Apr 2 11:20:44 2015
From: vrockai at redhat.com (Viliam Rockai)
Date: Thu, 02 Apr 2015 17:20:44 +0200
Subject: [Hawkular-dev] Kettle build profiles
Message-ID: <1427988044.2024.5.camel@vrockai-laptop>
Hello team,
TL;DR: Feel free to use -Pdev profile during the kettle build again. It
should not break the console stuff anymore.
There was a lot of confusion about the -Pdev profile in the
hawkular/hawkular project. Originally this was created just to provide
caching of bower packages and node.js stuff during the console build.
But then, there was some new functionality added to the profile, more
people started to use it and caching caused issues. To fix that, I've
renamed the "caching" profile (from "dev") to "cache". So now we have
three profiles available during the kettle build:
1. -Pdev: Useful for everyone and safe. It unzips the assembly, so it
can be started directly from /target directory and creates a default
user.
2. -Pcache: Useful for everyone but potentionaly dangerous. Using this
profile only makes sense with the "clean" lifecycle. It basically just
excludes the node.js stuff from the clean task, so those files are not
deleted => they are not downloaded again during the following build.
However, if there are changes in JS packages/JS build files used by the
console, you will still see the old/cached ones or even won't be able to
build the console. If you're using the -Pcache profile and the console
build fails, try to rebuild without using this profile.
3. -Plink: Useful for UI developers. This will use the local version of
the hawkular-ui-components. More info:
https://github.com/hawkular/hawkular/tree/master/ui#hawkular-ui-components-development
Viliam
From mazz at redhat.com Thu Apr 2 17:51:31 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Thu, 2 Apr 2015 17:51:31 -0400 (EDT)
Subject: [Hawkular-dev] start of message bus REST client
In-Reply-To: <409661762.9245311.1428011168651.JavaMail.zimbra@redhat.com>
Message-ID: <1086799654.9246235.1428011491691.JavaMail.zimbra@redhat.com>
I created a very simple REST client that you can use to send any json string as a bus message.
It requires no dependencies other than apache httpclient and jboss logging.
See: https://github.com/hawkular/hawkular-bus/tree/master/hawkular-bus-rest-client
new org.hawkular.bus.restclient.RestClient(url).postTopicMessage(topicName, jsonPayload, headers);
My agent uses it to send metrics to the hawkular bus's metric topic. I use REST rather than the bus-common API because (AFAIK) the thinking is this agent can be deployed in something like WildFly Core where JMS API isn't even available.
So right now, this agent should be sending data just like the Pinger - its sending metrics directly to Metrics REST interface for storage and sending those same metrics to the message bus's metric topic so other things like alerts can process it. Unfortunately, the kettle UI can't show any of it since it is tightly related to the Pinger's metrics and nothing else. But I think its working :)
From lkrejci at redhat.com Fri Apr 3 05:26:52 2015
From: lkrejci at redhat.com (Lukas Krejci)
Date: Fri, 03 Apr 2015 11:26:52 +0200
Subject: [Hawkular-dev] start of message bus REST client
In-Reply-To: <1086799654.9246235.1428011491691.JavaMail.zimbra@redhat.com>
References: <1086799654.9246235.1428011491691.JavaMail.zimbra@redhat.com>
Message-ID: <2329135.JUMlvSkmPs@localhost.localdomain>
Ok, with the Jinn out of the lamp, let's move the discussion we've had
privately amongst the team-leads to the public forum :)
With the ability to send rest messages to the bus we need to solve 1
fundamental question:
*Who is supposed be sending what kind of messages?*
It is clear, that any interested party should be able to listen to any
message.
But I am concerned about the "source" of messages.
For example I think it is wrong to send the message about metric being
collected to the bus prior to it being stored. It could happen that the system
reacts to something that we will have no record about later on.
But with more "involved" components that do more work than just store data
upon arrival, the consequences of being out of sync between what's stored and
what's being reacted upon are potentially worse.
As an example, consider this:
* someone sends a "resource inventoried" message to the bus - what should
inventory think about it? Did the author make sure to do everything exactly
like inventory would if it sent the message itself?
* someone sends an "alert fired" message to the bus - what should alerts do
about it?
* someone DDoSes the the bus
I may be old fashioned in this, but I prefer consistency over eventual
consistency where possible. I don't think it would be too much of a
performance problem to architect the message flow like this:
1) anyone can listen on the bus
2) only Hawkular components can send messages to the bus (or rather the
hawkular glue code built atop the standalone components)
3) 3rd parties (including feeds) can send data only to the component endpoints
(which will upon processing generate appropriate messages on the bus)
I am no expert in either distributed architectures or in microservices, so
this view may be naive and I'd love to be proven wrong about it, but I think
the concerns I raise are real and we should have a solid answer to them
whatever architecture we choose.
Cheers,
Lukas
On Thursday, April 02, 2015 17:51:31 John Mazzitelli wrote:
> I created a very simple REST client that you can use to send any json string
> as a bus message.
>
> It requires no dependencies other than apache httpclient and jboss logging.
>
> See:
> https://github.com/hawkular/hawkular-bus/tree/master/hawkular-bus-rest-clie
> nt
>
> new
> org.hawkular.bus.restclient.RestClient(url).postTopicMessage(topicName,
> jsonPayload, headers);
>
> My agent uses it to send metrics to the hawkular bus's metric topic. I use
> REST rather than the bus-common API because (AFAIK) the thinking is this
> agent can be deployed in something like WildFly Core where JMS API isn't
> even available.
>
> So right now, this agent should be sending data just like the Pinger - its
> sending metrics directly to Metrics REST interface for storage and sending
> those same metrics to the message bus's metric topic so other things like
> alerts can process it. Unfortunately, the kettle UI can't show any of it
> since it is tightly related to the Pinger's metrics and nothing else. But I
> think its working :) _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From mazz at redhat.com Fri Apr 3 10:32:59 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Fri, 3 Apr 2015 10:32:59 -0400 (EDT)
Subject: [Hawkular-dev] start of message bus REST client
In-Reply-To: <2329135.JUMlvSkmPs@localhost.localdomain>
References: <1086799654.9246235.1428011491691.JavaMail.zimbra@redhat.com>
<2329135.JUMlvSkmPs@localhost.localdomain>
Message-ID: <229827221.9445883.1428071579447.JavaMail.zimbra@redhat.com>
(I'm in PTO-mode, so I don't have an intelligible response to this yet but...)
Just for the record, the only reason why I coded up the wildfly agent to both send over the metrics REST API and put a metric message on the bus was because (and only because) that's what the Pinger does today and since the Pinger is the thing that is "working" today, I just wanted to copy what it does so the agent can "work" too.
I by no means am advocating that we have feeds send both messages (I don't think anyone is saying that's the long term solution) - this is just following Heiko's mantra "just get something to work" :)
As to whether feeds can or should be able to send messages on the bus, I can be convinced either way.
----- Original Message -----
> Ok, with the Jinn out of the lamp, let's move the discussion we've had
> privately amongst the team-leads to the public forum :)
>
> With the ability to send rest messages to the bus we need to solve 1
> fundamental question:
>
> *Who is supposed be sending what kind of messages?*
>
> It is clear, that any interested party should be able to listen to any
> message.
>
> But I am concerned about the "source" of messages.
>
> For example I think it is wrong to send the message about metric being
> collected to the bus prior to it being stored. It could happen that the
> system
> reacts to something that we will have no record about later on.
>
> But with more "involved" components that do more work than just store data
> upon arrival, the consequences of being out of sync between what's stored and
> what's being reacted upon are potentially worse.
>
> As an example, consider this:
> * someone sends a "resource inventoried" message to the bus - what should
> inventory think about it? Did the author make sure to do everything exactly
> like inventory would if it sent the message itself?
> * someone sends an "alert fired" message to the bus - what should alerts do
> about it?
> * someone DDoSes the the bus
>
> I may be old fashioned in this, but I prefer consistency over eventual
> consistency where possible. I don't think it would be too much of a
> performance problem to architect the message flow like this:
>
> 1) anyone can listen on the bus
> 2) only Hawkular components can send messages to the bus (or rather the
> hawkular glue code built atop the standalone components)
> 3) 3rd parties (including feeds) can send data only to the component
> endpoints
> (which will upon processing generate appropriate messages on the bus)
>
> I am no expert in either distributed architectures or in microservices, so
> this view may be naive and I'd love to be proven wrong about it, but I think
> the concerns I raise are real and we should have a solid answer to them
> whatever architecture we choose.
>
> Cheers,
>
> Lukas
>
> On Thursday, April 02, 2015 17:51:31 John Mazzitelli wrote:
> > I created a very simple REST client that you can use to send any json
> > string
> > as a bus message.
> >
> > It requires no dependencies other than apache httpclient and jboss logging.
> >
> > See:
> > https://github.com/hawkular/hawkular-bus/tree/master/hawkular-bus-rest-clie
> > nt
> >
> > new
> > org.hawkular.bus.restclient.RestClient(url).postTopicMessage(topicName,
> > jsonPayload, headers);
> >
> > My agent uses it to send metrics to the hawkular bus's metric topic. I use
> > REST rather than the bus-common API because (AFAIK) the thinking is this
> > agent can be deployed in something like WildFly Core where JMS API isn't
> > even available.
> >
> > So right now, this agent should be sending data just like the Pinger - its
> > sending metrics directly to Metrics REST interface for storage and sending
> > those same metrics to the message bus's metric topic so other things like
> > alerts can process it. Unfortunately, the kettle UI can't show any of it
> > since it is tightly related to the Pinger's metrics and nothing else. But I
> > think its working :) _______________________________________________
> > hawkular-dev mailing list
> > hawkular-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From lponce at redhat.com Mon Apr 6 03:19:12 2015
From: lponce at redhat.com (Lucas Ponce)
Date: Mon, 6 Apr 2015 03:19:12 -0400 (EDT)
Subject: [Hawkular-dev] Public Hawkular Instances
In-Reply-To:
References: <594183060.9221248.1427812686912.JavaMail.zimbra@redhat.com>
<551BEF7E.7090605@redhat.com>
<387763148.10182892.1427901454219.JavaMail.zimbra@redhat.com>
<551C2484.7070206@redhat.com>
Message-ID: <559094017.9680669.1428304752559.JavaMail.zimbra@redhat.com>
Hi,
>
> On 1 Apr 2015, at 18:01, Thomas Heute wrote:
>
> > Matt has a separate Cassandra docker container we could use I guess,
> > but
> > I think the main problem is to not run out of disk space.
>
> The other issue to look into is the remainder of
> $wildfly/standalone/data,
> as this will (at least for some time) also contain data like alert
> trigger definitions.
hawkular-alerts use the $wildfly/standalone/data to pre-populate triggers definitions.
This is used just for demo purposes, if no data is found simply there are no definitions pre-populated but the alerts component works without any restriction.
These init files was setted just for demo/poc reason and we can move them to a proper way.
Is there any suggestion about which is preferred location for it ?
Thanks,
Lucas
From gbrown at redhat.com Tue Apr 7 03:54:05 2015
From: gbrown at redhat.com (Gary Brown)
Date: Tue, 7 Apr 2015 03:54:05 -0400 (EDT)
Subject: [Hawkular-dev] start of message bus REST client
In-Reply-To: <229827221.9445883.1428071579447.JavaMail.zimbra@redhat.com>
References: <1086799654.9246235.1428011491691.JavaMail.zimbra@redhat.com>
<2329135.JUMlvSkmPs@localhost.localdomain>
<229827221.9445883.1428071579447.JavaMail.zimbra@redhat.com>
Message-ID: <2124223250.10010240.1428393245229.JavaMail.zimbra@redhat.com>
I agree the feed sending both messages is not ideal, so eventually it would be good if the component is responsible for sending out its "this has occurred" message. However it would be good if the bus could still be a general resource that any app could make use of.
So a possible compromise - have certain 'reserved' destinations that only hawkular components can publish too - allowing any app to publish to other topics?
To enable any app to publish an event that will be consumed by the alert engine, I would assume the destination used by the alert engine would not be restricted.
Regards
Gary
----- Original Message -----
> (I'm in PTO-mode, so I don't have an intelligible response to this yet
> but...)
>
> Just for the record, the only reason why I coded up the wildfly agent to both
> send over the metrics REST API and put a metric message on the bus was
> because (and only because) that's what the Pinger does today and since the
> Pinger is the thing that is "working" today, I just wanted to copy what it
> does so the agent can "work" too.
>
> I by no means am advocating that we have feeds send both messages (I don't
> think anyone is saying that's the long term solution) - this is just
> following Heiko's mantra "just get something to work" :)
>
> As to whether feeds can or should be able to send messages on the bus, I can
> be convinced either way.
>
> ----- Original Message -----
> > Ok, with the Jinn out of the lamp, let's move the discussion we've had
> > privately amongst the team-leads to the public forum :)
> >
> > With the ability to send rest messages to the bus we need to solve 1
> > fundamental question:
> >
> > *Who is supposed be sending what kind of messages?*
> >
> > It is clear, that any interested party should be able to listen to any
> > message.
> >
> > But I am concerned about the "source" of messages.
> >
> > For example I think it is wrong to send the message about metric being
> > collected to the bus prior to it being stored. It could happen that the
> > system
> > reacts to something that we will have no record about later on.
> >
> > But with more "involved" components that do more work than just store data
> > upon arrival, the consequences of being out of sync between what's stored
> > and
> > what's being reacted upon are potentially worse.
> >
> > As an example, consider this:
> > * someone sends a "resource inventoried" message to the bus - what should
> > inventory think about it? Did the author make sure to do everything exactly
> > like inventory would if it sent the message itself?
> > * someone sends an "alert fired" message to the bus - what should alerts do
> > about it?
> > * someone DDoSes the the bus
> >
> > I may be old fashioned in this, but I prefer consistency over eventual
> > consistency where possible. I don't think it would be too much of a
> > performance problem to architect the message flow like this:
> >
> > 1) anyone can listen on the bus
> > 2) only Hawkular components can send messages to the bus (or rather the
> > hawkular glue code built atop the standalone components)
> > 3) 3rd parties (including feeds) can send data only to the component
> > endpoints
> > (which will upon processing generate appropriate messages on the bus)
> >
> > I am no expert in either distributed architectures or in microservices, so
> > this view may be naive and I'd love to be proven wrong about it, but I
> > think
> > the concerns I raise are real and we should have a solid answer to them
> > whatever architecture we choose.
> >
> > Cheers,
> >
> > Lukas
> >
> > On Thursday, April 02, 2015 17:51:31 John Mazzitelli wrote:
> > > I created a very simple REST client that you can use to send any json
> > > string
> > > as a bus message.
> > >
> > > It requires no dependencies other than apache httpclient and jboss
> > > logging.
> > >
> > > See:
> > > https://github.com/hawkular/hawkular-bus/tree/master/hawkular-bus-rest-clie
> > > nt
> > >
> > > new
> > > org.hawkular.bus.restclient.RestClient(url).postTopicMessage(topicName,
> > > jsonPayload, headers);
> > >
> > > My agent uses it to send metrics to the hawkular bus's metric topic. I
> > > use
> > > REST rather than the bus-common API because (AFAIK) the thinking is this
> > > agent can be deployed in something like WildFly Core where JMS API isn't
> > > even available.
> > >
> > > So right now, this agent should be sending data just like the Pinger -
> > > its
> > > sending metrics directly to Metrics REST interface for storage and
> > > sending
> > > those same metrics to the message bus's metric topic so other things like
> > > alerts can process it. Unfortunately, the kettle UI can't show any of it
> > > since it is tightly related to the Pinger's metrics and nothing else. But
> > > I
> > > think its working :) _______________________________________________
> > > hawkular-dev mailing list
> > > hawkular-dev at lists.jboss.org
> > > https://lists.jboss.org/mailman/listinfo/hawkular-dev
> >
> > _______________________________________________
> > hawkular-dev mailing list
> > hawkular-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hawkular-dev
> >
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From mithomps at redhat.com Tue Apr 7 13:40:55 2015
From: mithomps at redhat.com (mike thompson)
Date: Tue, 7 Apr 2015 10:40:55 -0700
Subject: [Hawkular-dev] Another perspective on Availability
Message-ID: <54221624-5F4B-4CD7-9794-05E7E928A72E@redhat.com>
I found this view of availability interesting from open source monitoring project: CachetHQ(https://cachethq.io/ )
Perhaps we might want to incorporate these ideas of component status versus incident status.
Component Status
https://docs.cachethq.io/v1.0/docs/component-statuses
Status Name Description
1
Operational
The component is working.
2
Performance Issues
The component is experiencing some slowness.
3
Partial Outage
The component may not be working for everybody. This could be a geographical issue for example.
4
Major Outage
The component is not working for anybody.
Incident Status
https://docs.cachethq.io/v1.0/docs/incident-statuses
Status Name Description
0
Scheduled
This status is used for a scheduled status.
1
Investigating
You have reports of a problem and you're currently looking into them.
2
Identified
You've found the issue and you're working on a fix.
3
Watching
You've since deployed a fix and you're currently watching the situation.
4
Fixed
The fix has worked, you're happy to close the incident.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150407/d69e455b/attachment-0001.html
From snegrea at redhat.com Tue Apr 7 15:35:16 2015
From: snegrea at redhat.com (Stefan Negrea)
Date: Tue, 7 Apr 2015 15:35:16 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular Metrics - 0.3.1
In-Reply-To: <1969397940.5917124.1423168997249.JavaMail.zimbra@redhat.com>
Message-ID: <1555745278.11199263.1428435316002.JavaMail.zimbra@redhat.com>
Hello Everybody,
I am happy to announce a big milestone for the Hawkular Metrics project. We are releasing today for the first time from the repository hosted by the Hawkular organization.
Major changes:
1) UI
- The core UI has been migrated to Hawkular UI related projects (hawkular-ui-components, hawkular, and hawkular-ui-services). The explorer project is still available for testing purposes.
2) REST
- Consistent error reporting and status codes usage across endpoints
- Added Availability statistics (https://issues.jboss.org/browse/HWKMETRICS-35):
* Total downtime duration
* Last downtime
* Percentage of uptime
* Number of downtimes
- New Numeric Metric statistics (https://issues.jboss.org/browse/HWKMETRICS-34):
* Average
* Median
* 95th Percentile
- The REST implementation has been decoupled from the actual core logic, which paves the way for alternate REST implementations
3) Core
- Large refactoring of the core classes and packages, the domain related logic has been pushed to the core layer
- The Memory storage engine has been dropped from the project. Cassandra (embedded or standalone) is the exclusive storage engine.
4) InfluxDB Integration
- Influx Java client supports sending and reading data (it was not possible before because of the endoint URI differences) to/from Hawkular Metrics. Other clients are not tested but should work as well.
5) PTrans
- Configurable list of listeners (previously all collectd, ganglia, ... etc listeners were started)
- Bug fix: send data to Metrics server if the buffer is full or no data was received recently (previously data could sit in the buffer and wait for the buffer to be full before being sent)
Github Release:
https://github.com/hawkular/hawkular-metrics/releases/tag/0.3.1
JBoss Nexus Maven artifacts:
http://origin-repository.jboss.org/nexus/content/repositories/public/org/hawkular/metrics/
A big "Thank you" goes to John Sanda, Thomas Segismont, Mike Thompson, and Heiko Rupp for their project contributions. Special mentions go to Jeeva Kandasamy, Jirka Kremser, and Michael Burman for their project help.
I am happy to announce that Matt Wringe joined the Hawkular Metrics team with a focus on containers and project integrations. We are looking forward to his contributions.
Any discussion, suggestions or contributions are more than welcomed; so feel free to reply to this email or join #hawkular on freenode.
Thank you,
Stefan Negrea
Software Engineer
From snegrea at redhat.com Tue Apr 7 16:31:34 2015
From: snegrea at redhat.com (Stefan Negrea)
Date: Tue, 7 Apr 2015 16:31:34 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular 0.3.2 & Beyond - Release Planning
In-Reply-To: <1365152606.11220737.1428438363509.JavaMail.zimbra@redhat.com>
Message-ID: <830388823.11222407.1428438694029.JavaMail.zimbra@redhat.com>
Hello Everybody,
Here is a list of major features and enhancements planned for 0.3.2 and beyond:
1) REST API - the end-points will be separated based on the metric type. Current availability and numeric, will be joined by counter and gauges metrics.
2) Counters and gauges - add two new specialized metric types to allow more flexibility for clients.
3) Numeric Aggregates - Will allow long-term storage of numeric metrics at the expense of losing some fidelity. The design is already in progress. Because this is a really complex feature, the expectation is to start the work in 0.3.2 and publish a mini-roadmap.
4) Enhanced Availability - while the current model works, the goal would be expand this to cover most of the use cases brought up in the community threads. We will start the design in 0.3.2 with the implementation expected in future releases.
4) Go client - will help integrating with third party metrics collection framework. This work is the foundation for the Heapster sink.
5) Public Java API - following the work done in 0.3.1 in the core of the project, the goal is to separate the implementation from a public API and make that available to clients
6) Update REST testing - the current set of tests is a good gauge for regressions, but the overall coverage is still low. The plan for 0.3.2 is to increase coverage.
Any discussion, suggestions or contributions are more than welcomed; so feel free to reply to this email or join #hawkular on freenode.
Thank you,
Stefan Negrea
Software Engineer
From snegrea at redhat.com Tue Apr 7 16:32:16 2015
From: snegrea at redhat.com (Stefan Negrea)
Date: Tue, 7 Apr 2015 16:32:16 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular Metrics - 0.3.2 & Beyond - Release Planning
In-Reply-To: <830388823.11222407.1428438694029.JavaMail.zimbra@redhat.com>
Message-ID: <1888603226.11222745.1428438736211.JavaMail.zimbra@redhat.com>
Hello Everybody,
Here is a list of major features and enhancements planned for Hawkular Metrics 0.3.2 and beyond:
1) REST API - the end-points will be separated based on the metric type. Current availability and numeric, will be joined by counter and gauges metrics.
2) Counters and gauges - add two new specialized metric types to allow more flexibility for clients.
3) Numeric Aggregates - Will allow long-term storage of numeric metrics at the expense of losing some fidelity. The design is already in progress. Because this is a really complex feature, the expectation is to start the work in 0.3.2 and publish a mini-roadmap.
4) Enhanced Availability - while the current model works, the goal would be expand this to cover most of the use cases brought up in the community threads. We will start the design in 0.3.2 with the implementation expected in future releases.
4) Go client - will help integrating with third party metrics collection framework. This work is the foundation for the Heapster sink.
5) Public Java API - following the work done in 0.3.1 in the core of the project, the goal is to separate the implementation from a public API and make that available to clients
6) Update REST testing - the current set of tests is a good gauge for regressions, but the overall coverage is still low. The plan for 0.3.2 is to increase coverage.
Any discussion, suggestions or contributions are more than welcomed; so feel free to reply to this email or join #hawkular on freenode.
Thank you,
Stefan Negrea
Software Engineer
From snegrea at redhat.com Tue Apr 7 16:33:16 2015
From: snegrea at redhat.com (Stefan Negrea)
Date: Tue, 7 Apr 2015 16:33:16 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular 0.3.2 & Beyond - Release Planning
In-Reply-To: <830388823.11222407.1428438694029.JavaMail.zimbra@redhat.com>
References: <830388823.11222407.1428438694029.JavaMail.zimbra@redhat.com>
Message-ID: <396183907.11223060.1428438796763.JavaMail.zimbra@redhat.com>
Really sorry but I missed the Metrics word in the title. This is the release planning for Hawkular Metrics. I resent the email with the proper subject, so we can continue the discussion in that context.
Thank you,
Stefan
----- Original Message -----
> From: "Stefan Negrea"
> To: "Discussions around Hawkular development"
> Sent: Tuesday, April 7, 2015 3:31:34 PM
> Subject: [Hawkular-dev] Hawkular 0.3.2 & Beyond - Release Planning
>
> Hello Everybody,
>
>
> Here is a list of major features and enhancements planned for 0.3.2 and
> beyond:
>
> 1) REST API - the end-points will be separated based on the metric type.
> Current availability and numeric, will be joined by counter and gauges
> metrics.
>
> 2) Counters and gauges - add two new specialized metric types to allow more
> flexibility for clients.
>
> 3) Numeric Aggregates - Will allow long-term storage of numeric metrics at
> the expense of losing some fidelity. The design is already in progress.
> Because this is a really complex feature, the expectation is to start the
> work in 0.3.2 and publish a mini-roadmap.
>
> 4) Enhanced Availability - while the current model works, the goal would be
> expand this to cover most of the use cases brought up in the community
> threads. We will start the design in 0.3.2 with the implementation expected
> in future releases.
>
> 4) Go client - will help integrating with third party metrics collection
> framework. This work is the foundation for the Heapster sink.
>
> 5) Public Java API - following the work done in 0.3.1 in the core of the
> project, the goal is to separate the implementation from a public API and
> make that available to clients
>
> 6) Update REST testing - the current set of tests is a good gauge for
> regressions, but the overall coverage is still low. The plan for 0.3.2 is to
> increase coverage.
>
>
> Any discussion, suggestions or contributions are more than welcomed; so feel
> free to reply to this email or join #hawkular on freenode.
>
>
> Thank you,
> Stefan Negrea
>
> Software Engineer
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From mithomps at redhat.com Tue Apr 7 18:00:02 2015
From: mithomps at redhat.com (mike thompson)
Date: Tue, 7 Apr 2015 15:00:02 -0700
Subject: [Hawkular-dev] Which Maven version do we support?
Message-ID: <22A112D9-A54F-4DB7-9BC7-4C884B9984DA@redhat.com>
Lukas found an issue with the latest maven 3.3.1 running the project: https://jira.codehaus.org/browse/MNG-5787 (thank Jirka for finding that)
It seems the solution is either:
to downgrade to maven 3.2.5 or upgrade the frontend-maven-plugin to 0.0.23 when using maven 3.3.1 (which I am)
Sooo it begs the question, ?What version of Maven are we supporting?"
https://github.com/hawkular/hawkular/pull/70
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150407/3e545a68/attachment.html
From tsegismo at redhat.com Wed Apr 8 03:01:04 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Wed, 08 Apr 2015 09:01:04 +0200
Subject: [Hawkular-dev] Which Maven version do we support?
In-Reply-To: <22A112D9-A54F-4DB7-9BC7-4C884B9984DA@redhat.com>
References: <22A112D9-A54F-4DB7-9BC7-4C884B9984DA@redhat.com>
Message-ID: <5524D230.4000007@redhat.com>
Le 08/04/2015 00:00, mike thompson a ?crit :
> Lukas found an issue with the latest maven 3.3.1 running the project:
> https://jira.codehaus.org/browse/MNG-5787 (thank Jirka for finding that)
>
> It seems the solution is either:
> to downgrade to maven 3.2.5 or upgrade the frontend-maven-plugin to
> 0.0.23 when using maven 3.3.1 (which I am)
>
>
> Sooo it begs the question, ?What version of Maven are we supporting?"
>
> https://github.com/hawkular/hawkular/pull/70
>
If we upgrade frontend-maven-plugin to 0.0.23, it works with both Maven
3.2.5 and 3.3.1, correct?
Does 0.0.23 cause any regression?
From miburman at redhat.com Wed Apr 8 10:07:17 2015
From: miburman at redhat.com (Michael Burman)
Date: Wed, 8 Apr 2015 10:07:17 -0400 (EDT)
Subject: [Hawkular-dev] Metrics, tags and search capabilities
In-Reply-To: <1578391240.13425399.1428499924906.JavaMail.zimbra@redhat.com>
Message-ID: <1666011628.13455219.1428502037048.JavaMail.zimbra@redhat.com>
Hi,
Earlier today I created HWKMETRICS-54, but I later thought about it a bit more and to me it looks like we're not sure what the tags should really do and how the system should be used. Lets assume the following scenario:
3 machines, each one running an agent that provides data for memory.free, memory.cached, cpu.idle, cpu.user, cpu.system, disk.free, disk.used
Now what user might want to do in these cases is:
a) I want to get all the statistics affecting the host 1
b) I want to get all the memory.free statistics from each host
Think about the data modeling in our current hawkular-metrics for a moment. The user starts:
I. Model everything with machine1.memory.free, machine2.memory.free etc
a) How to query machine1.* ? Can't be done. c) How to get *.memory.free? Can't be done.
How would the query succeed with our current format? By creating tags for every occasion on metric creation:
create machine1.memory.free (tags: machine='machine1', category='memory')
create machine2.memory.free (tags: machine='machine2', category='memory')
What the user finds out is that "why on earth do I have the metricId at all" ? It's a good question. In our current structure we should remove metricId and just invent something random for better Cassandra partitioning.
What it probably should look like (and this is how I assumed it was to be done until I checked the unit tests and find out that there's nothing pointing to this OpenTSDB familiar method):
II. memory.free, cpu.idle are the metricIds and I'll define it has a parameter 'machine'. When pushing a metric I set a tag with a value, such as machine='machine2'.
Now when I fetch the metric "memory.free", I can get all the memory.free valuess with 'machine'-tag indicating which machine it was gathered from. If I need to search for all machine-statistics, then I could use the tag-searching. If I wanted only machine1 memory.free, I would add a filter: tag machine='machine1'.
Or how are we supposed to model real-world-use-cases? The current model is quite cumbersome and not even necessarily doable in many cases (am I supposed to query for a metric definition before pushing any metric - because a new container could give me new set of parameters or a new machine new set of machine parameters and I need to remember to register them instead of pre-defined types which I might know).
- Micke
From gbrown at redhat.com Wed Apr 8 10:25:59 2015
From: gbrown at redhat.com (Gary Brown)
Date: Wed, 8 Apr 2015 10:25:59 -0400 (EDT)
Subject: [Hawkular-dev] Metrics, tags and search capabilities
In-Reply-To: <1666011628.13455219.1428502037048.JavaMail.zimbra@redhat.com>
References: <1666011628.13455219.1428502037048.JavaMail.zimbra@redhat.com>
Message-ID: <1464613919.10849757.1428503159387.JavaMail.zimbra@redhat.com>
Hi
I think use of tags to provide greater flexibility would be good, to support future requirements, such as metrics related to services, apps, queries, customers, etc.
So maybe a generic 'type' tag/field would define the type of metric, e.g. response time, size, availability, etc - but other information defined using appropriate tags.
Although is there any standard naming convention for referring to resources in inventory - i.e. so where metrics relate to a resource in inventory, then perhaps a tag/field could be used to link them?
Regards
Gary
----- Original Message -----
> Hi,
>
> Earlier today I created HWKMETRICS-54, but I later thought about it a bit
> more and to me it looks like we're not sure what the tags should really do
> and how the system should be used. Lets assume the following scenario:
>
> 3 machines, each one running an agent that provides data for memory.free,
> memory.cached, cpu.idle, cpu.user, cpu.system, disk.free, disk.used
>
> Now what user might want to do in these cases is:
>
> a) I want to get all the statistics affecting the host 1
> b) I want to get all the memory.free statistics from each host
>
> Think about the data modeling in our current hawkular-metrics for a moment.
> The user starts:
>
> I. Model everything with machine1.memory.free, machine2.memory.free etc
> a) How to query machine1.* ? Can't be done. c) How to get *.memory.free?
> Can't be done.
>
> How would the query succeed with our current format? By creating tags for
> every occasion on metric creation:
>
> create machine1.memory.free (tags: machine='machine1', category='memory')
> create machine2.memory.free (tags: machine='machine2', category='memory')
>
> What the user finds out is that "why on earth do I have the metricId at all"
> ? It's a good question. In our current structure we should remove metricId
> and just invent something random for better Cassandra partitioning.
>
> What it probably should look like (and this is how I assumed it was to be
> done until I checked the unit tests and find out that there's nothing
> pointing to this OpenTSDB familiar method):
>
> II. memory.free, cpu.idle are the metricIds and I'll define it has a
> parameter 'machine'. When pushing a metric I set a tag with a value, such as
> machine='machine2'.
>
> Now when I fetch the metric "memory.free", I can get all the memory.free
> valuess with 'machine'-tag indicating which machine it was gathered from. If
> I need to search for all machine-statistics, then I could use the
> tag-searching. If I wanted only machine1 memory.free, I would add a filter:
> tag machine='machine1'.
>
> Or how are we supposed to model real-world-use-cases? The current model is
> quite cumbersome and not even necessarily doable in many cases (am I
> supposed to query for a metric definition before pushing any metric -
> because a new container could give me new set of parameters or a new machine
> new set of machine parameters and I need to remember to register them
> instead of pre-defined types which I might know).
>
> - Micke
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From jsanda at redhat.com Wed Apr 8 10:51:28 2015
From: jsanda at redhat.com (John Sanda)
Date: Wed, 8 Apr 2015 10:51:28 -0400
Subject: [Hawkular-dev] Metrics, tags and search capabilities
In-Reply-To: <1666011628.13455219.1428502037048.JavaMail.zimbra@redhat.com>
References: <1666011628.13455219.1428502037048.JavaMail.zimbra@redhat.com>
Message-ID: <4AE0856F-FFE5-474A-842F-2DD204D95312@redhat.com>
> On Apr 8, 2015, at 10:07 AM, Michael Burman wrote:
>
> Hi,
>
> Earlier today I created HWKMETRICS-54, but I later thought about it a bit more and to me it looks like we're not sure what the tags should really do and how the system should be used. Lets assume the following scenario:
You are correct to some degree about tags. We do know that we want to support querying/filtering by tags. We also plan to use tags for configuring things like data retention and aggregation. Right now we have limited support for querying for data points by tags. We do not yet have support for querying by metric tags.
>
> 3 machines, each one running an agent that provides data for memory.free, memory.cached, cpu.idle, cpu.user, cpu.system, disk.free, disk.used
>
> Now what user might want to do in these cases is:
>
> a) I want to get all the statistics affecting the host 1
> b) I want to get all the memory.free statistics from each host
>
> Think about the data modeling in our current hawkular-metrics for a moment. The user starts:
>
> I. Model everything with machine1.memory.free, machine2.memory.free etc
> a) How to query machine1.* ? Can't be done. c) How to get *.memory.free? Can't be done.
It cannot be done yet because we only have support right now for filtering individual data points by tag(s). Assuming each metric from machine1 has the tag, machine=machine1, then I think we should support filtering like,
machine = machine1 ?> retrieve data points for all metrics on machine1
machine = * ?> retrieve data points for all metrics on machines 1, 2, 3
machine = [machine1, machine2] ?> retrieve data points from machines 1, 2
machine = regular expression ?> retrieve data points for metrics with machine tag where values matches regex
I think this would handle both querying machine1 metrics and querying memory.free metrics.
>
> How would the query succeed with our current format? By creating tags for every occasion on metric creation:
>
> create machine1.memory.free (tags: machine='machine1', category='memory')
> create machine2.memory.free (tags: machine='machine2', category='memory')
>
> What the user finds out is that "why on earth do I have the metricId at all" ? It's a good question. In our current structure we should remove metricId and just invent something random for better Cassandra partitioning.
>
> What it probably should look like (and this is how I assumed it was to be done until I checked the unit tests and find out that there's nothing pointing to this OpenTSDB familiar method):
>
> II. memory.free, cpu.idle are the metricIds and I'll define it has a parameter 'machine'. When pushing a metric I set a tag with a value, such as machine='machine2?.
You have strayed into the topic of adding more explicit grouping of metrics, something I have thought about as well. Remember that metric id is basically the primary key, and the PK consists of the partition key and any number of optional clustering columns. Partition keys have to be unique. In your example the tag machine=machine2 would really have to be a special tag that winds up being part of the partition key; otherwise, our keys will not be unique.
I think that I tend to favor more explicit grouping. Tags can be changed, and the partition key cannot change. So let?s say we have an explicit (and maybe optional) grouping parameter. We can use host. Then the actual partition key still winds up being machine1.memory.free and so on. And sure, the client can query for all metrics belonging to machine1 just by specifying host = machine1. Isn?t this just a special case of filtering by tags?
>
> Now when I fetch the metric "memory.free", I can get all the memory.free valuess with 'machine'-tag indicating which machine it was gathered from. If I need to search for all machine-statistics, then I could use the tag-searching. If I wanted only machine1 memory.free, I would add a filter: tag machine='machine1'.
>
> Or how are we supposed to model real-world-use-cases? The current model is quite cumbersome and not even necessarily doable in many cases (am I supposed to query for a metric definition before pushing any metric - because a new container could give me new set of parameters or a new machine new set of machine parameters and I need to remember to register them instead of pre-defined types which I might know).
>
> - Micke
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From mazz at redhat.com Wed Apr 8 12:42:37 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Wed, 8 Apr 2015 12:42:37 -0400 (EDT)
Subject: [Hawkular-dev] ${project.version} in dependency versions considered
harmful
In-Reply-To: <55255878.3080709@redhat.com>
References: <55255878.3080709@redhat.com>
Message-ID: <955245385.11315805.1428511357502.JavaMail.zimbra@redhat.com>
FYI:
----- Forwarded Message -----
Subject: ${project.version} in dependency versions considered harmful
Hey everyone,
I just wanted to give a little PSA about this insidious little
expression (see $subject).
Using that expression in dependency declarations seems like a shortcut,
but it can go wrong in SO MANY WAYS. By far the most common problem is
the use of ${project.version} in a BOM or parent POM.
If anyone inherits from that parent POM or imports that BOM in an
external project, that external project's version will be used in place
of the one that the parent POM / BOM intended, and all of your carefully
managed dependencies will be wrong.
Example: jboss-as-console-bom-2.5.5.Final-redhat-1.pom
This declares org.jboss.as:console-spi:sources:${project.version}:jar.
Then, the Teiid build imports that BOM and uses it when it builds
against the console-core library. The above sources jar listed as a
second-level dependency (coming in via console-core) uses the Teiid
project version, and everything grinds to a halt.
Please, if you find dependency declarations using ${project.version},
fix it! If there are many, many references, simply switch to using a
property (eg. ${consoleVersion} in place of ${project.version})...and
DON'T use ${project.version} as the value for that property.
From jsanda at redhat.com Wed Apr 8 14:40:06 2015
From: jsanda at redhat.com (John Sanda)
Date: Wed, 8 Apr 2015 14:40:06 -0400
Subject: [Hawkular-dev] Metrics, tags and search capabilities
In-Reply-To: <4AE0856F-FFE5-474A-842F-2DD204D95312@redhat.com>
References: <1666011628.13455219.1428502037048.JavaMail.zimbra@redhat.com>
<4AE0856F-FFE5-474A-842F-2DD204D95312@redhat.com>
Message-ID:
I added a comment to HWKMETRICS-54 that is worth repeating here. We support tagging at two different levels - 1) the metric or times as a whole and 2) individual data points. Tags applied to individual data points will expire alongside the data. Metric tags on the other hand do not expire. I anticipate using metric tags most frequently for query filtering as discussed below, providing meta data that might be used by other services such as inventory or alerting, and configuring things like aggregation and data retention.
> On Apr 8, 2015, at 10:51 AM, John Sanda wrote:
>
>>
>> On Apr 8, 2015, at 10:07 AM, Michael Burman > wrote:
>>
>> Hi,
>>
>> Earlier today I created HWKMETRICS-54, but I later thought about it a bit more and to me it looks like we're not sure what the tags should really do and how the system should be used. Lets assume the following scenario:
>
> You are correct to some degree about tags. We do know that we want to support querying/filtering by tags. We also plan to use tags for configuring things like data retention and aggregation. Right now we have limited support for querying for data points by tags. We do not yet have support for querying by metric tags.
>
>>
>> 3 machines, each one running an agent that provides data for memory.free, memory.cached, cpu.idle, cpu.user, cpu.system, disk.free, disk.used
>>
>> Now what user might want to do in these cases is:
>>
>> a) I want to get all the statistics affecting the host 1
>> b) I want to get all the memory.free statistics from each host
>>
>> Think about the data modeling in our current hawkular-metrics for a moment. The user starts:
>>
>> I. Model everything with machine1.memory.free, machine2.memory.free etc
>> a) How to query machine1.* ? Can't be done. c) How to get *.memory.free? Can't be done.
>
> It cannot be done yet because we only have support right now for filtering individual data points by tag(s). Assuming each metric from machine1 has the tag, machine=machine1, then I think we should support filtering like,
>
> machine = machine1 ?> retrieve data points for all metrics on machine1
> machine = * ?> retrieve data points for all metrics on machines 1, 2, 3
> machine = [machine1, machine2] ?> retrieve data points from machines 1, 2
> machine = regular expression ?> retrieve data points for metrics with machine tag where values matches regex
>
> I think this would handle both querying machine1 metrics and querying memory.free metrics.
>
>>
>> How would the query succeed with our current format? By creating tags for every occasion on metric creation:
>>
>> create machine1.memory.free (tags: machine='machine1', category='memory')
>> create machine2.memory.free (tags: machine='machine2', category='memory')
>>
>> What the user finds out is that "why on earth do I have the metricId at all" ? It's a good question. In our current structure we should remove metricId and just invent something random for better Cassandra partitioning.
>>
>> What it probably should look like (and this is how I assumed it was to be done until I checked the unit tests and find out that there's nothing pointing to this OpenTSDB familiar method):
>>
>> II. memory.free, cpu.idle are the metricIds and I'll define it has a parameter 'machine'. When pushing a metric I set a tag with a value, such as machine='machine2?.
>
> You have strayed into the topic of adding more explicit grouping of metrics, something I have thought about as well. Remember that metric id is basically the primary key, and the PK consists of the partition key and any number of optional clustering columns. Partition keys have to be unique. In your example the tag machine=machine2 would really have to be a special tag that winds up being part of the partition key; otherwise, our keys will not be unique.
>
> I think that I tend to favor more explicit grouping. Tags can be changed, and the partition key cannot change. So let?s say we have an explicit (and maybe optional) grouping parameter. We can use host. Then the actual partition key still winds up being machine1.memory.free and so on. And sure, the client can query for all metrics belonging to machine1 just by specifying host = machine1. Isn?t this just a special case of filtering by tags?
>
>>
>> Now when I fetch the metric "memory.free", I can get all the memory.free valuess with 'machine'-tag indicating which machine it was gathered from. If I need to search for all machine-statistics, then I could use the tag-searching. If I wanted only machine1 memory.free, I would add a filter: tag machine='machine1'.
>>
>> Or how are we supposed to model real-world-use-cases? The current model is quite cumbersome and not even necessarily doable in many cases (am I supposed to query for a metric definition before pushing any metric - because a new container could give me new set of parameters or a new machine new set of machine parameters and I need to remember to register them instead of pre-defined types which I might know).
>>
>> - Micke
>>
>>
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150408/90e0dfca/attachment-0001.html
From snegrea at redhat.com Wed Apr 8 16:16:06 2015
From: snegrea at redhat.com (Stefan Negrea)
Date: Wed, 8 Apr 2015 16:16:06 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular Metrics - REST API Remake
Message-ID: <1803454035.12019533.1428524166120.JavaMail.zimbra@redhat.com>
The following is a new meeting request:
Subject: Hawkular Metrics - REST API Remake
Organizer: "Stefan Negrea"
Location: Conf - 398-055-2127 & BlueJeans
Time: Monday, April 13, 2015, 9:00:00 AM - 10:00:00 AM GMT -06:00 US/Canada Central
Invitees: jsanda at redhat.com; hawkular-dev at lists.jboss.org
*~*~*~*~*~*~*~*~*~*
Hello Everybody,
I would like to schedule a meeting to discuss a proposal for changes to Hawkular Metrics REST API. The agenda also includes recent proposals from the channel and mailing list around tags and raw vs aggregated metrics from an end-point perspective.
Here is a preliminary simple spreadsheet for this remake:
https://docs.google.com/a/redhat.com/spreadsheets/d/1CQBfAenNlWbQENoK_Rms9pHooK2e7yGf15bm5avaN9A/edit#gid=329319157
Thank you,
Stefan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/calendar
Size: 2072 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150408/fabe8028/attachment.bin
From snegrea at redhat.com Wed Apr 8 16:25:15 2015
From: snegrea at redhat.com (Stefan Negrea)
Date: Wed, 8 Apr 2015 16:25:15 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular Metrics - Aggregate Numeric Metrics
Message-ID: <1657646868.12034119.1428524715847.JavaMail.zimbra@redhat.com>
The following is a new meeting request:
Subject: Hawkular Metrics - Aggregate Numeric Metrics
Organizer: "Stefan Negrea"
Location: Conf - 398-055-2127 & BlueJeans
Time: Monday, April 20, 2015, 9:00:00 AM - 10:00:00 AM GMT -06:00 US/Canada Central
Invitees: jsanda at redhat.com; hawkular-dev at lists.jboss.org
*~*~*~*~*~*~*~*~*~*
Hello Everybody,
I would like to schedule a review meeting for the architecture & design of aggregate numeric metrics for Hawkular Metrics. John Sanda created a very detailed document that will serve as basis for the meeting.
Here is the document:
https://docs.google.com/a/redhat.com/document/d/1vQkj_rR_wUHwGnalDij8XXGKXXPTm9El3gQoEA3NCtU/edit?pli=1#
Thank you,
Stefan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/calendar
Size: 2005 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150408/5f633943/attachment.bin
From mithomps at redhat.com Wed Apr 8 18:25:00 2015
From: mithomps at redhat.com (mike thompson)
Date: Wed, 8 Apr 2015 15:25:00 -0700
Subject: [Hawkular-dev] Which Maven version do we support?
In-Reply-To: <5524D230.4000007@redhat.com>
References: <22A112D9-A54F-4DB7-9BC7-4C884B9984DA@redhat.com>
<5524D230.4000007@redhat.com>
Message-ID:
> On 8 Apr 2015, at 00:01, Thomas Segismont wrote:
>
> Le 08/04/2015 00:00, mike thompson a ?crit :
>> Lukas found an issue with the latest maven 3.3.1 running the project:
>> https://jira.codehaus.org/browse/MNG-5787 (thank Jirka for finding that)
>>
>> It seems the solution is either:
>> to downgrade to maven 3.2.5 or upgrade the frontend-maven-plugin to
>> 0.0.23 when using maven 3.3.1 (which I am)
>>
>>
>> Sooo it begs the question, ?What version of Maven are we supporting?"
>>
>> https://github.com/hawkular/hawkular/pull/70
>>
>
> If we upgrade frontend-maven-plugin to 0.0.23, it works with both Maven
> 3.2.5 and 3.3.1, correct?
I don?t think so. Waiting for Lukas to confirm.
>
> Does 0.0.23 cause any regression?
No.
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From tsegismo at redhat.com Thu Apr 9 03:30:39 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Thu, 9 Apr 2015 03:30:39 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular Metrics - REST API Remake
Message-ID: <1349108042.17153819.1428564639884.JavaMail.zimbra@redhat.com>
I'll have to drop at 16h25.
----- Mail original -----
> The following is a new meeting request:
> Subject: Hawkular Metrics - REST API Remake
> Organizer: "Stefan Negrea"
> Location: Conf - 398-055-2127 & BlueJeans
> Time: Monday, April 13, 2015, 9:00:00 AM - 10:00:00 AM GMT -06:00 US/Canada
> Central
> Invitees: jsanda at redhat.com; hawkular-dev at lists.jboss.org
> *~*~*~*~*~*~*~*~*~*
> Hello Everybody,
> I would like to schedule a meeting to discuss a proposal for changes to
> Hawkular Metrics REST API. The agenda also includes recent proposals from
> the channel and mailing list around tags and raw vs aggregated metrics from
> an end-point perspective.
> Here is a preliminary simple spreadsheet for this remake:
> https://docs.google.com/a/redhat.com/spreadsheets/d/1CQBfAenNlWbQENoK_Rms9pHooK2e7yGf15bm5avaN9A/edit#gid=329319157
> Thank you,
> Stefan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150409/aae548a4/attachment.html
From tsegismo at redhat.com Thu Apr 9 03:32:13 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Thu, 09 Apr 2015 09:32:13 +0200
Subject: [Hawkular-dev] Hawkular Metrics - REST API Remake
In-Reply-To: <1349108042.17153819.1428564639884.JavaMail.zimbra@redhat.com>
References: <1349108042.17153819.1428564639884.JavaMail.zimbra@redhat.com>
Message-ID: <55262AFD.6090308@redhat.com>
Sorry, answered in my TZ and time format :)
I'll have to drop 25 minutes after the start.
Le 09/04/2015 09:30, Thomas Segismont a ?crit :
> I'll have to drop at 16h25.
>
> ------------------------------------------------------------------------
>
> The following is a new meeting request:
>
> Subject: Hawkular Metrics - REST API Remake
> Organizer: "Stefan Negrea"
>
> Location: Conf - 398-055-2127 & BlueJeans
> Time: Monday, April 13, 2015, 9:00:00 AM - 10:00:00 AM GMT -06:00
> US/Canada Central
>
> Invitees: jsanda at redhat.com; hawkular-dev at lists.jboss.org
>
>
> *~*~*~*~*~*~*~*~*~*
>
> Hello Everybody,
>
> I would like to schedule a meeting to discuss a proposal for changes
> to Hawkular Metrics REST API. The agenda also includes recent
> proposals from the channel and mailing list around tags and raw vs
> aggregated metrics from an end-point perspective.
>
> Here is a preliminary simple spreadsheet for this remake:
> https://docs.google.com/a/redhat.com/spreadsheets/d/1CQBfAenNlWbQENoK_Rms9pHooK2e7yGf15bm5avaN9A/edit#gid=329319157
>
>
>
> Thank you,
> Stefan
>
>
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From miburman at redhat.com Thu Apr 9 06:03:38 2015
From: miburman at redhat.com (Michael Burman)
Date: Thu, 9 Apr 2015 06:03:38 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular Metrics - REST API Remake
In-Reply-To: <55262AFD.6090308@redhat.com>
References: <1349108042.17153819.1428564639884.JavaMail.zimbra@redhat.com>
<55262AFD.6090308@redhat.com>
Message-ID: <1634053522.14077412.1428573818436.JavaMail.zimbra@redhat.com>
Hi,
Yups, I can't make it at all on Mondays that time.
- Micke
----- Original Message -----
From: "Thomas Segismont"
To: hawkular-dev at lists.jboss.org
Sent: Thursday, April 9, 2015 10:32:13 AM
Subject: Re: [Hawkular-dev] Hawkular Metrics - REST API Remake
Sorry, answered in my TZ and time format :)
I'll have to drop 25 minutes after the start.
Le 09/04/2015 09:30, Thomas Segismont a ?crit :
> I'll have to drop at 16h25.
>
> ------------------------------------------------------------------------
>
> The following is a new meeting request:
>
> Subject: Hawkular Metrics - REST API Remake
> Organizer: "Stefan Negrea"
>
> Location: Conf - 398-055-2127 & BlueJeans
> Time: Monday, April 13, 2015, 9:00:00 AM - 10:00:00 AM GMT -06:00
> US/Canada Central
>
> Invitees: jsanda at redhat.com; hawkular-dev at lists.jboss.org
>
>
> *~*~*~*~*~*~*~*~*~*
>
> Hello Everybody,
>
> I would like to schedule a meeting to discuss a proposal for changes
> to Hawkular Metrics REST API. The agenda also includes recent
> proposals from the channel and mailing list around tags and raw vs
> aggregated metrics from an end-point perspective.
>
> Here is a preliminary simple spreadsheet for this remake:
> https://docs.google.com/a/redhat.com/spreadsheets/d/1CQBfAenNlWbQENoK_Rms9pHooK2e7yGf15bm5avaN9A/edit#gid=329319157
>
>
>
> Thank you,
> Stefan
>
>
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
_______________________________________________
hawkular-dev mailing list
hawkular-dev at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hawkular-dev
From mazz at redhat.com Thu Apr 9 08:58:24 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Thu, 9 Apr 2015 08:58:24 -0400 (EDT)
Subject: [Hawkular-dev] hawkular metrics avail API
In-Reply-To: <788472262.11692525.1428584301167.JavaMail.zimbra@redhat.com>
Message-ID: <692965069.11692556.1428584304743.JavaMail.zimbra@redhat.com>
Can someone point me to some code that stores availability data into hawkular metrics via REST and/or bus?
The hawkular monitor agent is in a state where I can finally add this code and get it to start storing avail data (its already doing metrics).
Once I get that done, I'm off to implement JMX/Jolokia metrics/avail collection and storage.
From tsegismo at redhat.com Thu Apr 9 10:12:08 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Thu, 09 Apr 2015 16:12:08 +0200
Subject: [Hawkular-dev] hawkular metrics avail API
In-Reply-To: <692965069.11692556.1428584304743.JavaMail.zimbra@redhat.com>
References: <692965069.11692556.1428584304743.JavaMail.zimbra@redhat.com>
Message-ID: <552688B8.1010001@redhat.com>
Doesn't the pinger send avail data to metrics?
Le 09/04/2015 14:58, John Mazzitelli a ?crit :
> Can someone point me to some code that stores availability data into hawkular metrics via REST and/or bus?
>
> The hawkular monitor agent is in a state where I can finally add this code and get it to start storing avail data (its already doing metrics).
>
> Once I get that done, I'm off to implement JMX/Jolokia metrics/avail collection and storage.
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From mazz at redhat.com Thu Apr 9 15:18:58 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Thu, 9 Apr 2015 15:18:58 -0400 (EDT)
Subject: [Hawkular-dev] hawkular metrics avail API
In-Reply-To: <552688B8.1010001@redhat.com>
References: <692965069.11692556.1428584304743.JavaMail.zimbra@redhat.com>
<552688B8.1010001@redhat.com>
Message-ID: <679666672.11965216.1428607138004.JavaMail.zimbra@redhat.com>
> Doesn't the pinger send avail data to metrics?
I thought so, but I don't see it anywhere in here:
https://github.com/hawkular/hawkular/tree/master/modules/pinger/src/main/java/org/hawkular/component/pinger
Anyone know where the code is that shows the pinger sending avail data?
Is there any example code elsewhere (doesn't have to be the pinger) that sends avail data?
----- Original Message -----
> Doesn't the pinger send avail data to metrics?
>
> Le 09/04/2015 14:58, John Mazzitelli a ?crit :
> > Can someone point me to some code that stores availability data into
> > hawkular metrics via REST and/or bus?
> >
> > The hawkular monitor agent is in a state where I can finally add this code
> > and get it to start storing avail data (its already doing metrics).
> >
> > Once I get that done, I'm off to implement JMX/Jolokia metrics/avail
> > collection and storage.
> > _______________________________________________
> > hawkular-dev mailing list
> > hawkular-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hawkular-dev
> >
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From mithomps at redhat.com Thu Apr 9 15:22:42 2015
From: mithomps at redhat.com (mike thompson)
Date: Thu, 9 Apr 2015 12:22:42 -0700
Subject: [Hawkular-dev] hawkular metrics avail API
In-Reply-To: <679666672.11965216.1428607138004.JavaMail.zimbra@redhat.com>
References: <692965069.11692556.1428584304743.JavaMail.zimbra@redhat.com>
<552688B8.1010001@redhat.com>
<679666672.11965216.1428607138004.JavaMail.zimbra@redhat.com>
Message-ID:
> On 9 Apr 2015, at 12:18, John Mazzitelli wrote:
>
>> Doesn't the pinger send avail data to metrics?
>
> I thought so, but I don't see it anywhere in here:
>
> https://github.com/hawkular/hawkular/tree/master/modules/pinger/src/main/java/org/hawkular/component/pinger
>
> Anyone know where the code is that shows the pinger sending avail data?
It is the avail_creator module in hawkular repo
https://github.com/hawkular/hawkular/pull/61
AvailPublisher.java
>
> Is there any example code elsewhere (doesn't have to be the pinger) that sends avail data?
modules/avail_creator/src/main/java/org/hawkular/component/availcreator/AvailPublisher.java
>
> ----- Original Message -----
>> Doesn't the pinger send avail data to metrics?
>>
>> Le 09/04/2015 14:58, John Mazzitelli a ?crit :
>>> Can someone point me to some code that stores availability data into
>>> hawkular metrics via REST and/or bus?
>>>
>>> The hawkular monitor agent is in a state where I can finally add this code
>>> and get it to start storing avail data (its already doing metrics).
>>>
>>> Once I get that done, I'm off to implement JMX/Jolokia metrics/avail
>>> collection and storage.
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>>
>>
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150409/12aa2b87/attachment.html
From vnguyen at redhat.com Thu Apr 9 15:57:54 2015
From: vnguyen at redhat.com (Viet Nguyen)
Date: Thu, 9 Apr 2015 15:57:54 -0400 (EDT)
Subject: [Hawkular-dev] hawkular metrics avail API
In-Reply-To: <692965069.11692556.1428584304743.JavaMail.zimbra@redhat.com>
References: <692965069.11692556.1428584304743.JavaMail.zimbra@redhat.com>
Message-ID: <660828174.9062889.1428609474966.JavaMail.zimbra@redhat.com>
Mazz,
Maybe this helps?
https://github.com/Hawkular-QE/hawkular-java-client/blob/master/src/test/java/org/hawkular/client/test/AvailabilityMetricTest.java
Viet
----- Original Message -----
From: "John Mazzitelli"
To: "Discussions around Hawkular development"
Sent: Thursday, April 9, 2015 5:58:24 AM
Subject: [Hawkular-dev] hawkular metrics avail API
Can someone point me to some code that stores availability data into hawkular metrics via REST and/or bus?
The hawkular monitor agent is in a state where I can finally add this code and get it to start storing avail data (its already doing metrics).
Once I get that done, I'm off to implement JMX/Jolokia metrics/avail collection and storage.
_______________________________________________
hawkular-dev mailing list
hawkular-dev at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hawkular-dev
From mithomps at redhat.com Thu Apr 9 22:24:45 2015
From: mithomps at redhat.com (mike thompson)
Date: Thu, 9 Apr 2015 19:24:45 -0700
Subject: [Hawkular-dev] Ways to Test Availability Down?
Message-ID:
I guess this question is mainly targeted to Hawkular QE. So all of my testing (especially on a dev box) shows availability 100% (as most sites will). So while I can mock this in code to show downtime and unknown. It appears that we need a consistent way to demonstrate up/down/unknown/whatever else. Is there a QE way to do this currently?
I?m thinking a mock site that changes states every 5 or 10 minutes that is publicly available. This way we could all link our integration tests to this site to provide full coverage of states(and there could be other availability states like I have mentioned in other Hawkular ML mails).
The use case I want to add is as a developer I want to test all availability states within a half hour (or whatever timeframe, but as everything waits on tests passing less is better) by pulling in certain site(s).
Ideas?
? Mike T
From mithomps at redhat.com Thu Apr 9 22:33:47 2015
From: mithomps at redhat.com (mike thompson)
Date: Thu, 9 Apr 2015 19:33:47 -0700
Subject: [Hawkular-dev] Ways to Test Availability Down?
In-Reply-To:
References:
Message-ID:
> On 9 Apr 2015, at 19:24, mike thompson wrote:
>
> I guess this question is mainly targeted to Hawkular QE. So all of my testing (especially on a dev box) shows availability 100% (as most sites will). So while I can mock this in code to show downtime and unknown. It appears that we need a consistent way to demonstrate up/down/unknown/whatever else. Is there a QE way to do this currently?
>
> I?m thinking a mock site that changes states every 5 or 10 minutes that is publicly available. This way we could all link our integration tests to this site to provide full coverage of states(and there could be other availability states like I have mentioned in other Hawkular ML mails).
>
> The use case I want to add is as a developer I want to test all availability states within a half hour (or whatever timeframe, but as everything waits on tests passing less is better) by pulling in certain site(s).
>
> Ideas?
This can be as simple as having a servlet that cycles through response codes 2xx, 404, 5xx in a predictable manner. (content is irrelevant on status codes matter so should be easy). This way we could expect http status codes to change every 5 minutes: '12:00' -> ?up?, 12:05 -> ?down?, ?12:10? -> ?unknown?. So that it changes in a predictable way.
Anyway, just an idea?
Obviously, if this idea is legit, it can expanded in may different ways down in the future.
>
> ? Mike T
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From jsanda at redhat.com Thu Apr 9 23:41:43 2015
From: jsanda at redhat.com (John Sanda)
Date: Thu, 9 Apr 2015 23:41:43 -0400
Subject: [Hawkular-dev] Ways to Test Availability Down?
In-Reply-To:
References:
Message-ID:
> On Apr 9, 2015, at 10:33 PM, mike thompson wrote:
>
>>
>> On 9 Apr 2015, at 19:24, mike thompson wrote:
>>
>> I guess this question is mainly targeted to Hawkular QE. So all of my testing (especially on a dev box) shows availability 100% (as most sites will). So while I can mock this in code to show downtime and unknown. It appears that we need a consistent way to demonstrate up/down/unknown/whatever else. Is there a QE way to do this currently?
>>
>> I?m thinking a mock site that changes states every 5 or 10 minutes that is publicly available. This way we could all link our integration tests to this site to provide full coverage of states(and there could be other availability states like I have mentioned in other Hawkular ML mails).
>>
>> The use case I want to add is as a developer I want to test all availability states within a half hour (or whatever timeframe, but as everything waits on tests passing less is better) by pulling in certain site(s).
>>
>> Ideas?
> This can be as simple as having a servlet that cycles through response codes 2xx, 404, 5xx in a predictable manner. (content is irrelevant on status codes matter so should be easy). This way we could expect http status codes to change every 5 minutes: '12:00' -> ?up?, 12:05 -> ?down?, ?12:10? -> ?unknown?. So that it changes in a predictable way.
>
> Anyway, just an idea?
>
> Obviously, if this idea is legit, it can expanded in may different ways down in the future.
I think there are a couple different concerns here. The first is simulating a resource that returns the various response codes. That should be easy enough. It is just a matter of starting up an HTTP server in a different thread that returns status codes in a known, predictable order. The second involving time is more challenging in my opinion. This was a big challenge for me when I was trying to write automated tests for aggregation in RHQ. The aggregation job ran hourly and computed hourly rollups, 6 hr rollups, and 24 hr rollups. Having tests run for 24 hrs in order to produce a 24 hr rollup was not practical. I encapsulated most of the date/time functionality in a service that could easily be stubbed or mocked. I also avoided calls like System.currentTimeMillis() or DateTime.now() in production code. Instead I used DateTimeService.currentTime() which I could easily override with test stubs. With these and other similar types of strategies, I think you should be able to test availability in milliseconds or seconds, not minutes.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150409/0010fb6d/attachment.html
From jsanda at redhat.com Fri Apr 10 00:11:19 2015
From: jsanda at redhat.com (John Sanda)
Date: Fri, 10 Apr 2015 00:11:19 -0400
Subject: [Hawkular-dev] Ways to Test Availability Down?
In-Reply-To:
References:
Message-ID: <33424691-7CE3-4B07-AF36-CBCE7D557B21@redhat.com>
> On Apr 9, 2015, at 11:41 PM, John Sanda wrote:
>
>>
>> On Apr 9, 2015, at 10:33 PM, mike thompson > wrote:
>>
>>>
>>> On 9 Apr 2015, at 19:24, mike thompson > wrote:
>>>
>>> I guess this question is mainly targeted to Hawkular QE. So all of my testing (especially on a dev box) shows availability 100% (as most sites will). So while I can mock this in code to show downtime and unknown. It appears that we need a consistent way to demonstrate up/down/unknown/whatever else. Is there a QE way to do this currently?
>>>
>>> I?m thinking a mock site that changes states every 5 or 10 minutes that is publicly available. This way we could all link our integration tests to this site to provide full coverage of states(and there could be other availability states like I have mentioned in other Hawkular ML mails).
>>>
>>> The use case I want to add is as a developer I want to test all availability states within a half hour (or whatever timeframe, but as everything waits on tests passing less is better) by pulling in certain site(s).
>>>
>>> Ideas?
>> This can be as simple as having a servlet that cycles through response codes 2xx, 404, 5xx in a predictable manner. (content is irrelevant on status codes matter so should be easy). This way we could expect http status codes to change every 5 minutes: '12:00' -> ?up?, 12:05 -> ?down?, ?12:10? -> ?unknown?. So that it changes in a predictable way.
>>
>> Anyway, just an idea?
>>
>> Obviously, if this idea is legit, it can expanded in may different ways down in the future.
>
> I think there are a couple different concerns here. The first is simulating a resource that returns the various response codes. That should be easy enough. It is just a matter of starting up an HTTP server in a different thread that returns status codes in a known, predictable order. The second involving time is more challenging in my opinion. This was a big challenge for me when I was trying to write automated tests for aggregation in RHQ. The aggregation job ran hourly and computed hourly rollups, 6 hr rollups, and 24 hr rollups. Having tests run for 24 hrs in order to produce a 24 hr rollup was not practical. I encapsulated most of the date/time functionality in a service that could easily be stubbed or mocked. I also avoided calls like System.currentTimeMillis() or DateTime.now() in production code. Instead I used DateTimeService.currentTime() which I could easily override with test stubs. With these and other similar types of strategies, I think you should be able to test availability in milliseconds or seconds, not minutes._______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
For an HTTP server you want something that is lightweight and easily embeddable, two criteria that most servlet containers do not satisfy. If tests are being written in Java, I would look at things like Jetty, Vert.x, Undertow, or RxNetty if you want to go the reactive route. And if tests aren?t being written in Java but even staying on the JVM, you might have even more options. With Clojure for example, http-kit has no dependencies other than the core Clojure runtime.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150410/f22f95e3/attachment-0001.html
From mfoley at redhat.com Fri Apr 10 08:28:04 2015
From: mfoley at redhat.com (Michael Foley)
Date: Fri, 10 Apr 2015 08:28:04 -0400 (EDT)
Subject: [Hawkular-dev] Ways to Test Availability Down?
In-Reply-To:
References:
Message-ID: <504366061.13495729.1428668884779.JavaMail.zimbra@redhat.com>
Hi Michael,
This is a great question ... thank you for raising it.
So you are asking about a mock resource ... or test fixture ... to facilitate integration testing of Hawkular? I think that is a great idea. In fact, I can envision a small portfolio or quiver of mock resources or test fixutres:
* availability up
* availability down
* availability unknown
* generating metrics low volume
* generating metrics high volume
* etc ...
* to cover absolutely every primary use-case & resource that Hawkular would me monitoring
I agree if we had a set, quiver, portfolio, or inventory of test fixtures it would facilitate integration testing.
Next question ... might be "where"?
* on the JON QE Bladecenter ...
* in a private Docker registry
* developers and QE could do a 'docker pull' and get whatever fixture they needed
* this would de-couple the fixtures from the bladecenter ...and allow the test fixtures to be manipulated more easily by the developers and QE
*
in a public Docker registry
* this would decouple from the bladecenter
* allow developers in the community to use these test fixtures
Something I saw recently ... is this thing called Arqullian Cube ... which can be used to control the lifecycle of Docker containers as part of integration tests. Some info here ... --->> http://blog.arungupta.me/run-javaee-tests-wildfly-docker-arquillian-cube/ So with this approach possibly ... integration tests could be written where test fixtures for availability up/down/unknown are programmatically spun up in Docker and automated integration tests run.
Also ... another possible approach ... is to programmatically control these test fixtures in our Bladecenter via a REST API. So we/QE built a REST API to wrap the RHEV/Foreman infrastructure in our Bladecenter. So anything that can be done thru the UI can be done programmatically. So you can imagine an integration test for availability... where in @BeforeClass ... the automated test makes a REST call to spin up ...say ... an availability unknown test fixture ...and some tests run.
Let's please talk more about this. I would like to learn more about your mock site idea where the availability state changes on a schedule. I'll set up a Bluejeans time and an etherpad where we can discuss this ...requirements, approaches, use-cases, etc ....
Regards,
Michael Foley
JON and Lumbini QE Supervisor
----- Original Message -----
From: "mike thompson"
To: "Discussions around Hawkular development"
Cc: "Michael Foley" , "Armine Hovsepyan"
Sent: Thursday, April 9, 2015 10:24:45 PM
Subject: Ways to Test Availability Down?
I guess this question is mainly targeted to Hawkular QE. So all of my testing (especially on a dev box) shows availability 100% (as most sites will). So while I can mock this in code to show downtime and unknown. It appears that we need a consistent way to demonstrate up/down/unknown/whatever else. Is there a QE way to do this currently?
I?m thinking a mock site that changes states every 5 or 10 minutes that is publicly available. This way we could all link our integration tests to this site to provide full coverage of states(and there could be other availability states like I have mentioned in other Hawkular ML mails).
The use case I want to add is as a developer I want to test all availability states within a half hour (or whatever timeframe, but as everything waits on tests passing less is better) by pulling in certain site(s).
Ideas?
? Mike T
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150410/fdc0ce8b/attachment.html
From mazz at redhat.com Sat Apr 11 00:08:49 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Sat, 11 Apr 2015 00:08:49 -0400 (EDT)
Subject: [Hawkular-dev] hawkular monitor agent now sending avail to
h-metrics rest
In-Reply-To: <1333740959.12655975.1428724944639.JavaMail.zimbra@redhat.com>
Message-ID: <224516634.12656183.1428725329306.JavaMail.zimbra@redhat.com>
I have the hawkular monitor agent sending avail data successfully to h-metrics over its REST interface. I cannot get the bus message to flow successfully - I'm sure the JSON just isn't right (getting a NPE on the consumer end). Have I mentioned we need some strongly-typed Java client API jars? :)
To see it work, build hawkular-agent repo: https://github.com/hawkular/hawkular-agent and install the subsystem in a wildfly instance. I have been installing it directly into a kettle instance like this:
mvn -Dorg.hawkular.wildfly.home=/source/hawkular/kettle/target/wildfly-8.2.0.Final/ clean install wildfly-extension:deploy
You define what metrics to collect and what availability to check via standalone.xml config of the agent subsystem. See this file as an example:
https://github.com/hawkular/hawkular-agent/blob/master/hawkular-wildfly-monitor/src/main/assembly/subsystem.xml
Next up, integrating JMX metrics/avail. (well, I guess I should get the avail bus message working first - anyone that can tell me what the avail bus message should look like, fill me in please).
From tsegismo at redhat.com Mon Apr 13 04:44:19 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Mon, 13 Apr 2015 10:44:19 +0200
Subject: [Hawkular-dev] updated design doc for computing aggregate
metrics
In-Reply-To:
References:
Message-ID: <552B81E3.3000508@redhat.com>
I've started to read the doc but I can't comment it. GDoc says it's
read-only.
Le 01/04/2015 03:36, John Sanda a ?crit :
> I have updated update the design doc[1] for aggregate metrics to include a brief summary of a few different approaches in terms of overall architecture. I have also included details on how work can be distributed and coordinated among instances of hawkular-metrics. The changes I am proposing will also have an impact on the REST API as has been discussed in some other recent threads. Thanks in advance for any feedback.
>
> [1] http://bit.ly/1BAfF8d
>
> - John
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From jsanda at redhat.com Mon Apr 13 07:25:47 2015
From: jsanda at redhat.com (John Sanda)
Date: Mon, 13 Apr 2015 07:25:47 -0400
Subject: [Hawkular-dev] updated design doc for computing aggregate
metrics
In-Reply-To: <552B81E3.3000508@redhat.com>
References:
<552B81E3.3000508@redhat.com>
Message-ID: <533B98EB-CC66-4F2E-832B-1BD7478187D9@redhat.com>
Maybe I pasted the wrong link. Try this one.
https://docs.google.com/document/d/1vQkj_rR_wUHwGnalDij8XXGKXXPTm9El3gQoEA3NCtU/edit?usp=sharing
> On Apr 13, 2015, at 4:44 AM, Thomas Segismont wrote:
>
> I've started to read the doc but I can't comment it. GDoc says it's
> read-only.
>
> Le 01/04/2015 03:36, John Sanda a ?crit :
>> I have updated update the design doc[1] for aggregate metrics to include a brief summary of a few different approaches in terms of overall architecture. I have also included details on how work can be distributed and coordinated among instances of hawkular-metrics. The changes I am proposing will also have an impact on the REST API as has been discussed in some other recent threads. Thanks in advance for any feedback.
>>
>> [1] http://bit.ly/1BAfF8d
>>
>> - John
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150413/13f545b2/attachment.html
From crobson at redhat.com Mon Apr 13 08:42:24 2015
From: crobson at redhat.com (Catherine Robson)
Date: Mon, 13 Apr 2015 08:42:24 -0400
Subject: [Hawkular-dev] UX Meeting today - CANCELED
Message-ID: <552BB9B0.9000205@redhat.com>
Hi all -
Due to the REST API meeting and some other conflicts, we'd like to
cancel the UX meeting today. Let's plan to reconnect Thursday. Feel
free to reach out if you need anything in the meantime.
- Catherine
--
Catherine Robson
User Experience Design
Red Hat JBoss Middleware
c: 978-944-3825
From tsegismo at redhat.com Mon Apr 13 08:49:20 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Mon, 13 Apr 2015 14:49:20 +0200
Subject: [Hawkular-dev] updated design doc for computing aggregate
metrics
In-Reply-To: <533B98EB-CC66-4F2E-832B-1BD7478187D9@redhat.com>
References: <552B81E3.3000508@redhat.com>
<533B98EB-CC66-4F2E-832B-1BD7478187D9@redhat.com>
Message-ID: <552BBB50.8060000@redhat.com>
Le 13/04/2015 13:25, John Sanda a ?crit :
> Maybe I pasted the wrong link. Try this one.
>
> https://docs.google.com/document/d/1vQkj_rR_wUHwGnalDij8XXGKXXPTm9El3gQoEA3NCtU/edit?usp=sharing
Yep, this one works.
>
>> On Apr 13, 2015, at 4:44 AM, Thomas Segismont > > wrote:
>>
>> I've started to read the doc but I can't comment it. GDoc says it's
>> read-only.
>>
>> Le 01/04/2015 03:36, John Sanda a ?crit :
>>> I have updated update the design doc[1] for aggregate metrics to
>>> include a brief summary of a few different approaches in terms of
>>> overall architecture. I have also included details on how work can be
>>> distributed and coordinated among instances of hawkular-metrics. The
>>> changes I am proposing will also have an impact on the REST API as
>>> has been discussed in some other recent threads. Thanks in advance
>>> for any feedback.
>>>
>>> [1] http://bit.ly/1BAfF8d
>>>
>>> - John
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>>
>>
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From theute at redhat.com Mon Apr 13 09:28:53 2015
From: theute at redhat.com (Thomas Heute)
Date: Mon, 13 Apr 2015 09:28:53 -0400 (EDT)
Subject: [Hawkular-dev] UX Meeting today - CANCELED
In-Reply-To: <552BB9B0.9000205@redhat.com>
References: <552BB9B0.9000205@redhat.com>
Message-ID: <892245367.14353042.1428931733902.JavaMail.zimbra@redhat.com>
Works for me
----- Original Message -----
From: "Catherine Robson"
To: "Thomas Heute" , "mike thompson" , "Liz Clayton" , "Gabriel Cardoso"
Cc: hawkular-dev at lists.jboss.org
Sent: Monday, April 13, 2015 2:42:24 PM
Subject: UX Meeting today - CANCELED
Hi all -
Due to the REST API meeting and some other conflicts, we'd like to
cancel the UX meeting today. Let's plan to reconnect Thursday. Feel
free to reach out if you need anything in the meantime.
- Catherine
--
Catherine Robson
User Experience Design
Red Hat JBoss Middleware
c: 978-944-3825
From snegrea at redhat.com Mon Apr 13 09:49:01 2015
From: snegrea at redhat.com (Stefan Negrea)
Date: Mon, 13 Apr 2015 09:49:01 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular Metrics - REST API Remake
Message-ID: <1390849748.18348127.1428932941134.JavaMail.zimbra@redhat.com>
The following meeting has been modified:
Subject: Hawkular Metrics - REST API Remake
Organizer: "Stefan Negrea"
Location: Conf - 398-055-2127 & BlueJeans
Time: Monday, April 13, 2015, 9:00:00 AM - 10:00:00 AM GMT -06:00 US/Canada Central
Invitees: jsanda at redhat.com; hawkular-dev at lists.jboss.org; lclayton at redhat.com; tsegismo at redhat.com
*~*~*~*~*~*~*~*~*~*
Hello Everybody,
I would like to schedule a meeting to discuss a proposal for changes to Hawkular Metrics REST API. The agenda also includes recent proposals from the channel and mailing list around tags and raw vs aggregated metrics from an end-point perspective.
Here is a preliminary simple spreadsheet for this remake:
https://docs.google.com/a/redhat.com/spreadsheets/d/1CQBfAenNlWbQENoK_Rms9pHooK2e7yGf15bm5avaN9A/edit#gid=329319157
Etherpad:
http://jbosson.etherpad.corp.redhat.com/250
Thank you,
Stefan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/calendar
Size: 2391 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150413/7fabccb8/attachment.bin
From jshaughn at redhat.com Mon Apr 13 17:11:19 2015
From: jshaughn at redhat.com (Jay Shaughnessy)
Date: Mon, 13 Apr 2015 17:11:19 -0400
Subject: [Hawkular-dev] Hawkular-113
Message-ID: <552C30F7.9060802@redhat.com>
Just a note about a workaround pushed to master for
https://issues.jboss.org/browse/HAWKULAR-113. The root cause may or
may not be the same as for HWKMETRICS-47, it's not clear, but the
behavior is similar. After a lot of research we can see that invoking
concurrent, asynchronous EJB methods, that perform rest posts to
metrics, can hang the threads in WFly 8.2 (used by Kettle).
So, beware the @Asynchronous annotation on pooled EJBs, if the method is
performing posts. With no obvious fix, the only choice I could see was
to workaround the issue, and make the method synchronous.
This was the issue where if you were to add multiple urls to Hawkular,
you would quickly end up with all URLs reporting DOWN and basically the
application was locked up, with a bunch of hanging threads.
Jay
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150413/2658babd/attachment.html
From jkremser at redhat.com Mon Apr 13 19:41:59 2015
From: jkremser at redhat.com (Jiri Kremser)
Date: Mon, 13 Apr 2015 19:41:59 -0400 (EDT)
Subject: [Hawkular-dev] migration to the new inventory
In-Reply-To: <182570064.10830927.1428968274957.JavaMail.zimbra@redhat.com>
Message-ID: <1233525955.10831154.1428968519392.JavaMail.zimbra@redhat.com>
Hi,
we've merged all the pull requests so the new inventory is there. There are still some minor issues though. In UI you may see couple of errors, but the pinger seems to be working after all. Everything should be buildable of course.
Hopefully I'll resolve the rest of the issues tomorrow,
jk
From jsanda at redhat.com Mon Apr 13 21:22:12 2015
From: jsanda at redhat.com (John Sanda)
Date: Mon, 13 Apr 2015 21:22:12 -0400
Subject: [Hawkular-dev] Jira work log
Message-ID: <777CE834-0195-4DC9-B24E-4DD1C7CF2383@redhat.com>
I see that there is a work log tab for tickets. Is there a way to set it up so that when commits are pushed, the ticket can automatically be updated? I am pushing commits to my personal repo, and it would be nice for the ticket to indicate this so that it is easy to see where work is being done. I could just add a comment with the info, but I figured it would be worth checking to see if there is an automagic way for the ticket to be updated with that info.
- John
From hrupp at redhat.com Tue Apr 14 08:26:15 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Tue, 14 Apr 2015 14:26:15 +0200
Subject: [Hawkular-dev] Jira work log
In-Reply-To: <777CE834-0195-4DC9-B24E-4DD1C7CF2383@redhat.com>
References: <777CE834-0195-4DC9-B24E-4DD1C7CF2383@redhat.com>
Message-ID: <349BE2C4-AB90-4281-AAE9-5A7F25B817E0@redhat.com>
On 14 Apr 2015, at 3:22, John Sanda wrote:
> I see that there is a work log tab for tickets. Is there a way to set
> it up so that when commits are pushed, the ticket can automatically be
> updated? I am pushing commits to my personal repo, and it would be
GitHub provides web-hooks and services for this purpose.
The service that is available is pretty odd. And I am not even
convinced that it is meant for this purpose.
Perhaps someone has solved that problem already.
I am also not convinced that a webhook/service on organization
org hawkular/* level would apply to your personal clones of the
hawkular/* repos.
What should be doable though, is that in the IDE you set up Jira
as a context provider and have the IDE push comments to Jira
when you push commits. Inside IJ, this is hidden under
Tools->Task&Contexts. I am unfortunately lacking information
about the correct setup for the JBoss Jira instance.
From mazz at redhat.com Tue Apr 14 10:59:56 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Tue, 14 Apr 2015 10:59:56 -0400 (EDT)
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <1854657651.14213676.1429023317733.JavaMail.zimbra@redhat.com>
Message-ID: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com>
Can someone describe to me what needs to be done to see the Hawkular-Metrics UI (the explorer)? If I store metric and avail data into kettle via the Metrics REST API, I can't use the kettle UI because it is geared to the pinger.
Is there a explorer UI that comes with kettle outside of the main hawkular UI? If not, is there something I have to do to enable that explorer webapp?
From hrupp at redhat.com Tue Apr 14 12:12:19 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Tue, 14 Apr 2015 18:12:19 +0200
Subject: [Hawkular-dev] Availability
In-Reply-To:
References: <5B9D3EC5-2BBB-4DBA-B0B6-C07AF61CEAA4@redhat.com>
<1997792.nRBWP4ZPt4@localhost.localdomain>
<920594E5-9EF1-4C9D-B1C3-D9C1C42184AB@redhat.com>
<8CE3BD16-97AD-44B9-9B04-F2EBB41AEB46@redhat.com>
Message-ID: <6D94D3E6-3441-44A9-AF69-B5B9596317BF@redhat.com>
On 20 Mar 2015, at 17:42, John Sanda wrote:
> Great point about multiple resources. I have to therefore slightly
> refine my previous statement. I think that the functionality belongs
> on the agent. As I said in the agent discussions, I think that there
> are use cases for different types of agents - embedded, c-located, and
> remote. For the example of monitoring availability for a resource (or
> resources) spanning several machines, I think it should be the job of
> a remote agent. Maybe that remote agent is running inside the hawkular
> server. I am not sure. They key though is that the approach is
> consistent in terms of who is applying that availability function.
I have been talking about "cheap alert pre-computation" on the
agent in the past, and this certainly makes sense. But it also
opens a can of worms^w complexity, that we should not tackle
in the first place.
The other question is what do we do with raw-avail-data-sources,
that are not delivered by an agent we write, but e.g. via curl?
For now I propose to do the computation on the server side.
Attached image illustrates this. All incoming "raw" data (that should
be used for alerting / computed resource state) is
* stored in e.g. Hawkular-Metrics
* run through the function that e.g. determines that a http status code
500 means DOWN
or a duration > 300ms means WARN
* the result of the function is then also stored and forwarded to
alerting
and other users.
We would of course need to provide default-functions, but with the
possibility to
fine-tune them.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: avail_function.png
Type: image/png
Size: 62163 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150414/1783579c/attachment-0001.png
From mithomps at redhat.com Tue Apr 14 14:13:40 2015
From: mithomps at redhat.com (mike thompson)
Date: Tue, 14 Apr 2015 11:13:40 -0700
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com>
References: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com>
Message-ID: <6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com>
> On 14 Apr 2015, at 07:59, John Mazzitelli wrote:
>
> Can someone describe to me what needs to be done to see the Hawkular-Metrics UI (the explorer)? If I store metric and avail data into kettle via the Metrics REST API, I can't use the kettle UI because it is geared to the pinger.
>
> Is there a explorer UI that comes with kettle outside of the main hawkular UI? If not, is there something I have to do to enable that explorer webapp?
A month or so ago I would have said "The explorer gets deployed with hawkular-metrics so just http://localhost:8080/explorer ?.
However, there is no start.sh now, and deployment is deferred to Hawkular kettle. So there is a javascript app with no war for deployment. Also the REST urls have changed and will change again soon.
In short, it looks the explorer needs a considerable amount of attention to make it work with latest hawkular kettle. This effort will need to be prioritised with the normal hawkular UI work.
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150414/5eb04883/attachment.html
From mazz at redhat.com Tue Apr 14 14:32:33 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Tue, 14 Apr 2015 14:32:33 -0400 (EDT)
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com>
References: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com>
<6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com>
Message-ID: <1378513309.14322464.1429036353190.JavaMail.zimbra@redhat.com>
How can I request it receive higher priority? :)
If we are going to start allowing external feeds and agents to send in metric/avail data, we are going to need to have at least a minimal UI to just see the data (even if its a little HTML with the data in it). Anything to at least verify the data is getting in there and is what we expect it to be.
Right now, AFAIK, we are limited to seeing metrics and avail for URL pings... that is going to get boring after a while :) If we had a generic metrics UI, we'd be able to see data for any subsystem in Wildfly.
----- Original Message -----
>
> > On 14 Apr 2015, at 07:59, John Mazzitelli wrote:
> >
> > Can someone describe to me what needs to be done to see the
> > Hawkular-Metrics UI (the explorer)? If I store metric and avail data into
> > kettle via the Metrics REST API, I can't use the kettle UI because it is
> > geared to the pinger.
> >
> > Is there a explorer UI that comes with kettle outside of the main hawkular
> > UI? If not, is there something I have to do to enable that explorer
> > webapp?
> A month or so ago I would have said "The explorer gets deployed with
> hawkular-metrics so just http://localhost:8080/explorer
> ?.
>
> However, there is no start.sh now, and deployment is deferred to Hawkular
> kettle. So there is a javascript app with no war for deployment. Also the
> REST urls have changed and will change again soon.
>
> In short, it looks the explorer needs a considerable amount of attention to
> make it work with latest hawkular kettle. This effort will need to be
> prioritised with the normal hawkular UI work.
>
>
>
>
> > _______________________________________________
> > hawkular-dev mailing list
> > hawkular-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
>
From tsegismo at redhat.com Tue Apr 14 16:19:29 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Tue, 14 Apr 2015 22:19:29 +0200
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <1378513309.14322464.1429036353190.JavaMail.zimbra@redhat.com>
References: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com> <6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com>
<1378513309.14322464.1429036353190.JavaMail.zimbra@redhat.com>
Message-ID: <552D7651.3020302@redhat.com>
I'd be happy to share efforts to build a Grafana driver for Hawkular
Metrics.
Le 14/04/2015 20:32, John Mazzitelli a ?crit :
> How can I request it receive higher priority? :)
>
> If we are going to start allowing external feeds and agents to send in metric/avail data, we are going to need to have at least a minimal UI to just see the data (even if its a little HTML with the data in it). Anything to at least verify the data is getting in there and is what we expect it to be.
>
> Right now, AFAIK, we are limited to seeing metrics and avail for URL pings... that is going to get boring after a while :) If we had a generic metrics UI, we'd be able to see data for any subsystem in Wildfly.
>
> ----- Original Message -----
>>
>>> On 14 Apr 2015, at 07:59, John Mazzitelli wrote:
>>>
>>> Can someone describe to me what needs to be done to see the
>>> Hawkular-Metrics UI (the explorer)? If I store metric and avail data into
>>> kettle via the Metrics REST API, I can't use the kettle UI because it is
>>> geared to the pinger.
>>>
>>> Is there a explorer UI that comes with kettle outside of the main hawkular
>>> UI? If not, is there something I have to do to enable that explorer
>>> webapp?
>> A month or so ago I would have said "The explorer gets deployed with
>> hawkular-metrics so just http://localhost:8080/explorer
>> ?.
>>
>> However, there is no start.sh now, and deployment is deferred to Hawkular
>> kettle. So there is a javascript app with no war for deployment. Also the
>> REST urls have changed and will change again soon.
>>
>> In short, it looks the explorer needs a considerable amount of attention to
>> make it work with latest hawkular kettle. This effort will need to be
>> prioritised with the normal hawkular UI work.
>>
>>
>>
>>
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
>>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From miburman at redhat.com Tue Apr 14 17:47:08 2015
From: miburman at redhat.com (Michael Burman)
Date: Tue, 14 Apr 2015 17:47:08 -0400 (EDT)
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <552D7651.3020302@redhat.com>
References: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com>
<6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com>
<1378513309.14322464.1429036353190.JavaMail.zimbra@redhat.com>
<552D7651.3020302@redhat.com>
Message-ID: <2028119851.17389303.1429048028688.JavaMail.zimbra@redhat.com>
Hi,
I'd vouch for this option as well, it would be very useful in the future also.
- Micke
----- Original Message -----
From: "Thomas Segismont"
To: hawkular-dev at lists.jboss.org
Sent: Tuesday, April 14, 2015 11:19:29 PM
Subject: Re: [Hawkular-dev] metrics explorer UI
I'd be happy to share efforts to build a Grafana driver for Hawkular
Metrics.
Le 14/04/2015 20:32, John Mazzitelli a ?crit :
> How can I request it receive higher priority? :)
>
> If we are going to start allowing external feeds and agents to send in metric/avail data, we are going to need to have at least a minimal UI to just see the data (even if its a little HTML with the data in it). Anything to at least verify the data is getting in there and is what we expect it to be.
>
> Right now, AFAIK, we are limited to seeing metrics and avail for URL pings... that is going to get boring after a while :) If we had a generic metrics UI, we'd be able to see data for any subsystem in Wildfly.
>
> ----- Original Message -----
>>
>>> On 14 Apr 2015, at 07:59, John Mazzitelli wrote:
>>>
>>> Can someone describe to me what needs to be done to see the
>>> Hawkular-Metrics UI (the explorer)? If I store metric and avail data into
>>> kettle via the Metrics REST API, I can't use the kettle UI because it is
>>> geared to the pinger.
>>>
>>> Is there a explorer UI that comes with kettle outside of the main hawkular
>>> UI? If not, is there something I have to do to enable that explorer
>>> webapp?
>> A month or so ago I would have said "The explorer gets deployed with
>> hawkular-metrics so just http://localhost:8080/explorer
>> ?.
>>
>> However, there is no start.sh now, and deployment is deferred to Hawkular
>> kettle. So there is a javascript app with no war for deployment. Also the
>> REST urls have changed and will change again soon.
>>
>> In short, it looks the explorer needs a considerable amount of attention to
>> make it work with latest hawkular kettle. This effort will need to be
>> prioritised with the normal hawkular UI work.
>>
>>
>>
>>
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
>>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
_______________________________________________
hawkular-dev mailing list
hawkular-dev at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hawkular-dev
From miburman at redhat.com Tue Apr 14 17:52:13 2015
From: miburman at redhat.com (Michael Burman)
Date: Tue, 14 Apr 2015 17:52:13 -0400 (EDT)
Subject: [Hawkular-dev] Stronger typing of metrics
In-Reply-To: <1630650056.17389606.1429048067427.JavaMail.zimbra@redhat.com>
Message-ID: <689825787.17391240.1429048333625.JavaMail.zimbra@redhat.com>
Hi,
With our metric definitions, I'd like to see stronger definition of what sort of data we're storing and how it could be processed in the future. And with this I mean the same sort of stuff we had in the RHQ, such as "cumulative / gauge / trendsup / etc", so that we could give better post processing capabilities when fetching the data such as transforming the data between deltas and cumulative (depending on the user needs).
While this could definitely be done with the tags, using such as "units", "type", we don't have any defined names for these options that we could depend on later. I guess this goes to the other tags discussion also, but I assume our tags are designed to work for searching capabilities as well as for definitions?
- Micke
From jsanda at redhat.com Tue Apr 14 20:24:52 2015
From: jsanda at redhat.com (John Sanda)
Date: Tue, 14 Apr 2015 20:24:52 -0400
Subject: [Hawkular-dev] Stronger typing of metrics
In-Reply-To: <689825787.17391240.1429048333625.JavaMail.zimbra@redhat.com>
References: <689825787.17391240.1429048333625.JavaMail.zimbra@redhat.com>
Message-ID: <4B451BE3-CB61-4249-8042-660AF3CA406F@redhat.com>
We will be providing stronger typing with the changes for pre-computed aggregate metrics. We will be supporting gauges and counters and possibly other types as well. This will be reflected in the REST API. The changes were discussed quite a bit in the meeting that Stefan held on Monday.
> On Apr 14, 2015, at 5:52 PM, Michael Burman wrote:
>
> Hi,
>
> With our metric definitions, I'd like to see stronger definition of what sort of data we're storing and how it could be processed in the future. And with this I mean the same sort of stuff we had in the RHQ, such as "cumulative / gauge / trendsup / etc", so that we could give better post processing capabilities when fetching the data such as transforming the data between deltas and cumulative (depending on the user needs).
>
> While this could definitely be done with the tags, using such as "units", "type", we don't have any defined names for these options that we could depend on later. I guess this goes to the other tags discussion also, but I assume our tags are designed to work for searching capabilities as well as for definitions?
>
> - Micke
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From hrupp at redhat.com Wed Apr 15 02:55:52 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Wed, 15 Apr 2015 08:55:52 +0200
Subject: [Hawkular-dev] Another perspective on Availability
In-Reply-To: <54221624-5F4B-4CD7-9794-05E7E928A72E@redhat.com>
References: <54221624-5F4B-4CD7-9794-05E7E928A72E@redhat.com>
Message-ID: <1228CB96-EB73-40CA-B0CE-B00ACBEF8609@redhat.com>
On 7 Apr 2015, at 19:40, mike thompson wrote:
> I found this view of availability interesting from open source
> monitoring project: CachetHQ(https://cachethq.io/
> )
>
> Perhaps we might want to incorporate these ideas of component status
> versus incident status.
I think this is another example of computed resource state.
Where some function analysis incoming data and then computes
those.
> Operational
This probably corresponds to "UP" in out terms.
> Performance Issues
>
> The component is experiencing some slowness.
>
> 3
>
> Partial Outage
Both are sort of "WARN", that we do not directly have on the
radar for a single resource yet, but more in the sense of mixed
state. I agree, that it could be good to give the admin an idea
of some sub-variants of "WARN" to convey more information
directly in the state.
> Incident Status
This is completely orthogonal to the above. As e.g. "scheduled" sort of
"overrides" in the sense that we know that a resource may be down of
affected during maintenance.
> Scheduled
=> Maintenance mode
> Investigating
>
> You have reports of a problem and you're currently looking into them.
Sub-division of "acknowledged"
>
> 2
>
> Identified
>
> You've found the issue and you're working on a fix.
Another sub-variant of acknowledged
> 3
>
> Watching
>
> You've since deployed a fix and you're currently watching the
> situation.
Dito to me
> Fixed
>
> The fix has worked, you're happy to close the incident.
This is probably more like "closed" -- and could be even triggered by
recovery alerts (forgot how we call them now - safety mode?)
From hrupp at redhat.com Wed Apr 15 03:00:21 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Wed, 15 Apr 2015 09:00:21 +0200
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <552D7651.3020302@redhat.com>
References: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com>
<6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com>
<1378513309.14322464.1429036353190.JavaMail.zimbra@redhat.com>
<552D7651.3020302@redhat.com>
Message-ID: <81B264C1-0FC7-4D1D-AD5B-85F50DADF0B3@redhat.com>
On 14 Apr 2015, at 22:19, Thomas Segismont wrote:
> I'd be happy to share efforts to build a Grafana driver for Hawkular
> Metrics.
Why not use the influx endpoint as described here
http://pilhuhn.blogspot.de/2014/06/rhq-metrics-and-grafana.html ?
From tsegismo at redhat.com Wed Apr 15 03:40:34 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Wed, 15 Apr 2015 09:40:34 +0200
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <81B264C1-0FC7-4D1D-AD5B-85F50DADF0B3@redhat.com>
References: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com> <6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com> <1378513309.14322464.1429036353190.JavaMail.zimbra@redhat.com> <552D7651.3020302@redhat.com>
<81B264C1-0FC7-4D1D-AD5B-85F50DADF0B3@redhat.com>
Message-ID: <552E15F2.4000906@redhat.com>
Le 15/04/2015 09:00, Heiko W.Rupp a ?crit :
> On 14 Apr 2015, at 22:19, Thomas Segismont wrote:
>
>> I'd be happy to share efforts to build a Grafana driver for Hawkular
>> Metrics.
>
> Why not use the influx endpoint as described here
> http://pilhuhn.blogspot.de/2014/06/rhq-metrics-and-grafana.html ?
Because I don't think we can maintain it in the future:
http://lists.jboss.org/pipermail/hawkular-dev/2015-March/000594.html
From tsegismo at redhat.com Wed Apr 15 03:58:14 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Wed, 15 Apr 2015 09:58:14 +0200
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <552E15F2.4000906@redhat.com>
References: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com> <6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com> <1378513309.14322464.1429036353190.JavaMail.zimbra@redhat.com> <552D7651.3020302@redhat.com>
<81B264C1-0FC7-4D1D-AD5B-85F50DADF0B3@redhat.com>
<552E15F2.4000906@redhat.com>
Message-ID: <552E1A16.7070804@redhat.com>
Le 15/04/2015 09:40, Thomas Segismont a ?crit :
> Le 15/04/2015 09:00, Heiko W.Rupp a ?crit :
>> On 14 Apr 2015, at 22:19, Thomas Segismont wrote:
>>
>>> I'd be happy to share efforts to build a Grafana driver for Hawkular
>>> Metrics.
>>
>> Why not use the influx endpoint as described here
>> http://pilhuhn.blogspot.de/2014/06/rhq-metrics-and-grafana.html ?
>
> Because I don't think we can maintain it in the future:
> http://lists.jboss.org/pipermail/hawkular-dev/2015-March/000594.html
I realize I haven't answered correctly.
Mazz, if you're working with a master build you can use the Influx
endpoint with Grafana.
When metric types (gauges and counters) will land in master, I'm not
sure it will still work.
From hrupp at redhat.com Wed Apr 15 04:28:10 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Wed, 15 Apr 2015 10:28:10 +0200
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <552E15F2.4000906@redhat.com>
References: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com>
<6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com>
<1378513309.14322464.1429036353190.JavaMail.zimbra@redhat.com>
<552D7651.3020302@redhat.com>
<81B264C1-0FC7-4D1D-AD5B-85F50DADF0B3@redhat.com>
<552E15F2.4000906@redhat.com>
Message-ID: <90E58160-C7D0-4AE2-B9E5-A2D22B6E7002@redhat.com>
On 15 Apr 2015, at 9:40, Thomas Segismont wrote:
> Le 15/04/2015 09:00, Heiko W.Rupp a ?crit :
>> On 14 Apr 2015, at 22:19, Thomas Segismont wrote:
>>
>>> I'd be happy to share efforts to build a Grafana driver for Hawkular
>>> Metrics.
>>
>> Why not use the influx endpoint as described here
>> http://pilhuhn.blogspot.de/2014/06/rhq-metrics-and-grafana.html ?
>
> Because I don't think we can maintain it in the future:
> http://lists.jboss.org/pipermail/hawkular-dev/2015-March/000594.html
Do we have any idea of the effort to create *and* maintain such a Grafana
driver? And what is the likeliness that it may be accepted into Grafana?
I think it is sad to see this (current) integration go.
From tsegismo at redhat.com Wed Apr 15 05:45:06 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Wed, 15 Apr 2015 11:45:06 +0200
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <90E58160-C7D0-4AE2-B9E5-A2D22B6E7002@redhat.com>
References: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com> <6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com> <1378513309.14322464.1429036353190.JavaMail.zimbra@redhat.com> <552D7651.3020302@redhat.com> <81B264C1-0FC7-4D1D-AD5B-85F50DADF0B3@redhat.com> <552E15F2.4000906@redhat.com>
<90E58160-C7D0-4AE2-B9E5-A2D22B6E7002@redhat.com>
Message-ID: <552E3322.8020606@redhat.com>
Le 15/04/2015 10:28, Heiko W.Rupp a ?crit :
> On 15 Apr 2015, at 9:40, Thomas Segismont wrote:
>
>> Le 15/04/2015 09:00, Heiko W.Rupp a ?crit :
>>> On 14 Apr 2015, at 22:19, Thomas Segismont wrote:
>>>
>>>> I'd be happy to share efforts to build a Grafana driver for Hawkular
>>>> Metrics.
>>>
>>> Why not use the influx endpoint as described here
>>> http://pilhuhn.blogspot.de/2014/06/rhq-metrics-and-grafana.html ?
>>
>> Because I don't think we can maintain it in the future:
>> http://lists.jboss.org/pipermail/hawkular-dev/2015-March/000594.html
>
> Do we have any idea of the effort to create *and* maintain such a Grafana
No idea, I haven't looked at it yet.
> driver? And what is the likeliness that it may be accepted into Grafana?
I couldn't say. We need to ask them.
>
> I think it is sad to see this (current) integration go.
It wouldn't go away strictly speaking. But it would work with gauges only.
From theute at redhat.com Wed Apr 15 07:54:47 2015
From: theute at redhat.com (Thomas Heute)
Date: Wed, 15 Apr 2015 13:54:47 +0200
Subject: [Hawkular-dev] Business app/services representation in Inventory
In-Reply-To: <1735048842.6798059.1427806415238.JavaMail.zimbra@redhat.com>
References: <647407669.6594118.1427791073691.JavaMail.zimbra@redhat.com> <1837689158.7959369.1427805015434.JavaMail.zimbra@redhat.com>
<1735048842.6798059.1427806415238.JavaMail.zimbra@redhat.com>
Message-ID: <552E5187.5000203@redhat.com>
Catching up on old emails...
On 03/31/2015 02:53 PM, Gary Brown wrote:
> Ok thanks for the info.
>
> Just to be clear - so as components are dynamically deployed/undeployed from a server, these should be reflected in the Inventory - so it represents a current view of the environment being managed?
This is an important point.
When a resource in deployed / undeployed / deployed (or redeployed), you
want to know if it's there but you also want to keep historical data
(say response time history before the redeployment).
It also has an impact on alerts, if an app is undeployed legitimately
you don't want to receive 'non-available' alerts but you want them back
once the app is deployed...
> Are there any plans to represent docker images in Inventory, associated with the servers that have been launched using them?
It should become available in the UI, but will it come directly from
Kubernetes (when available) ? Synched with Kubernetes ? I don't know,
we'll tackle this later.
Thomas
>
> Regards
> Gary
>
> ----- Original Message -----
>> ----- Original Message -----
>>> From: "Gary Brown"
>>> To: "Discussions around Hawkular development"
>>>
>>> Sent: Tuesday, 31 March, 2015 10:37:53 AM
>>> Subject: [Hawkular-dev] Business app/services representation in Inventory
>>>
>>> Hi
>>>
>>> Before going too far down the BTM road, I just wanted to confirm whether or
>>> not we want the business app, their components services, and their
>>> relationships to IT resources they use, stored in Hawkular Inventory?
>>>
>>
>> Inventory definitely is the right place to store such information.
>>
>>> An alternative approach would be to derive the structure and relationships
>>> dynamically from the business transaction instance information.
>>>
>>
>> Deriving the structure and relationships dynamically is basically
>> a "discovery" as called in ye olde RHQ days. That is a capability
>> which we'd very much like to keep.
>>
>> The new inventory is (so far) unaware of special "discovery" step -
>> everything
>> from resource creation to establishing relationships is done through 1 public
>> API that "anyone" can use.
>>
>>> The benefit of storing in Inventory is it enables end users to navigate
>>> through the inventory to understand the relationships to the business
>>> apps/services, as well as allow other tooling (e.g. impact analysis) to
>>> determine the effect of IT resource downtime on business apps.
>>>
>>
>> +1. I know Brett will object that that's what Artificer is for, too, but I
>> personally see the difference in Inventory's focus on relationships, while
>> Artificer is more geared towards managing content.
>>
>>> Thoughts?
>>>
>>> Regards
>>> Gary
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>>
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From theute at redhat.com Wed Apr 15 08:04:34 2015
From: theute at redhat.com (Thomas Heute)
Date: Wed, 15 Apr 2015 14:04:34 +0200
Subject: [Hawkular-dev] Hawkular Metrics - 0.3.1
In-Reply-To: <1555745278.11199263.1428435316002.JavaMail.zimbra@redhat.com>
References: <1555745278.11199263.1428435316002.JavaMail.zimbra@redhat.com>
Message-ID: <552E53D2.1040708@redhat.com>
On 04/07/2015 09:35 PM, Stefan Negrea wrote:
> Hello Everybody,
>
> I am happy to announce a big milestone for the Hawkular Metrics project. We are releasing today for the first time from the repository hosted by the Hawkular organization.
>
> Major changes:
> 1) UI
> - The core UI has been migrated to Hawkular UI related projects (hawkular-ui-components, hawkular, and hawkular-ui-services). The explorer project is still available for testing purposes.
> 2) REST
> - Consistent error reporting and status codes usage across endpoints
> - Added Availability statistics (https://issues.jboss.org/browse/HWKMETRICS-35):
> * Total downtime duration
> * Last downtime
> * Percentage of uptime
> * Number of downtimes
> - New Numeric Metric statistics (https://issues.jboss.org/browse/HWKMETRICS-34):
> * Average
> * Median
> * 95th Percentile
Is that precalculated ? I guess you can't query for 99th percentile ?
> - The REST implementation has been decoupled from the actual core logic, which paves the way for alternate REST implementations
> 3) Core
> - Large refactoring of the core classes and packages, the domain related logic has been pushed to the core layer
> - The Memory storage engine has been dropped from the project. Cassandra (embedded or standalone) is the exclusive storage engine.
> 4) InfluxDB Integration
> - Influx Java client supports sending and reading data (it was not possible before because of the endoint URI differences) to/from Hawkular Metrics. Other clients are not tested but should work as well.
> 5) PTrans
> - Configurable list of listeners (previously all collectd, ganglia, ... etc listeners were started)
> - Bug fix: send data to Metrics server if the buffer is full or no data was received recently (previously data could sit in the buffer and wait for the buffer to be full before being sent)
>
>
> Github Release:
> https://github.com/hawkular/hawkular-metrics/releases/tag/0.3.1
>
> JBoss Nexus Maven artifacts:
> http://origin-repository.jboss.org/nexus/content/repositories/public/org/hawkular/metrics/
>
>
> A big "Thank you" goes to John Sanda, Thomas Segismont, Mike Thompson, and Heiko Rupp for their project contributions. Special mentions go to Jeeva Kandasamy, Jirka Kremser, and Michael Burman for their project help.
>
> I am happy to announce that Matt Wringe joined the Hawkular Metrics team with a focus on containers and project integrations. We are looking forward to his contributions.
>
> Any discussion, suggestions or contributions are more than welcomed; so feel free to reply to this email or join #hawkular on freenode.
>
>
> Thank you,
> Stefan Negrea
>
> Software Engineer
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From jshaughn at redhat.com Wed Apr 15 11:22:04 2015
From: jshaughn at redhat.com (Jay Shaughnessy)
Date: Wed, 15 Apr 2015 11:22:04 -0400
Subject: [Hawkular-dev] Business app/services representation in Inventory
In-Reply-To: <552E5187.5000203@redhat.com>
References: <647407669.6594118.1427791073691.JavaMail.zimbra@redhat.com> <1837689158.7959369.1427805015434.JavaMail.zimbra@redhat.com> <1735048842.6798059.1427806415238.JavaMail.zimbra@redhat.com>
<552E5187.5000203@redhat.com>
Message-ID: <552E821C.2010507@redhat.com>
On 4/15/2015 7:54 AM, Thomas Heute wrote:
> Catching up on old emails...
>
> On 03/31/2015 02:53 PM, Gary Brown wrote:
>> Ok thanks for the info.
>>
>> Just to be clear - so as components are dynamically deployed/undeployed from a server, these should be reflected in the Inventory - so it represents a current view of the environment being managed?
> This is an important point.
>
> When a resource in deployed / undeployed / deployed (or redeployed), you
> want to know if it's there but you also want to keep historical data
> (say response time history before the redeployment).
>
> It also has an impact on alerts, if an app is undeployed legitimately
> you don't want to receive 'non-available' alerts but you want them back
> once the app is deployed...
This could be relevant if avail is reported from an external monitor,
like the pinger. It either needs to be aware of the redeploy, or aware
of some maintenance window, I think, in order to not report DOWN avail.
Maybe easier is to let the down avail be reported but instead mute the
Triggers. If Triggers are logically connected to Resources then we may
want to disable the triggers during certain resource-level events, like
a maintenance window or a scheduled redeploy operation. In RHQ I think
people liked to see down avail reported for a resource when it was down
for a redeploy. If we could optionally disable alerting then that would
be nice.
Another possibility could maybe be to add some sort of validation action
on a trigger, or maybe some sort of callback, such that persistence and
further actions are ignored if validation does not pass. So, instead of
preventing the triggering up front, we could mute it in a
post-processing way.
From gbrown at redhat.com Wed Apr 15 11:58:40 2015
From: gbrown at redhat.com (Gary Brown)
Date: Wed, 15 Apr 2015 11:58:40 -0400 (EDT)
Subject: [Hawkular-dev] Business app/services representation in Inventory
In-Reply-To: <552E821C.2010507@redhat.com>
References: <647407669.6594118.1427791073691.JavaMail.zimbra@redhat.com>
<1837689158.7959369.1427805015434.JavaMail.zimbra@redhat.com>
<1735048842.6798059.1427806415238.JavaMail.zimbra@redhat.com>
<552E5187.5000203@redhat.com> <552E821C.2010507@redhat.com>
Message-ID: <243003922.305370.1429113520769.JavaMail.zimbra@redhat.com>
Couldn't the deployment status be added to the trigger when relevant, e.g. avail = DOWN && deployment_status = DEPLOYED - if user wants to ignore DOWN notifications when in maintenance mode.
Reason being that something checking the end to end availability of a linked (dependent) set of resources would want to know if a resource was down, regardless of whether it was in maintenance, as it impacts the higher level business app. So it may be on a case by case basis - so possibly best left to the trigger definition to determine if deployment status is relevant?
Regards
Gary
----- Original Message -----
>
>
> On 4/15/2015 7:54 AM, Thomas Heute wrote:
> > Catching up on old emails...
> >
> > On 03/31/2015 02:53 PM, Gary Brown wrote:
> >> Ok thanks for the info.
> >>
> >> Just to be clear - so as components are dynamically deployed/undeployed
> >> from a server, these should be reflected in the Inventory - so it
> >> represents a current view of the environment being managed?
> > This is an important point.
> >
> > When a resource in deployed / undeployed / deployed (or redeployed), you
> > want to know if it's there but you also want to keep historical data
> > (say response time history before the redeployment).
> >
> > It also has an impact on alerts, if an app is undeployed legitimately
> > you don't want to receive 'non-available' alerts but you want them back
> > once the app is deployed...
>
> This could be relevant if avail is reported from an external monitor,
> like the pinger. It either needs to be aware of the redeploy, or aware
> of some maintenance window, I think, in order to not report DOWN avail.
> Maybe easier is to let the down avail be reported but instead mute the
> Triggers. If Triggers are logically connected to Resources then we may
> want to disable the triggers during certain resource-level events, like
> a maintenance window or a scheduled redeploy operation. In RHQ I think
> people liked to see down avail reported for a resource when it was down
> for a redeploy. If we could optionally disable alerting then that would
> be nice.
>
> Another possibility could maybe be to add some sort of validation action
> on a trigger, or maybe some sort of callback, such that persistence and
> further actions are ignored if validation does not pass. So, instead of
> preventing the triggering up front, we could mute it in a
> post-processing way.
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From jshaughn at redhat.com Wed Apr 15 14:18:35 2015
From: jshaughn at redhat.com (Jay Shaughnessy)
Date: Wed, 15 Apr 2015 14:18:35 -0400
Subject: [Hawkular-dev] Business app/services representation in Inventory
In-Reply-To: <243003922.305370.1429113520769.JavaMail.zimbra@redhat.com>
References: <647407669.6594118.1427791073691.JavaMail.zimbra@redhat.com> <1837689158.7959369.1427805015434.JavaMail.zimbra@redhat.com> <1735048842.6798059.1427806415238.JavaMail.zimbra@redhat.com> <552E5187.5000203@redhat.com>
<552E821C.2010507@redhat.com>
<243003922.305370.1429113520769.JavaMail.zimbra@redhat.com>
Message-ID: <552EAB7B.1030903@redhat.com>
It certainly could be. As I mentioned below, I agree that users want to
see DOWN avail during redeploy, they just don't want to see an alert.
If we incorporate deployment_status into the data being fed to alerting
then we can do this sort of alerting. Although, I'm not positive that
we want to report deployment_status in that way. I think given
reporting intervals we may encounter some edge cases.
On 4/15/2015 11:58 AM, Gary Brown wrote:
> Couldn't the deployment status be added to the trigger when relevant, e.g. avail = DOWN && deployment_status = DEPLOYED - if user wants to ignore DOWN notifications when in maintenance mode.
>
> Reason being that something checking the end to end availability of a linked (dependent) set of resources would want to know if a resource was down, regardless of whether it was in maintenance, as it impacts the higher level business app. So it may be on a case by case basis - so possibly best left to the trigger definition to determine if deployment status is relevant?
>
> Regards
> Gary
>
> ----- Original Message -----
>>
>> On 4/15/2015 7:54 AM, Thomas Heute wrote:
>>> Catching up on old emails...
>>>
>>> On 03/31/2015 02:53 PM, Gary Brown wrote:
>>>> Ok thanks for the info.
>>>>
>>>> Just to be clear - so as components are dynamically deployed/undeployed
>>>> from a server, these should be reflected in the Inventory - so it
>>>> represents a current view of the environment being managed?
>>> This is an important point.
>>>
>>> When a resource in deployed / undeployed / deployed (or redeployed), you
>>> want to know if it's there but you also want to keep historical data
>>> (say response time history before the redeployment).
>>>
>>> It also has an impact on alerts, if an app is undeployed legitimately
>>> you don't want to receive 'non-available' alerts but you want them back
>>> once the app is deployed...
>> This could be relevant if avail is reported from an external monitor,
>> like the pinger. It either needs to be aware of the redeploy, or aware
>> of some maintenance window, I think, in order to not report DOWN avail.
>> Maybe easier is to let the down avail be reported but instead mute the
>> Triggers. If Triggers are logically connected to Resources then we may
>> want to disable the triggers during certain resource-level events, like
>> a maintenance window or a scheduled redeploy operation. In RHQ I think
>> people liked to see down avail reported for a resource when it was down
>> for a redeploy. If we could optionally disable alerting then that would
>> be nice.
>>
>> Another possibility could maybe be to add some sort of validation action
>> on a trigger, or maybe some sort of callback, such that persistence and
>> further actions are ignored if validation does not pass. So, instead of
>> preventing the triggering up front, we could mute it in a
>> post-processing way.
>>
>>
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150415/104e0ba5/attachment.html
From gbrown at redhat.com Thu Apr 16 03:26:14 2015
From: gbrown at redhat.com (Gary Brown)
Date: Thu, 16 Apr 2015 03:26:14 -0400 (EDT)
Subject: [Hawkular-dev] Business app/services representation in Inventory
In-Reply-To: <552EAB7B.1030903@redhat.com>
References: <647407669.6594118.1427791073691.JavaMail.zimbra@redhat.com>
<1837689158.7959369.1427805015434.JavaMail.zimbra@redhat.com>
<1735048842.6798059.1427806415238.JavaMail.zimbra@redhat.com>
<552E5187.5000203@redhat.com> <552E821C.2010507@redhat.com>
<243003922.305370.1429113520769.JavaMail.zimbra@redhat.com>
<552EAB7B.1030903@redhat.com>
Message-ID: <867876190.733992.1429169174987.JavaMail.zimbra@redhat.com>
Hi
----- Original Message -----
>
> It certainly could be. As I mentioned below, I agree that users want to see
> DOWN avail during redeploy, they just don't want to see an alert. If we
> incorporate deployment_status into the data being fed to alerting then we
> can do this sort of alerting. Although, I'm not positive that we want to
> report deployment_status in that way. I think given reporting intervals we
> may encounter some edge cases.
I was thinking that the deployment status for the expression could be retrieved from inventory/cached data rather than be part of the metric. Is that possible?
Regards
Gary
>
> On 4/15/2015 11:58 AM, Gary Brown wrote:
>
>
>
> Couldn't the deployment status be added to the trigger when relevant, e.g.
> avail = DOWN && deployment_status = DEPLOYED - if user wants to ignore DOWN
> notifications when in maintenance mode.
>
> Reason being that something checking the end to end availability of a linked
> (dependent) set of resources would want to know if a resource was down,
> regardless of whether it was in maintenance, as it impacts the higher level
> business app. So it may be on a case by case basis - so possibly best left
> to the trigger definition to determine if deployment status is relevant?
>
> Regards
> Gary
>
> ----- Original Message -----
>
>
>
> On 4/15/2015 7:54 AM, Thomas Heute wrote:
>
>
>
> Catching up on old emails...
>
> On 03/31/2015 02:53 PM, Gary Brown wrote:
>
>
>
> Ok thanks for the info.
>
> Just to be clear - so as components are dynamically deployed/undeployed
> from a server, these should be reflected in the Inventory - so it
> represents a current view of the environment being managed?
> This is an important point.
>
> When a resource in deployed / undeployed / deployed (or redeployed), you
> want to know if it's there but you also want to keep historical data
> (say response time history before the redeployment).
>
> It also has an impact on alerts, if an app is undeployed legitimately
> you don't want to receive 'non-available' alerts but you want them back
> once the app is deployed...
> This could be relevant if avail is reported from an external monitor,
> like the pinger. It either needs to be aware of the redeploy, or aware
> of some maintenance window, I think, in order to not report DOWN avail.
> Maybe easier is to let the down avail be reported but instead mute the
> Triggers. If Triggers are logically connected to Resources then we may
> want to disable the triggers during certain resource-level events, like
> a maintenance window or a scheduled redeploy operation. In RHQ I think
> people liked to see down avail reported for a resource when it was down
> for a redeploy. If we could optionally disable alerting then that would
> be nice.
>
> Another possibility could maybe be to add some sort of validation action
> on a trigger, or maybe some sort of callback, such that persistence and
> further actions are ignored if validation does not pass. So, instead of
> preventing the triggering up front, we could mute it in a
> post-processing way.
>
>
> _______________________________________________
> hawkular-dev mailing list hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
> _______________________________________________
> hawkular-dev mailing list hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From hrupp at redhat.com Thu Apr 16 09:33:32 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Thu, 16 Apr 2015 15:33:32 +0200
Subject: [Hawkular-dev] Business app/services representation in Inventory
In-Reply-To: <647407669.6594118.1427791073691.JavaMail.zimbra@redhat.com>
References: <647407669.6594118.1427791073691.JavaMail.zimbra@redhat.com>
Message-ID:
Hi,
On 31 Mar 2015, at 10:37, Gary Brown wrote:
> whether or not we want the business app, their components services,
> and their relationships to IT resources they use, stored in Hawkular
> Inventory?
Yes. We need to still decide though what kind of resources we
want to store and represent. One of the confusing aspects of RHQ (UI)
was that we basically did our job too good and showed too much.
From hrupp at redhat.com Thu Apr 16 09:36:39 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Thu, 16 Apr 2015 15:36:39 +0200
Subject: [Hawkular-dev] Business app/services representation in Inventory
In-Reply-To: <1122568546.10127626.1427827146205.JavaMail.zimbra@redhat.com>
References: <647407669.6594118.1427791073691.JavaMail.zimbra@redhat.com>
<1837689158.7959369.1427805015434.JavaMail.zimbra@redhat.com>
<1122568546.10127626.1427827146205.JavaMail.zimbra@redhat.com>
Message-ID:
On 31 Mar 2015, at 20:39, John Doyle wrote:
>> Deriving the structure and relationships dynamically is basically
>> a "discovery" as called in ye olde RHQ days. That is a capability
>> which we'd very much like to keep.
>
> +1 Very powerful and important in getting a great user experience.
Just to make this a bit more explicit: for Hawkular we want not only
discover and represent the classic parent-child relations like
"WildFly running on JVM on RHEL", but also discover that e.g. a couple
of WildFly servers (or apps) use the same JDBC url, so they are most
likely to form an application that is clustered. Similarly for joint
Caches / JGroups / messaging infrastructure.
From hrupp at redhat.com Thu Apr 16 10:03:37 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Thu, 16 Apr 2015 16:03:37 +0200
Subject: [Hawkular-dev] Business app/services representation in Inventory
In-Reply-To: <552EAB7B.1030903@redhat.com>
References: <647407669.6594118.1427791073691.JavaMail.zimbra@redhat.com>
<1837689158.7959369.1427805015434.JavaMail.zimbra@redhat.com>
<1735048842.6798059.1427806415238.JavaMail.zimbra@redhat.com>
<552E5187.5000203@redhat.com> <552E821C.2010507@redhat.com>
<243003922.305370.1429113520769.JavaMail.zimbra@redhat.com>
<552EAB7B.1030903@redhat.com>
Message-ID:
On 15 Apr 2015, at 20:18, Jay Shaughnessy wrote:
> It certainly could be. As I mentioned below, I agree that users want
> to see DOWN avail during redeploy, they just don't want to see an
> alert. If we incorporate deployment_status into the data being fed to
> alerting then we can do this sort of alerting. Although, I'm not
> positive that we want to report deployment_status in that way. I
> think given reporting intervals we may encounter some edge cases
This "deployment_status" could be another value in the resource
state like "maintenance mode" - perhaps "re-deploying" or such.
See also "Computed resource state" email(s)
http://lists.jboss.org/pipermail/hawkular-dev/2015-March/000413.html
From tsegismo at redhat.com Thu Apr 16 12:44:52 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Thu, 16 Apr 2015 18:44:52 +0200
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <552E3322.8020606@redhat.com>
References: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com> <6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com> <1378513309.14322464.1429036353190.JavaMail.zimbra@redhat.com> <552D7651.3020302@redhat.com> <81B264C1-0FC7-4D1D-AD5B-85F50DADF0B3@redhat.com> <552E15F2.4000906@redhat.com> <90E58160-C7D0-4AE2-B9E5-A2D22B6E7002@redhat.com>
<552E3322.8020606@redhat.com>
Message-ID: <552FE704.2050006@redhat.com>
Le 15/04/2015 11:45, Thomas Segismont a ?crit :
> Le 15/04/2015 10:28, Heiko W.Rupp a ?crit :
>> On 15 Apr 2015, at 9:40, Thomas Segismont wrote:
>>
>>> Le 15/04/2015 09:00, Heiko W.Rupp a ?crit :
>>>> On 14 Apr 2015, at 22:19, Thomas Segismont wrote:
>>>>
>>>>> I'd be happy to share efforts to build a Grafana driver for Hawkular
>>>>> Metrics.
>>>>
>>>> Why not use the influx endpoint as described here
>>>> http://pilhuhn.blogspot.de/2014/06/rhq-metrics-and-grafana.html ?
>>>
>>> Because I don't think we can maintain it in the future:
>>> http://lists.jboss.org/pipermail/hawkular-dev/2015-March/000594.html
>>
>> Do we have any idea of the effort to create *and* maintain such a Grafana
>
> No idea, I haven't looked at it yet.
>
>> driver? And what is the likeliness that it may be accepted into Grafana?
>
> I couldn't say. We need to ask them.
>
>>
>> I think it is sad to see this (current) integration go.
>
> It wouldn't go away strictly speaking. But it would work with gauges only.
We had a metrics meeting yesterday about data visualization and here's
the outcome for Influx support:
* we'll update the "list series" handler so that it returns gauges with
the "gauge." prefix and counters with the "counter." prefix
* we'll update the query handler so that it looks at the series name for
a known prefix ("gauge." or "counter."); if there's no prefix, it will
assume it's a gauge
With such changes we should still be able to use Grafana to visualize
Metrics data.
Is there a parent JIRA for gauge/counter changes? I'd like to add
children tasks for the Influx API.
From theute at redhat.com Thu Apr 16 13:20:25 2015
From: theute at redhat.com (Thomas Heute)
Date: Thu, 16 Apr 2015 19:20:25 +0200
Subject: [Hawkular-dev] metrics explorer UI
In-Reply-To: <552FE704.2050006@redhat.com>
References: <1749835078.14216547.1429023596153.JavaMail.zimbra@redhat.com> <6E6EB20E-D262-4CB3-9000-3EFEEF082B9A@redhat.com> <1378513309.14322464.1429036353190.JavaMail.zimbra@redhat.com> <552D7651.3020302@redhat.com> <81B264C1-0FC7-4D1D-AD5B-85F50DADF0B3@redhat.com> <552E15F2.4000906@redhat.com> <90E58160-C7D0-4AE2-B9E5-A2D22B6E7002@redhat.com> <552E3322.8020606@redhat.com>
<552FE704.2050006@redhat.com>
Message-ID: <552FEF59.2080105@redhat.com>
On 04/16/2015 06:44 PM, Thomas Segismont wrote:
> With such changes we should still be able to use Grafana to visualize
> Metrics data.
Awesome :)
From mazz at redhat.com Thu Apr 16 17:21:07 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Thu, 16 Apr 2015 17:21:07 -0400 (EDT)
Subject: [Hawkular-dev] hawkular monitor agent - inventory
In-Reply-To: <929295931.1645197.1429218221254.JavaMail.zimbra@redhat.com>
Message-ID: <696123875.1657322.1429219267038.JavaMail.zimbra@redhat.com>
The Hawkular Monitor Agent (the thing that runs inside of WildFly as a subsystem) can now monitor both its own WildFly instance as well as any remote WildFly instance. It can collect metrics and perform availability checks on any attribute in any subsystem within WildFly and can store that data in Hawkular-Metrics or Hawkular ecosystem. (so if there is any product that runs inside of WildFly, we can now monitor it). I am at a point where I can integrate it into kettle.
I need to now talk to Lukas and gang about the inventory stuff. I have no idea where to start when it comes to integrating with inventory. Lukas - can you setup a call of some sort where you guys can tell me what I have to do and I can ask questions? Hopefully this can help us figure out what we need from inventory from a client perspective.
From lkrejci at redhat.com Fri Apr 17 04:17:12 2015
From: lkrejci at redhat.com (Lukas Krejci)
Date: Fri, 17 Apr 2015 04:17:12 -0400 (EDT)
Subject: [Hawkular-dev] hawkular monitor agent - inventory
Message-ID: <405209618.1590915.1429258632731.JavaMail.zimbra@redhat.com>
The following is a new meeting request:
Subject: [Hawkular-dev] hawkular monitor agent - inventory
Organiser: "Lukas Krejci"
Time: Friday, 17 April, 2015, 4:00:00 PM - 5:00:00 PM GMT +01:00 Belgrade, Bratislava, Budapest, Ljubljana, Prague
Invitees: mazz at redhat.com; hawkular-dev at lists.jboss.org
*~*~*~*~*~*~*~*~*~*
Agenda: Discuss how to set up and represent wildfly management model entities in hawkular inventory.
To join the Meeting:
https://bluejeans.com/691016054
To join via Browser:
https://bluejeans.com/691016054/browser
To join with Lync:
https://bluejeans.com/691016054/lync
To join via Room System:
Video Conferencing System: bjn.vc -or- 199.48.152.152
Meeting ID: 691016054
To join via Phone:
1) Dial:
+442035746870
(see all numbers - https://www.intercallonline.com/listNumbersByCode.action?confCode=8169978803)
2) Enter Conference ID: 8169978803
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/calendar
Size: 2176 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150417/76c268d5/attachment.bin
From mazz at redhat.com Fri Apr 17 18:03:01 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Fri, 17 Apr 2015 18:03:01 -0400 (EDT)
Subject: [Hawkular-dev] hawkular monitor agent integrated in kettle
In-Reply-To: <212473500.2196087.1429308088193.JavaMail.zimbra@redhat.com>
Message-ID: <1794040262.2196163.1429308181136.JavaMail.zimbra@redhat.com>
The Hawkular Monitor agent is now integrated in kettle. When you build kettle, along with all the other stuff, you will get a new subsystem extension installed which will collect metrics from the kettle instance itself. It stores data directly to Hawkular-Metrics and sends a bus message so alerts can do stuff with it.
You will see nothing in the UI regarding this stuff - but every 5 minutes you should see some diagnostics in your log file. And nothing has yet been done wrt inventory integration.
From mwringe at redhat.com Fri Apr 17 18:44:12 2015
From: mwringe at redhat.com (Matt Wringe)
Date: Fri, 17 Apr 2015 18:44:12 -0400
Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
Message-ID: <55318CBC.8010105@redhat.com>
I have a new subproject in Hawkular Metrics which sets up creating
components for Openshift/Fabric8
(https://github.com/hawkular/hawkular-metrics/pull/200).
There are 3 main parts
Cassandra: creates a custom seed provider to support
ReplicationControllers in Kubernetes, creates a folder/zip archive which
can be used to generate a Docker image. It may make sense to move the
Cassandra parts out to a separate project.
Hawkular Metrics: creates a folder/zip archive which can be used to
generate a Docker image
Kubernetes: pulls everything together into a single kubernetes
application. Can be used to deploy an application zip into fabric8 (via
drag and drop in the web console or via the maven plugin) or deploy all
the components into Openshift via the kubernetes.json configuration file.
The docker images are not created and deployed to a docker registry as
part of the build, it will just create a folder where you can run the
docker build from. None of the maven docker plugins I looked at seemed
to really work properly, so its still a manual process to do the build
(and push to a registry). Its something which needs to be improved.
The Cassandra service currently only supports adding new nodes to a
cluster and not removing them via the ReplicationController. This is due
to the replication factor being set to be 1 by default (which means when
a node is removed, so is the data it contained).
I believe the docker subproject of hawkular metrics is obsolete and can
be removed
(https://github.com/hawkular/hawkular-metrics/tree/master/docker), but
someone please correct me if I am wrong. It's scripts are referring to
the console which no longer exists as part of the project.
- Matt
From rhauch at redhat.com Sat Apr 18 11:10:52 2015
From: rhauch at redhat.com (Randall Hauch)
Date: Sat, 18 Apr 2015 10:10:52 -0500
Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
In-Reply-To: <55318CBC.8010105@redhat.com>
References: <55318CBC.8010105@redhat.com>
Message-ID:
I?m using com.spotify:docker-maven-plugin (https://github.com/spotify/docker-maven-plugin ) in a project other than Hawkular, and I think it works quite well. Yes, it is easier to use if you build an assembly with the layout, and then simply ADD the archive via the Dockerfile. (Recall that ADD will extract the contents of a ZIP or TAR archive, whereas COPY just copies files.) The Maven plugin can easily build the image, register it locally, and optionally push to DockerHub.
> On Apr 17, 2015, at 5:44 PM, Matt Wringe wrote:
>
> The docker images are not created and deployed to a docker registry as
> part of the build, it will just create a folder where you can run the
> docker build from. None of the maven docker plugins I looked at seemed
> to really work properly, so its still a manual process to do the build
> (and push to a registry). Its something which needs to be improved.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150418/a67899b4/attachment.html
From mwringe at redhat.com Mon Apr 20 09:32:03 2015
From: mwringe at redhat.com (Matt Wringe)
Date: Mon, 20 Apr 2015 09:32:03 -0400
Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
In-Reply-To:
References: <55318CBC.8010105@redhat.com>
Message-ID: <5534FFD3.9080802@redhat.com>
On 18/04/15 11:10 AM, Randall Hauch wrote:
> I?m using com.spotify:docker-maven-plugin
> (https://github.com/spotify/docker-maven-plugin) in a project other
> than Hawkular, and I think it works quite well. Yes, it is easier to
> use if you build an assembly with the layout, and then simply ADD the
> archive via the Dockerfile. (Recall that ADD will extract the contents
> of a ZIP or TAR archive, whereas COPY just copies files.) The Maven
> plugin can easily build the image, register it locally, and optionally
> push to DockerHub.
The main issue I had with the spotify and jolokia maven plugins is that
they don't support unix sockets (eg for local builds). The docker daemon
defaults to unix sockets, which is the more secure option.
So to use these plugins, you need to manually configure your system to
use tcp instead of the unix sockets. Which if you do it the easy way,
opens up your machine to an easy root vulnerability. Or, to do it the
proper way, manually setup all your certificates and handle things over ssl.
But, I guess I can give it another look to see just how difficult it is
to manually set it all up. Overall I really got the impression that you
gain more control over just building it manually yourself and then using
a script to push out the images after.
>
>
>> On Apr 17, 2015, at 5:44 PM, Matt Wringe > > wrote:
>>
>> The docker images are not created and deployed to a docker registry as
>> part of the build, it will just create a folder where you can run the
>> docker build from. None of the maven docker plugins I looked at seemed
>> to really work properly, so its still a manual process to do the build
>> (and push to a registry). Its something which needs to be improved.
>
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150420/e34686e2/attachment.html
From vnguyen at redhat.com Mon Apr 20 09:57:51 2015
From: vnguyen at redhat.com (Viet Nguyen)
Date: Mon, 20 Apr 2015 09:57:51 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
In-Reply-To: <55318CBC.8010105@redhat.com>
References: <55318CBC.8010105@redhat.com>
Message-ID: <1890420879.2259162.1429538271466.JavaMail.zimbra@redhat.com>
Matt,
I was the last person who worked on that Docker build for Hawkular-metrics. Yes, it is obsolete and can be removed.
FYI there's an automated Docker build of Kettle in DockerHub and a continuous deployment to a Kubernetes cluster
Docker Hub:
https://registry.hub.docker.com/u/hawkular/hawkular/
CI Pipeline:
https://docs.google.com/presentation/d/14zqOHOvXAB4uN7W_fWOub3ZD6txiS_Vp9cjUNIlj2yQ/edit?usp=sharing
Viet
----- Original Message -----
From: "Matt Wringe"
To: hawkular-dev at lists.jboss.org
Sent: Friday, April 17, 2015 3:44:12 PM
Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
I have a new subproject in Hawkular Metrics which sets up creating
components for Openshift/Fabric8
(https://github.com/hawkular/hawkular-metrics/pull/200).
There are 3 main parts
Cassandra: creates a custom seed provider to support
ReplicationControllers in Kubernetes, creates a folder/zip archive which
can be used to generate a Docker image. It may make sense to move the
Cassandra parts out to a separate project.
Hawkular Metrics: creates a folder/zip archive which can be used to
generate a Docker image
Kubernetes: pulls everything together into a single kubernetes
application. Can be used to deploy an application zip into fabric8 (via
drag and drop in the web console or via the maven plugin) or deploy all
the components into Openshift via the kubernetes.json configuration file.
The docker images are not created and deployed to a docker registry as
part of the build, it will just create a folder where you can run the
docker build from. None of the maven docker plugins I looked at seemed
to really work properly, so its still a manual process to do the build
(and push to a registry). Its something which needs to be improved.
The Cassandra service currently only supports adding new nodes to a
cluster and not removing them via the ReplicationController. This is due
to the replication factor being set to be 1 by default (which means when
a node is removed, so is the data it contained).
I believe the docker subproject of hawkular metrics is obsolete and can
be removed
(https://github.com/hawkular/hawkular-metrics/tree/master/docker), but
someone please correct me if I am wrong. It's scripts are referring to
the console which no longer exists as part of the project.
- Matt
_______________________________________________
hawkular-dev mailing list
hawkular-dev at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hawkular-dev
From mazz at redhat.com Mon Apr 20 15:43:26 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Mon, 20 Apr 2015 15:43:26 -0400 (EDT)
Subject: [Hawkular-dev] bus rest client
In-Reply-To: <1250726378.3042637.1429558935825.JavaMail.zimbra@redhat.com>
Message-ID: <674211617.3042787.1429559006136.JavaMail.zimbra@redhat.com>
Did I mention this yet?
There is a REST client for sending bus messages. Single jar, only two dependencies (jboss logging, apache HTTP client). To send a bus message (in this case, to the alerts topic):
new RestClient(new URL("http://localhost:8080")).postTopicMessage("HawkularAlertData", yourJsonPayload, null);
That "null" can be a map of headers if you need to send headers.
The client is here: https://github.com/hawkular/hawkular-bus/tree/master/hawkular-bus-rest-client and the maven artifact is org.hawkular.bus:hawkular-bus-rest-client - its just a jar.
From mazz at redhat.com Mon Apr 20 15:56:32 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Mon, 20 Apr 2015 15:56:32 -0400 (EDT)
Subject: [Hawkular-dev] inventory hierarchy
In-Reply-To: <1132954904.3031863.1429557035972.JavaMail.zimbra@redhat.com>
Message-ID: <1789246184.3044985.1429559792419.JavaMail.zimbra@redhat.com>
Well, after staring at things today, I am coming to the conclusion I probably should re-arrange my agent configuration before I get too far ahead. Need to know what people think.
The current hawkular monitor agent defines things like this - you define your metric definitions and then you define where your servers are (host/port) and what metrics to collect from those servers. A very small agent config would be something like:
But after looking at the kinds of metrics we want to collect, I think we need to introduce some intermediate data - specifically, resource hierarchy.
For example, if you look at Kettle (which has a pretty interesting and non-trivial DMR hierarchy) there are things like this:
Alerts EAR (/deployment=hawkular-alerts-ear-1.0.ear)
|
\-- Alerts REST WAR (/deployment=hawkular-alerts-ear-1.0.ear/subdeployment=hawkular-alerts-rest.war/)
|
\-- Undertow Subsystem (/deployment=hawkular-alerts-ear-1.0.ear/subdeployment=hawkular-alerts-rest.war/subsystem=undertow/)
|
\-- METRIC: active-sessions
\-- METRIC: sessions-created
|
\-- Servlet (/deployment=hawkular-alerts-ear-1.0.ear/subdeployment=hawkular-alerts-rest.war/subsystem=undertow/servlet=org.hawkular.alerts.rest.HawkularAlertsApp/)
|
\-- METRIC: max-request-time
\-- METRIC: min-request-time
\-- METRIC: request-count
There's also EJB3 subdeployments under the EAR which have singleton-beans that have execution-time and other invocation metrics.
So, clearly, I think there has to be something like managed entities in between those endpoint servers and metrics in the agent configuration. Essentially, we need to define resources in the config.
I was thinking of renaming "managed-resources" to "managed-servers" and then have "managed-resources" in between servers and metrics:
One difference between this and RHQ is I don't define those low-low level resources as separate resources (in RHQ I would have to define the undertow subsystem as a child under the WAR and then a servlet under the undertow resource). There is only the EAR and the WAR resource with the low level metrics from undertow and the servlet being "assigned" or linked to the WAR resouce.
So the Hawkular inventory hierachy would be this (compare with the Wildfly hierarchy):
Alerts EAR
|
\-- Alerts WAR
|
\-- METRICS: Active Sessions (coming from undertow)
\-- METRICS: Servlet Requests (coming from the servlet inside undertow)
From tsegismo at redhat.com Tue Apr 21 03:37:19 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Tue, 21 Apr 2015 09:37:19 +0200
Subject: [Hawkular-dev] inventory hierarchy
In-Reply-To: <1789246184.3044985.1429559792419.JavaMail.zimbra@redhat.com>
References: <1789246184.3044985.1429559792419.JavaMail.zimbra@redhat.com>
Message-ID: <5535FE2F.3010205@redhat.com>
Le 20/04/2015 21:56, John Mazzitelli a ?crit :
> Well, after staring at things today, I am coming to the conclusion I probably should re-arrange my agent configuration before I get too far ahead. Need to know what people think.
>
> The current hawkular monitor agent defines things like this - you define your metric definitions and then you define where your servers are (host/port) and what metrics to collect from those servers. A very small agent config would be something like:
>
>
>
>
>
>
>
>
> But after looking at the kinds of metrics we want to collect, I think we need to introduce some intermediate data - specifically, resource hierarchy.
>
> For example, if you look at Kettle (which has a pretty interesting and non-trivial DMR hierarchy) there are things like this:
>
> Alerts EAR (/deployment=hawkular-alerts-ear-1.0.ear)
> |
> \-- Alerts REST WAR (/deployment=hawkular-alerts-ear-1.0.ear/subdeployment=hawkular-alerts-rest.war/)
> |
> \-- Undertow Subsystem (/deployment=hawkular-alerts-ear-1.0.ear/subdeployment=hawkular-alerts-rest.war/subsystem=undertow/)
> |
> \-- METRIC: active-sessions
> \-- METRIC: sessions-created
> |
> \-- Servlet (/deployment=hawkular-alerts-ear-1.0.ear/subdeployment=hawkular-alerts-rest.war/subsystem=undertow/servlet=org.hawkular.alerts.rest.HawkularAlertsApp/)
> |
> \-- METRIC: max-request-time
> \-- METRIC: min-request-time
> \-- METRIC: request-count
>
> There's also EJB3 subdeployments under the EAR which have singleton-beans that have execution-time and other invocation metrics.
>
> So, clearly, I think there has to be something like managed entities in between those endpoint servers and metrics in the agent configuration. Essentially, we need to define resources in the config.
>
> I was thinking of renaming "managed-resources" to "managed-servers" and then have "managed-resources" in between servers and metrics:
>
>
>
>
>
>
>
>
> path="/deployment=hawkular-alerts-ear-1.0.ear"
> parent="Alerts EAR"
> path="/subdeployment=hawkular-alerts-rest.war"
> metricSets="my-metrics"/>
>
>
>
>
>
>
> One difference between this and RHQ is I don't define those low-low level resources as separate resources (in RHQ I would have to define the undertow subsystem as a child under the WAR and then a servlet under the undertow resource). There is only the EAR and the WAR resource with the low level metrics from undertow and the servlet being "assigned" or linked to the WAR resouce.
>
> So the Hawkular inventory hierachy would be this (compare with the Wildfly hierarchy):
>
> Alerts EAR
> |
> \-- Alerts WAR
> |
> \-- METRICS: Active Sessions (coming from undertow)
> \-- METRICS: Servlet Requests (coming from the servlet inside undertow)
It surely makes sense when the sub-resource is unique, but in this case
precisely, there could be more than one servlet, correct? We may want to
distinguish the metrics for each end point.
From tsegismo at redhat.com Tue Apr 21 04:06:08 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Tue, 21 Apr 2015 10:06:08 +0200
Subject: [Hawkular-dev] Hawkular implementation of the Vert.x Metrics SPI
Message-ID: <553604F0.4000201@redhat.com>
Hi everyone,
I'm writing to let you know that I've started an Hawkular [1]
implementation of the Vert.x Metrics SPI, called vertx-monitor [2].
It's quite limited at this point [3], and subject to a lot of future
changes, but hopefully it will become a great companion of Vert.x
applications.
Regards,
Thomas
[1] http://www.hawkular.org/
[2] https://github.com/tsegismont/vertx-monitor
[3] https://github.com/tsegismont/vertx-monitor#limitations
From hrupp at redhat.com Tue Apr 21 04:10:01 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Tue, 21 Apr 2015 10:10:01 +0200
Subject: [Hawkular-dev] inventory hierarchy
In-Reply-To: <1789246184.3044985.1429559792419.JavaMail.zimbra@redhat.com>
References: <1789246184.3044985.1429559792419.JavaMail.zimbra@redhat.com>
Message-ID: <35E8E4A9-7F38-4608-9BD4-0CD091E1173E@redhat.com>
On 20 Apr 2015, at 21:56, John Mazzitelli wrote:
> But after looking at the kinds of metrics we want to collect, I think
> we need to introduce some intermediate data - specifically, resource
> hierarchy.
Yes. Didn't we talk about that on the meeting with Lukas last week?
> resource="/subsystem=undertow/servlet=org.hawkular.alerts.rest.HawkularAlertsApp"
> attribute="request-count" />
>
We need wildcard support here
resource="/subsystem=undertow/servlet=*" as we could have more
than one servlet per app
>
>
> path="/deployment=hawkular-alerts-ear-1.0.ear"
> parent="Alerts EAR"
> path="/subdeployment=hawkular-alerts-rest.war"
Same here as the outer EAR may have many WARs inside.
> So the Hawkular inventory hierachy would be this (compare with the
> Wildfly hierarchy):
>
> Alerts EAR
> |
> \-- Alerts WAR
> |
> \-- METRICS: Active Sessions (coming from undertow)
> \-- METRICS: Servlet Requests (coming from the servlet inside
> undertow)
Makes certainly sense to gather them in one place if they logically
belong together as you show them. This is certainly an issue in RHQ
right now.
From jpkroehling at redhat.com Tue Apr 21 05:54:37 2015
From: jpkroehling at redhat.com (=?UTF-8?B?SnVyYWNpIFBhaXjDo28gS3LDtmhsaW5n?=)
Date: Tue, 21 Apr 2015 11:54:37 +0200
Subject: [Hawkular-dev] Looking for a first project to integrate accounts
Message-ID: <55361E5D.7090302@redhat.com>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
All,
Hawkular Accounts have reached a point where it's possible for other
components to integrate with it. As such, I would like to ask if
there's a project that would volunteer for it, to be the first with
this integration, so that I can fix possible integration bugs that
might come from this experience.
I know that you all are busy with the MVP, but if you think you can
afford to spend, say, a day on this, I'll be ready to guide you.
Those are the items that I would like to see being used during this
first integration:
- - Securing the backend with Keycloak
- - Consuming the tenant information (Persona)
- - Protecting resources based on the Persona's role
Needless to say, I'll support you in achieving this and will promptly
fix the issues that may arise.
If you need more information before you volunteer, you can take a look
at the readme file from the accounts module:
https://github.com/hawkular/hawkular-accounts
- - Juca.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBCAAGBQJVNh5dAAoJECKM1e+fkPrXiL8H/jGBE9/SDTD19GNPcdvsueKm
qBKkR2bKX0FP+hKJjzDFgnEIq3HYV9UXCPyPC2pODUXnWIDUqHMoRUz+eF2rCtLT
Q93tfuC3gE1Kn6fY1ZPs8l3fL8RZXjZWLx4q9Qnxey3roIJtDUFWKX777O0eBb+q
EkO4zWbl42qwZCv0pWMdlUusWHDm9A1X6+G70cjGjl8nfRChNBm9oU2LpBWDo0jq
Fkw9dToobLFt5O3MmjSBZo4xYF65WXIDsGdrfXJilERvtJJgWsiq8/sgEWMaNewv
0HitfhhkUbbW8XTYAqwDtYB2v4EllIge2klekPqu3vrBulOHLnYXVibwRWE0zdY=
=6ath
-----END PGP SIGNATURE-----
From lkrejci at redhat.com Tue Apr 21 07:31:58 2015
From: lkrejci at redhat.com (Lukas Krejci)
Date: Tue, 21 Apr 2015 13:31:58 +0200
Subject: [Hawkular-dev] inventory hierarchy
In-Reply-To: <1789246184.3044985.1429559792419.JavaMail.zimbra@redhat.com>
References: <1789246184.3044985.1429559792419.JavaMail.zimbra@redhat.com>
Message-ID: <2050335.9yNP6m5b09@localhost.localdomain>
IMHO, technically, you don't need the hierarchy to report the metrics in your
examples.
Now if you want to report the resources, too, then yes, hierarchy is needed.
But there is a distinction between metrics and resources and I think we should
keep them as separate concepts - metrics maybe logically included in resources
but they should exist as standalone entities not inherently tied to resources.
If for nothing else then for the fact that we somehow have to report the
metrics to hawkular-metrics, where there is no concept of a resource (and I
think there never should be).
Now to the way how you would define a resource hierarchy.
IMHO the way we've done it in RHQ is more or less right. You define the types
of the resources, the possible "hierarchizations" (in RHQ specified either
implicitly by the nesting of the definitions or explicitly by "runs-inside")
and then you discover the resources as "instances" of those types.
Also if you rather think of types than the concrete instances, the problem of
the "wildcards" that Heiko is highlighting finds a comfortable place in the
design.
With that in mind, I think something along the lines of the following could
work:
- metric sets are basically equivalent to hawkular inventory resource types:
${path.1}-${path.2}
your-metrics, his-metrics
- managed resource sets are I think no longer needed
- managed servers reference resource types they want managed on the servers.
The resource type definition above basically combines the resource type def as
it existed in RHQ (of sorts) with a simple discovery by querying the
management model and matching it with the regular expr.
On Monday, April 20, 2015 15:56:32 John Mazzitelli wrote:
> Well, after staring at things today, I am coming to the conclusion I
> probably should re-arrange my agent configuration before I get too far
> ahead. Need to know what people think.
>
> The current hawkular monitor agent defines things like this - you define
> your metric definitions and then you define where your servers are
> (host/port) and what metrics to collect from those servers. A very small
> agent config would be something like:
>
>
> resource="/core-service=platform-mbean/type=threading"
> attribute="thread-count"
>
>
> metricSets="my-metrics" />
>
> But after looking at the kinds of metrics we want to collect, I think we
> need to introduce some intermediate data - specifically, resource
> hierarchy.
>
> For example, if you look at Kettle (which has a pretty interesting and
> non-trivial DMR hierarchy) there are things like this:
>
> Alerts EAR (/deployment=hawkular-alerts-ear-1.0.ear)
>
> \-- Alerts REST WAR
> (/deployment=hawkular-alerts-ear-1.0.ear/subdeployment=hawkular-alerts-rest
> .war/)
>
> \-- Undertow Subsystem
> (/deployment=hawkular-alerts-ear-1.0.ear/subdeployment=hawkular-alerts-rest
> .war/subsystem=undertow/)
>
> \-- METRIC: active-sessions
> \-- METRIC: sessions-created
>
> \-- Servlet
> (/deployment=hawkular-alerts-ear-1.0.ear/subdeployment=hawkular-alerts-rest
> .war/subsystem=undertow/servlet=org.hawkular.alerts.rest.HawkularAlertsApp/)
>
> \-- METRIC: max-request-time
> \-- METRIC: min-request-time
> \-- METRIC: request-count
>
> There's also EJB3 subdeployments under the EAR which have singleton-beans
> that have execution-time and other invocation metrics.
>
> So, clearly, I think there has to be something like managed entities in
> between those endpoint servers and metrics in the agent configuration.
> Essentially, we need to define resources in the config.
>
> I was thinking of renaming "managed-resources" to "managed-servers" and then
> have "managed-resources" in between servers and metrics:
>
>
>
> resource="/subsystem=undertow/servlet=org.hawkular.alerts.rest.HawkularAler
> tsApp" attribute="request-count" />
>
>
> path="/deployment=hawkular-alerts-ear-1.0.ear"
> parent="Alerts EAR"
> path="/subdeployment=hawkular-alerts-rest.war"
> metricSets="my-metrics"/>
>
>
>
> resourceSets="Alerts Application" />
>
> One difference between this and RHQ is I don't define those low-low level
> resources as separate resources (in RHQ I would have to define the undertow
> subsystem as a child under the WAR and then a servlet under the undertow
> resource). There is only the EAR and the WAR resource with the low level
> metrics from undertow and the servlet being "assigned" or linked to the WAR
> resouce.
>
> So the Hawkular inventory hierachy would be this (compare with the Wildfly
> hierarchy):
>
> Alerts EAR
>
> \-- Alerts WAR
>
> \-- METRICS: Active Sessions (coming from undertow)
> \-- METRICS: Servlet Requests (coming from the servlet inside
> undertow) _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From lkrejci at redhat.com Tue Apr 21 08:07:46 2015
From: lkrejci at redhat.com (Lukas Krejci)
Date: Tue, 21 Apr 2015 14:07:46 +0200
Subject: [Hawkular-dev] Looking for a first project to integrate accounts
In-Reply-To: <55361E5D.7090302@redhat.com>
References: <55361E5D.7090302@redhat.com>
Message-ID: <4269691.JhrSYD0rPu@localhost.localdomain>
In inventory, we have a simple concept of tenants, environments and resources,
where tenants are unique and share no information and environments model the
usual split of the infrastructure into dev, testing, production, et al.
How would you change that model to play nicely with the accounts concepts of
users and organizations?
IMHO replacing inventory's tenants with accounts' organizations might be a way
forward but I am not sure. If it was the case, how would you envision syncing
the organization info between accounts and inventory?
Thanks,
Lukas
On Tuesday, April 21, 2015 11:54:37 Juraci Paix?o Kr?hling wrote:
> All,
>
> Hawkular Accounts have reached a point where it's possible for other
> components to integrate with it. As such, I would like to ask if
> there's a project that would volunteer for it, to be the first with
> this integration, so that I can fix possible integration bugs that
> might come from this experience.
>
> I know that you all are busy with the MVP, but if you think you can
> afford to spend, say, a day on this, I'll be ready to guide you.
>
> Those are the items that I would like to see being used during this
> first integration:
>
> - Securing the backend with Keycloak
> - Consuming the tenant information (Persona)
> - Protecting resources based on the Persona's role
>
> Needless to say, I'll support you in achieving this and will promptly
> fix the issues that may arise.
>
> If you need more information before you volunteer, you can take a look
> at the readme file from the accounts module:
>
> https://github.com/hawkular/hawkular-accounts
>
> - Juca.
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From hrupp at redhat.com Tue Apr 21 08:27:23 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Tue, 21 Apr 2015 14:27:23 +0200
Subject: [Hawkular-dev] Looking for a first project to integrate accounts
In-Reply-To: <4269691.JhrSYD0rPu@localhost.localdomain>
References: <55361E5D.7090302@redhat.com>
<4269691.JhrSYD0rPu@localhost.localdomain>
Message-ID: <0B5672B5-CFE9-47EF-B5A9-4F736458CBC0@redhat.com>
On 21 Apr 2015, at 14:07, Lukas Krejci wrote:
> In inventory, we have a simple concept of tenants, environments and
> resources,
> where tenants are unique and share no information and environments
> model the
> usual split of the infrastructure into dev, testing, production, et
> al.
>
> How would you change that model to play nicely with the accounts
> concepts of
> users and organizations?
I think users and organizations can both be tenants.
Either the org is the tenant, then the users "inherit" from the org,
i.e. can see all data from the org (*) or the users are the tenants
and then they only see their own stuff.
*) Additional access control may apply.
From jpkroehling at redhat.com Tue Apr 21 08:29:28 2015
From: jpkroehling at redhat.com (=?UTF-8?B?SnVyYWNpIFBhaXjDo28gS3LDtmhsaW5n?=)
Date: Tue, 21 Apr 2015 14:29:28 +0200
Subject: [Hawkular-dev] Looking for a first project to integrate accounts
In-Reply-To: <4269691.JhrSYD0rPu@localhost.localdomain>
References: <55361E5D.7090302@redhat.com>
<4269691.JhrSYD0rPu@localhost.localdomain>
Message-ID: <553642A8.7030803@redhat.com>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
On 04/21/2015 02:07 PM, Lukas Krejci wrote:
> In inventory, we have a simple concept of tenants, environments and
> resources, where tenants are unique and share no information and
> environments model the usual split of the infrastructure into dev,
> testing, production, et al.
>
> How would you change that model to play nicely with the accounts
> concepts of users and organizations?
The "persona" model was made with *our* concept of tenant in mind. So,
a tenant could be either a real person or an organization, depending
on which persona is currently selected on the UI (or which header was
sent via curl). So, you could safely take a persona as the tenant.
If you also use the "Resource" concept in Account's side, you could
also have a way to display resources from a sub-tenant to the parent
(ie: from "Acme Financial" to "Acme, Inc").
> IMHO replacing inventory's tenants with accounts' organizations
> might be a way forward but I am not sure. If it was the case, how
> would you envision syncing the organization info between accounts
> and inventory?
I think the inventory needs only to know what's the current tenant,
and leave the permissions part to the accounts API. If there's
something you might need to accomplish a particular task, we could add
this as a feature to the accounts part.
- - Juca.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBCAAGBQJVNkKoAAoJECKM1e+fkPrXtOcH/0LQiJv13ImuDSQF1+jkNbll
P5t0zgxkCYs/2jsHD5KVGCc6lsq0HKfDjNv6/oqurNZyrUP0u5ATZxt2HDYxtrjm
IYugq7Kg1P64eLwjXaVD7/WFaOaR8np4EXhd6OtKjfz8DyD1GSl8fTRQPGelK+ff
gi+PEFbhMEkHkzG3TL2zhciBvueeS+TT+LH/bOnHX49gC826ABjK5LDN+YROPE/a
ezytelXVkFyzyKBZjA31baHCAyr3G1qgA7Rq5Dg24VHUYgIRdg2O/ado2VhRTmPL
Hw5hk+5BpS5m1tkEw9sFQPiCXKvPD0okJZcd6KzATyu0pJYsMNOxXfc42fOkOZI=
=85NR
-----END PGP SIGNATURE-----
From jpkroehling at redhat.com Tue Apr 21 08:55:25 2015
From: jpkroehling at redhat.com (=?windows-1252?Q?Juraci_Paix=E3o_Kr=F6hling?=)
Date: Tue, 21 Apr 2015 14:55:25 +0200
Subject: [Hawkular-dev] Looking for a first project to integrate accounts
In-Reply-To: <0B5672B5-CFE9-47EF-B5A9-4F736458CBC0@redhat.com>
References: <55361E5D.7090302@redhat.com>
<4269691.JhrSYD0rPu@localhost.localdomain>
<0B5672B5-CFE9-47EF-B5A9-4F736458CBC0@redhat.com>
Message-ID: <553648BD.1020805@redhat.com>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
On 04/21/2015 02:27 PM, Heiko W.Rupp wrote:
> I think users and organizations can both be tenants.
>
> Either the org is the tenant, then the users "inherit" from the
> org, i.e. can see all data from the org (*) or the users are the
> tenants and then they only see their own stuff.
>
> *) Additional access control may apply.
Exactly, that's how I tried to model it. The "additional access
control" part is also there, with the relationship between Resources,
Operations and Roles, similar to the PicketLink Permission API (ie:
persona with role "x" can perform the operation "y" on resource "z").
- - Juca.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBCAAGBQJVNki9AAoJECKM1e+fkPrXeDIH/00wQCAPhBWVDljCZkS5qlX1
N1M7ULPaZJVzQK6WBLzFpETucUBTBcaXlVRhFk8iSYUiUdPTzXiwWjCyWZH5P2T/
M1Jum8xVgqSnRIE8V2Z17m7BR9LxS+We2gJXJq6jtN4/1c+wND55IbqLx1B1aE2e
iVnACXPy2hiUveNHFhF5q6i/srWCb1D/IhlSbHOy7/m/Nr72lMvLdIrXjUrMSFBh
QYR7CQJVuKlkhA75WLWIercFG6Pruq0yIXZ/Rah+sQ28Kz4JeTJymyLfHn3IcdXg
ZwQU3FpeLyfKcw2SMcDGP1GpVJ/WrkD9Y3Y5NqjhTruWapRISkaj40X4HzpN0zQ=
=HilD
-----END PGP SIGNATURE-----
From lkrejci at redhat.com Tue Apr 21 09:29:35 2015
From: lkrejci at redhat.com (Lukas Krejci)
Date: Tue, 21 Apr 2015 09:29:35 -0400 (EDT)
Subject: [Hawkular-dev] Looking for a first project to integrate accounts
In-Reply-To: <553642A8.7030803@redhat.com>
References: <55361E5D.7090302@redhat.com>
<4269691.JhrSYD0rPu@localhost.localdomain>
<553642A8.7030803@redhat.com>
Message-ID: <142543204.4914633.1429622975024.JavaMail.zimbra@redhat.com>
Sorry for a long and slightly confused email - I am probably too
ingrained with the current design to understand how this should work.
----- Original Message -----
> From: "Juraci Paix?o Kr?hling"
> To: "Lukas Krejci" , "Discussions around Hawkular development"
> Sent: Tuesday, 21 April, 2015 2:29:28 PM
> Subject: Re: [Hawkular-dev] Looking for a first project to integrate accounts
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> On 04/21/2015 02:07 PM, Lukas Krejci wrote:
> > In inventory, we have a simple concept of tenants, environments and
> > resources, where tenants are unique and share no information and
> > environments model the usual split of the infrastructure into dev,
> > testing, production, et al.
> >
> > How would you change that model to play nicely with the accounts
> > concepts of users and organizations?
>
> The "persona" model was made with *our* concept of tenant in mind. So,
> a tenant could be either a real person or an organization, depending
> on which persona is currently selected on the UI (or which header was
> sent via curl). So, you could safely take a persona as the tenant.
>
Is sharing of information possible between personas? It is not possible
in inventory between tenants currently so this is the part where I
struggle a bit.
You can imagine the inventory's tenants as "access points" to disjoint
subgraphs in the inventory. You only can access any data if you know
your tenant. Also, and possibly more importantly, no entity in
inventory is required to have a "globally" unique identifier. The only
thing unique is the path to the entity, starting at the tenant, then down
the environment, etc.
So if a user is a tenant they will not be able to even reference data
from other tenants.
I guess the my main struggle is that the inventory is modelled after
a "physical" layout of the monitoring data - data belongs to some tenant
and can be further classified/narrowed down by the environment, etc.
In accounts, users/orgs/personas are very fluid concepts that can inherit
from each other, etc. while the classification of the data they access
is not that fluid.
Or am I completely missing the point here? (given my confusion right now,
that's more than likely :) ).
> If you also use the "Resource" concept in Account's side, you could
> also have a way to display resources from a sub-tenant to the parent
> (ie: from "Acme Financial" to "Acme, Inc").
>
> > IMHO replacing inventory's tenants with accounts' organizations
> > might be a way forward but I am not sure. If it was the case, how
> > would you envision syncing the organization info between accounts
> > and inventory?
>
> I think the inventory needs only to know what's the current tenant,
> and leave the permissions part to the accounts API. If there's
> something you might need to accomplish a particular task, we could add
> this as a feature to the accounts part.
>
Inventory's tenant is a crucial part to be able to address any entity.
So "knowing a current tenant" to check for permissions is quite ok, but
I am not sure I can "just know the current tenant" to be able to address
the data.
I.e. 2 users are supposed to access data from agent "A" in environment
"staging" for "Acme, Inc.", while a third user is supposed to access data
from agent "A" in environment "staging" for "Redhat, Inc."
I suppose that our model should allow for more organizations (in a SaaS
sense, not accounts sense) to have the environment called "staging" and
that their agents should be independent.
Remember that inventory doesn't have a unique ID of the "staging"
environments for the particular organizations. Currently this is resolved
by having a set of tenants that are required to have unique names
and that you can use to start composing your path to the agents, i.e.
"Acme/staging/A" or "Redhat/staging/A".
If persona is a tenant, how would that work?
> - - Juca.
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2
>
> iQEcBAEBCAAGBQJVNkKoAAoJECKM1e+fkPrXtOcH/0LQiJv13ImuDSQF1+jkNbll
> P5t0zgxkCYs/2jsHD5KVGCc6lsq0HKfDjNv6/oqurNZyrUP0u5ATZxt2HDYxtrjm
> IYugq7Kg1P64eLwjXaVD7/WFaOaR8np4EXhd6OtKjfz8DyD1GSl8fTRQPGelK+ff
> gi+PEFbhMEkHkzG3TL2zhciBvueeS+TT+LH/bOnHX49gC826ABjK5LDN+YROPE/a
> ezytelXVkFyzyKBZjA31baHCAyr3G1qgA7Rq5Dg24VHUYgIRdg2O/ado2VhRTmPL
> Hw5hk+5BpS5m1tkEw9sFQPiCXKvPD0okJZcd6KzATyu0pJYsMNOxXfc42fOkOZI=
> =85NR
> -----END PGP SIGNATURE-----
>
From jpkroehling at redhat.com Tue Apr 21 10:04:11 2015
From: jpkroehling at redhat.com (=?UTF-8?B?SnVyYWNpIFBhaXjDo28gS3LDtmhsaW5n?=)
Date: Tue, 21 Apr 2015 16:04:11 +0200
Subject: [Hawkular-dev] Looking for a first project to integrate accounts
In-Reply-To: <142543204.4914633.1429622975024.JavaMail.zimbra@redhat.com>
References: <55361E5D.7090302@redhat.com>
<4269691.JhrSYD0rPu@localhost.localdomain>
<553642A8.7030803@redhat.com>
<142543204.4914633.1429622975024.JavaMail.zimbra@redhat.com>
Message-ID: <553658DB.9040105@redhat.com>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
On 04/21/2015 03:29 PM, Lukas Krejci wrote:
>> Is sharing of information possible between personas? It is not
>> possible in inventory between tenants currently so this is the
>> part where I struggle a bit.
- From accounts perspective, yes. See below.
>> You can imagine the inventory's tenants as "access points" to
>> disjoint subgraphs in the inventory. You only can access any data
>> if you know your tenant. Also, and possibly more importantly, no
>> entity in inventory is required to have a "globally" unique
>> identifier. The only thing unique is the path to the entity,
>> starting at the tenant, then down the environment, etc.
>
>> So if a user is a tenant they will not be able to even reference
>> data from other tenants.
There's a scenario that was discussed on demos and, I believe, on
previous threads. Those discussions impacted the modeling of the
tenants concept on the accounts side and one of the use cases is:
- - Acme, Inc is an organization
- - "Marketing" is an organization whose parent is "Acme, Inc"
- - "Finance" is an organization whose parent is "Acme, Inc"
- - "Finance" cannot see resources from "Marketing" or vice-versa
- - "Operations" is an organization whose parent is "Acme, Inc"
- - "Operations" should be able to monitor its own resources plus
resources from finance and operations, all in one (or more) dashboards.
>> I guess the my main struggle is that the inventory is modelled
>> after a "physical" layout of the monitoring data - data belongs
>> to some tenant and can be further classified/narrowed down by the
>> environment, etc.
As far as I can see, it can be kept this way. The data can be stored
in any way you prefer, while the access control part has different
storage and different ways of resolving who has access to what. Note
that there's a "resource" concept on Accounts which stores the owner
information, and that's independent from the one in, say, inventory.
>> In accounts, users/orgs/personas are very fluid concepts that can
>> inherit from each other, etc. while the classification of the
>> data they access is not that fluid.
Note that "user/orgs" abstracts to "persona". So, inventory would only
care about "persona" and would ask accounts if the current persona has
access to this resource. It should not matter to inventory if the
current persona (user or org) is different than the owner of the
resource, although inventory can keep track of this information for
other reasons, if needed.
>> Inventory's tenant is a crucial part to be able to address any
>> entity.
You mean, the tenant being part of the identifier? If so, that's
irrelevant for accounts. As long as you can provide me with a stable
identifier for the resource, I'm able to tell if you if the current
persona (user/org) has access to the resource.
>> So "knowing a current tenant" to check for permissions is quite
>> ok, but I am not sure I can "just know the current tenant" to be
>> able to address the data. I.e. 2 users are supposed to access
>> data from agent "A" in environment "staging" for "Acme, Inc.",
>> while a third user is supposed to access data from agent "A" in
>> environment "staging" for "Redhat, Inc."
Forgetting a bit about the "staging" part, this is how I see it:
- - User "jdoe" creates the organization "Acme, Inc", he is therefore
"Super User" of it.
- - User "jsmith" is added to "Acme, Inc" as "Super User"
- - Agent "a" is a resource that belongs to "Acme, Inc"
In that situation, user "jdoe" makes a request to the backend, which
Accounts translates to as being the persona "Acme, Inc". So, inventory
knows that it's related to the persona/tenant "Acme, Inc".
If you absolutely need to know who is the actual user for the request,
you can request it to the accounts API. In the usual case, however,
knowing the current "persona" should be enough.
>> I suppose that our model should allow for more organizations (in
>> a SaaS sense, not accounts sense) to have the environment called
>> "staging" and that their agents should be independent.
- From the accounts perspective, this is achievable.
>> Remember that inventory doesn't have a unique ID of the
>> "staging" environments for the particular organizations.
>> Currently this is resolved by having a set of tenants that are
>> required to have unique names and that you can use to start
>> composing your path to the agents, i.e. "Acme/staging/A" or
>> "Redhat/staging/A".
As far as I see it, "Acme" is an organization, "staging" is an
organization owned by "Acme" and "A" is a resource in "staging". From
Account's perspective, the owner is "staging" (from the Acme
organization), so, users who are "Administrators" on this organization
have access to this resource.
But do you mean that you don't have a unique ID for a specific
resource for a specific tenant? This is something I would need. Note
that it's not needed to be an UUID, I just need a value that you are
able to consistently provide to the accounts API when checking for the
permission. On the above example, it could very well be "Acme/staging/A"
.
- - Juca.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBCAAGBQJVNljbAAoJECKM1e+fkPrXQpEH/AjYbHyLFfs7IBrpEwwAfZwZ
IFzgX5cdXktO9loEvtxnH7nkSag+iWCIH2EJWVg2ql8YXr81UdyGlDSUl2NP+EtL
PFy3l8b7FbYp6SPby7CvyXHtmhsRe1SEUTAOcU5dn3ufPbwkRliPrEhyKL3hqOIH
Fz4kENeRugJyn8X48GCRP5EI4KSXUzN9F2zRFNP2Ub37QFN9njxt5e0E3J+ZDUeD
HC0g8o2nLkai37gZJX9eWm5NPJT83w7ynNrZKDTS3rkq3of+gfTlEv2yqWc/brgp
HFII4jp1VDQeRX+B/AUugzn879sLF+psJaRMq4Mls1NntznDVpDoO5bNOHr0T5c=
=k82w
-----END PGP SIGNATURE-----
From sebastian.laskawiec at gmail.com Wed Apr 22 04:11:48 2015
From: sebastian.laskawiec at gmail.com (=?UTF-8?Q?Sebastian_=C5=81askawiec?=)
Date: Wed, 22 Apr 2015 08:11:48 +0000
Subject: [Hawkular-dev] Looking for the opportunities code
Message-ID:
Hey!
My name is Sebastian and I'm a remote productization engineer for JBoss
Data Grid from Poland. I also contribute to the project New Castle (this is
a replacement for Brew) and I'm really interested in Hawkular as our
monitoring approach in the future.
I would love to help you with the coding in my free slots. Personally, I'm
very interested in cloud-related technologies, so I think I would fit in
Metrics Storage or Analytics. Could you please give me a hint where I could
start and how I could help?
I have also a small question regarding to the project's assumptions - do we
plan to analyze logs with Hawkular? This feature together with alerting
might create a lot of new use cases.
Thanks!
Sebastian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150422/7d4d14e3/attachment-0001.html
From theute at redhat.com Wed Apr 22 04:56:20 2015
From: theute at redhat.com (Thomas Heute)
Date: Wed, 22 Apr 2015 10:56:20 +0200
Subject: [Hawkular-dev] Looking for the opportunities code
In-Reply-To:
References:
Message-ID: <55376234.40000@redhat.com>
On 04/22/2015 10:11 AM, Sebastian ?askawiec wrote:
> Hey!
>
> My name is Sebastian and I'm a remote productization engineer for JBoss
> Data Grid from Poland. I also contribute to the project New Castle (this
> is a replacement for Brew) and I'm really interested in Hawkular as our
> monitoring approach in the future.
Great, thanks for approaching us !
> I would love to help you with the coding in my free slots. Personally,
> I'm very interested in cloud-related technologies, so I think I would
> fit in Metrics Storage or Analytics. Could you please give me a hint
> where I could start and how I could help?
What in specific do you enjoy or are you good at ?
We have few JIRAs in https://issues.jboss.org/browse/HWKMETRICS and
https://issues.jboss.org/browse/HAWKULAR
Feel free to join #hawkular on Freenode IRC if you wish to discuss
> I have also a small question regarding to the project's assumptions - do
> we plan to analyze logs with Hawkular? This feature together with
> alerting might create a lot of new use cases.
Yes, that will come later, likely a solution such as
http://fabric8.io/guide/logging.html (or that works well with it)
Thomas
>
> Thanks!
> Sebastian
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From theute at redhat.com Wed Apr 22 05:29:00 2015
From: theute at redhat.com (Thomas Heute)
Date: Wed, 22 Apr 2015 11:29:00 +0200
Subject: [Hawkular-dev] Looking for a first project to integrate accounts
In-Reply-To: <55361E5D.7090302@redhat.com>
References: <55361E5D.7090302@redhat.com>
Message-ID: <553769DC.3090305@redhat.com>
On 04/21/2015 11:54 AM, Juraci Paix?o Kr?hling wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> All,
>
> Hawkular Accounts have reached a point where it's possible for other
> components to integrate with it. As such, I would like to ask if
> there's a project that would volunteer for it, to be the first with
> this integration, so that I can fix possible integration bugs that
> might come from this experience.
>
> I know that you all are busy with the MVP, but if you think you can
> afford to spend, say, a day on this, I'll be ready to guide you.
Having a secured solution is part of an MVP so it's not a distraction
and should be a priority.
Multi-tenancy is also needed as this is assumed from the UI
Tomas
>
> Those are the items that I would like to see being used during this
> first integration:
>
> - - Securing the backend with Keycloak
> - - Consuming the tenant information (Persona)
> - - Protecting resources based on the Persona's role
>
> Needless to say, I'll support you in achieving this and will promptly
> fix the issues that may arise.
>
> If you need more information before you volunteer, you can take a look
> at the readme file from the accounts module:
>
> https://github.com/hawkular/hawkular-accounts
>
> - - Juca.
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2
>
> iQEcBAEBCAAGBQJVNh5dAAoJECKM1e+fkPrXiL8H/jGBE9/SDTD19GNPcdvsueKm
> qBKkR2bKX0FP+hKJjzDFgnEIq3HYV9UXCPyPC2pODUXnWIDUqHMoRUz+eF2rCtLT
> Q93tfuC3gE1Kn6fY1ZPs8l3fL8RZXjZWLx4q9Qnxey3roIJtDUFWKX777O0eBb+q
> EkO4zWbl42qwZCv0pWMdlUusWHDm9A1X6+G70cjGjl8nfRChNBm9oU2LpBWDo0jq
> Fkw9dToobLFt5O3MmjSBZo4xYF65WXIDsGdrfXJilERvtJJgWsiq8/sgEWMaNewv
> 0HitfhhkUbbW8XTYAqwDtYB2v4EllIge2klekPqu3vrBulOHLnYXVibwRWE0zdY=
> =6ath
> -----END PGP SIGNATURE-----
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From gbrown at redhat.com Wed Apr 22 06:47:29 2015
From: gbrown at redhat.com (Gary Brown)
Date: Wed, 22 Apr 2015 06:47:29 -0400 (EDT)
Subject: [Hawkular-dev] What is Business Transaction Management (prep for
F2F)
In-Reply-To: <1831068056.4645641.1429698309904.JavaMail.zimbra@redhat.com>
Message-ID: <1443849909.4662889.1429699649666.JavaMail.zimbra@redhat.com>
Hi all
As suggested recently by others, we want to focus the F2F sessions on discussions rather than presentations. So in that spirit, I thought it would be good to get the "What is Business Transaction Management" discussion out of the way as a ML thread, so that the F2F session can discuss what and how to build BTM in a Hawkular context.
Taking some excerpts from Wikipedia:
"Business transaction management (BTM), is the practice of managing information technology (IT) from a business transaction perspective. It provides a tool for tracking the flow of transactions across IT infrastructure, in addition to detection, alerting, and correction of unexpected changes in business or technical conditions. BTM provides visibility into the flow of transactions across infrastructure tiers, including a dynamic mapping of the application topology.
Using BTM, application support teams are able to search for transactions based on message context and content ? for instance, time of arrival or message type ? providing a way to isolate causes for common issues such as application exceptions, stalled transactions, and lower-level issues such as incorrect data values.
The ultimate goal of BTM is to improve service quality for users conducting business transactions while improving the effectiveness of the IT applications and infrastructure across which those transactions execute. The main benefit of BTM is its capacity to identify precisely where transactions are delayed within the IT infrastructure. BTM also aims to provide proactive problem prevention and the generation of business service intelligence for optimization of resource provisioning and virtualization."
Some of the applications of BTM listed are:
"BTM solutions capture all of the transaction instances in the production environment and as such can be used for monitoring as well as for analysis and planning. Some applications include:
* Outage avoidance and problem isolation: Identification and isolation of tier-specific performance and availability issues.
* Service level management: Monitoring of SLAs and alerting of threshold breaches both at the end-user and infrastructure tier level.
* Infrastructure optimization: Modification of the configuration of data center infrastructure to maximize utilization and improve performance.
* Capacity planning: Analysis of usage and performance trends in order to estimate future capacity requirements.
* Change management: Analysis of the impact of change on transaction execution.
* Cloud management: Track the end-to-end transaction flow across both cloud (private, hybrid, public) and dedicated (on-premises, off-premises) infrastructure."
Obviously we need to focus our efforts on the monitoring/alerting aspects initially, and this is what I am expecting the F2F discussion will be focused on, but a couple of these areas may be of interest in the future.
Any views on the above appreciated.
Regards
Gary
From mwringe at redhat.com Wed Apr 22 09:18:19 2015
From: mwringe at redhat.com (Matt Wringe)
Date: Wed, 22 Apr 2015 09:18:19 -0400
Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
In-Reply-To: <1890420879.2259162.1429538271466.JavaMail.zimbra@redhat.com>
References: <55318CBC.8010105@redhat.com>
<1890420879.2259162.1429538271466.JavaMail.zimbra@redhat.com>
Message-ID: <55379F9B.4010307@redhat.com>
On 20/04/15 09:57 AM, Viet Nguyen wrote:
> Matt,
> I was the last person who worked on that Docker build for Hawkular-metrics. Yes, it is obsolete and can be removed.
>
> FYI there's an automated Docker build of Kettle in DockerHub and a continuous deployment to a Kubernetes cluster
>
> Docker Hub:
> https://registry.hub.docker.com/u/hawkular/hawkular/
>
> CI Pipeline:
> https://docs.google.com/presentation/d/14zqOHOvXAB4uN7W_fWOub3ZD6txiS_Vp9cjUNIlj2yQ/edit?usp=sharing
I went through and have the docker images being built using a docker
maven plugin. So during the maven build, you can create the image and
push it out to a registry.
It works great on a local machine, one maven build and I have the docker
images and kubernetes application zip created. But looking at how the
current CI is done, it might not have been the best solution (it would
require the credentials of the docker hub user to be added into the CI
setup somewhere).
It might make more sense to do it the way the current CI is setup with
the kettle builds. Anyone have any preferences?
>
>
> Viet
>
>
>
>
> ----- Original Message -----
> From: "Matt Wringe"
> To: hawkular-dev at lists.jboss.org
> Sent: Friday, April 17, 2015 3:44:12 PM
> Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
>
> I have a new subproject in Hawkular Metrics which sets up creating
> components for Openshift/Fabric8
> (https://github.com/hawkular/hawkular-metrics/pull/200).
>
> There are 3 main parts
>
> Cassandra: creates a custom seed provider to support
> ReplicationControllers in Kubernetes, creates a folder/zip archive which
> can be used to generate a Docker image. It may make sense to move the
> Cassandra parts out to a separate project.
>
> Hawkular Metrics: creates a folder/zip archive which can be used to
> generate a Docker image
>
> Kubernetes: pulls everything together into a single kubernetes
> application. Can be used to deploy an application zip into fabric8 (via
> drag and drop in the web console or via the maven plugin) or deploy all
> the components into Openshift via the kubernetes.json configuration file.
>
> The docker images are not created and deployed to a docker registry as
> part of the build, it will just create a folder where you can run the
> docker build from. None of the maven docker plugins I looked at seemed
> to really work properly, so its still a manual process to do the build
> (and push to a registry). Its something which needs to be improved.
>
> The Cassandra service currently only supports adding new nodes to a
> cluster and not removing them via the ReplicationController. This is due
> to the replication factor being set to be 1 by default (which means when
> a node is removed, so is the data it contained).
>
> I believe the docker subproject of hawkular metrics is obsolete and can
> be removed
> (https://github.com/hawkular/hawkular-metrics/tree/master/docker), but
> someone please correct me if I am wrong. It's scripts are referring to
> the console which no longer exists as part of the project.
>
> - Matt
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From mwringe at redhat.com Wed Apr 22 10:16:15 2015
From: mwringe at redhat.com (Matt Wringe)
Date: Wed, 22 Apr 2015 10:16:15 -0400
Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
In-Reply-To: <55379F9B.4010307@redhat.com>
References: <55318CBC.8010105@redhat.com> <1890420879.2259162.1429538271466.JavaMail.zimbra@redhat.com>
<55379F9B.4010307@redhat.com>
Message-ID: <5537AD2F.5040806@redhat.com>
On 22/04/15 09:18 AM, Matt Wringe wrote:
> On 20/04/15 09:57 AM, Viet Nguyen wrote:
>> Matt,
>> I was the last person who worked on that Docker build for Hawkular-metrics. Yes, it is obsolete and can be removed.
>>
>> FYI there's an automated Docker build of Kettle in DockerHub and a continuous deployment to a Kubernetes cluster
>>
>> Docker Hub:
>> https://registry.hub.docker.com/u/hawkular/hawkular/
>>
>> CI Pipeline:
>> https://docs.google.com/presentation/d/14zqOHOvXAB4uN7W_fWOub3ZD6txiS_Vp9cjUNIlj2yQ/edit?usp=sharing
> I went through and have the docker images being built using a docker
> maven plugin. So during the maven build, you can create the image and
> push it out to a registry.
>
> It works great on a local machine, one maven build and I have the docker
> images and kubernetes application zip created. But looking at how the
> current CI is done, it might not have been the best solution (it would
> require the credentials of the docker hub user to be added into the CI
> setup somewhere).
>
> It might make more sense to do it the way the current CI is setup with
> the kettle builds. Anyone have any preferences?
Either way, the CI build way is also easy to setup. You would just need
to sets these up with the official accounts and add in the automated
build hooks:
https://registry.hub.docker.com/u/mwringe/docker-hawkular-cassandra/
https://github.com/mwringe/docker-hawkular-cassandra
https://registry.hub.docker.com/u/mwringe/docker-hawkular-metrics/
https://github.com/mwringe/docker-hawkular-metrics
>
>>
>> Viet
>>
>>
>>
>>
>> ----- Original Message -----
>> From: "Matt Wringe"
>> To: hawkular-dev at lists.jboss.org
>> Sent: Friday, April 17, 2015 3:44:12 PM
>> Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
>>
>> I have a new subproject in Hawkular Metrics which sets up creating
>> components for Openshift/Fabric8
>> (https://github.com/hawkular/hawkular-metrics/pull/200).
>>
>> There are 3 main parts
>>
>> Cassandra: creates a custom seed provider to support
>> ReplicationControllers in Kubernetes, creates a folder/zip archive which
>> can be used to generate a Docker image. It may make sense to move the
>> Cassandra parts out to a separate project.
>>
>> Hawkular Metrics: creates a folder/zip archive which can be used to
>> generate a Docker image
>>
>> Kubernetes: pulls everything together into a single kubernetes
>> application. Can be used to deploy an application zip into fabric8 (via
>> drag and drop in the web console or via the maven plugin) or deploy all
>> the components into Openshift via the kubernetes.json configuration file.
>>
>> The docker images are not created and deployed to a docker registry as
>> part of the build, it will just create a folder where you can run the
>> docker build from. None of the maven docker plugins I looked at seemed
>> to really work properly, so its still a manual process to do the build
>> (and push to a registry). Its something which needs to be improved.
>>
>> The Cassandra service currently only supports adding new nodes to a
>> cluster and not removing them via the ReplicationController. This is due
>> to the replication factor being set to be 1 by default (which means when
>> a node is removed, so is the data it contained).
>>
>> I believe the docker subproject of hawkular metrics is obsolete and can
>> be removed
>> (https://github.com/hawkular/hawkular-metrics/tree/master/docker), but
>> someone please correct me if I am wrong. It's scripts are referring to
>> the console which no longer exists as part of the project.
>>
>> - Matt
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From jkremser at redhat.com Thu Apr 23 07:19:23 2015
From: jkremser at redhat.com (Jiri Kremser)
Date: Thu, 23 Apr 2015 07:19:23 -0400 (EDT)
Subject: [Hawkular-dev] Serialization format for inventory relations
In-Reply-To: <1950611038.3536663.1429786481859.JavaMail.zimbra@redhat.com>
Message-ID: <950401333.3544653.1429787963840.JavaMail.zimbra@redhat.com>
Hello devs,
currently, the inventory REST API can't answer requests like 'give me all related entities to this entity' or similar. I am working on exposing the relationships. Although, it's not probably the use case the REST was designed for (relations are not resources), I would like to stick with standards as much as possible.
I suggest using the JSON-LD[1] standard as the underlying serialization format.
pros:
* w3c standard
* can be converted into RDF, RDFa, Turtle, etc. and stored in arbitrary triplestore (might be useful for some offline analysis, querying with SPARQL, etc)
* HATEOASS ready, because the ids are URIs
cons:
* not as concise as plain JSON
Here is an example of 1 relation/edge:
{
"@context": {
"inv": "http://hawkular.org/inventory/0.0.1",
"baseUrl": "http://127.0.0.1:8080/hawkular/inventory/"
},
"@id": "baseUrl:relationships/1337",
"inv:shortId": "2",
"@type": "inv:Relationship",
"inv:source": {
"@id": "baseUrl:tenants/acme",
"@type": "inv:Tenant",
"inv:shortId": "acme"
},
"inv:label": "contains",
"inv:target": {
"@id": "baseUrl:acme/resourceTypes/URL",
"@type": "inv:ResourceType",
"inv:shortId": "URL"
},
"inv:properties": {
"created": "2000-01-01",
"strength": 0.8
}
}
(inv:properties can be omitted)
The work is almost done in here[2]
[1]: http://www.w3.org/TR/json-ld/
[2]: https://github.com/hawkular/hawkular-inventory/pull/55
wdyt?
From hrupp at redhat.com Thu Apr 23 08:28:20 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Thu, 23 Apr 2015 14:28:20 +0200
Subject: [Hawkular-dev] Serialization format for inventory relations
In-Reply-To: <950401333.3544653.1429787963840.JavaMail.zimbra@redhat.com>
References: <950401333.3544653.1429787963840.JavaMail.zimbra@redhat.com>
Message-ID: <6DC369AD-7972-4BB9-9F83-D88C624684D3@redhat.com>
On 23 Apr 2015, at 13:19, Jiri Kremser wrote:
> exposing the relationships. Although, it's not probably the use case
> the REST was designed for (relations are not resources), I would like
No, but relations are links
Link: rel="child", href="http://bla/bla"
Are you talking here about exposing the relationships only?
If you don't plan to include the resources in the result,
would be a list of links not enough?
> Here is an example of 1 relation/edge:
>
> {
> "@context": {
> "inv": "http://hawkular.org/inventory/0.0.1",
> "baseUrl": "http://127.0.0.1:8080/hawkular/inventory/"
> },
> "@id": "baseUrl:relationships/1337",
> "inv:shortId": "2",
> "@type": "inv:Relationship",
> "inv:source": {
> "@id": "baseUrl:tenants/acme",
> "@type": "inv:Tenant",
> "inv:shortId": "acme"
> },
> "inv:label": "contains",
> "inv:target": {
> "@id": "baseUrl:acme/resourceTypes/URL",
> "@type": "inv:ResourceType",
> "inv:shortId": "URL"
> },
This doesn't really show me its strengths at the moment and looks
bloated. But perhaps the strength is that the relationship target
has its type supplied?
Do we expect to use some existing clients to browse and visualize
our inventory using JSON-LD?
The other question is if the query is 'give me all related entities to
this entity'
as you describe above, should we really "only" return the links? Or how
will we treat the fetching of the target entities? Can they optionally
be
embedded in the answer?
From mwringe at redhat.com Thu Apr 23 09:35:24 2015
From: mwringe at redhat.com (Matt Wringe)
Date: Thu, 23 Apr 2015 09:35:24 -0400
Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
In-Reply-To: <5537AD2F.5040806@redhat.com>
References: <55318CBC.8010105@redhat.com> <1890420879.2259162.1429538271466.JavaMail.zimbra@redhat.com> <55379F9B.4010307@redhat.com>
<5537AD2F.5040806@redhat.com>
Message-ID: <5538F51C.4040807@redhat.com>
On 22/04/15 10:16 AM, Matt Wringe wrote:
>
> On 22/04/15 09:18 AM, Matt Wringe wrote:
>> On 20/04/15 09:57 AM, Viet Nguyen wrote:
>>> Matt,
>>> I was the last person who worked on that Docker build for Hawkular-metrics. Yes, it is obsolete and can be removed.
>>>
>>> FYI there's an automated Docker build of Kettle in DockerHub and a continuous deployment to a Kubernetes cluster
>>>
>>> Docker Hub:
>>> https://registry.hub.docker.com/u/hawkular/hawkular/
>>>
>>> CI Pipeline:
>>> https://docs.google.com/presentation/d/14zqOHOvXAB4uN7W_fWOub3ZD6txiS_Vp9cjUNIlj2yQ/edit?usp=sharing
>> I went through and have the docker images being built using a docker
>> maven plugin. So during the maven build, you can create the image and
>> push it out to a registry.
>>
>> It works great on a local machine, one maven build and I have the docker
>> images and kubernetes application zip created. But looking at how the
>> current CI is done, it might not have been the best solution (it would
>> require the credentials of the docker hub user to be added into the CI
>> setup somewhere).
>>
>> It might make more sense to do it the way the current CI is setup with
>> the kettle builds. Anyone have any preferences?
> Either way, the CI build way is also easy to setup. You would just need
> to sets these up with the official accounts and add in the automated
> build hooks:
>
> https://registry.hub.docker.com/u/mwringe/docker-hawkular-cassandra/
> https://github.com/mwringe/docker-hawkular-cassandra
>
> https://registry.hub.docker.com/u/mwringe/docker-hawkular-metrics/
> https://github.com/mwringe/docker-hawkular-metrics
We really need to get this setup as part of the build so that we can
hand off the containers and kubernetes application. I can't set this up
myself as we need whomever is able to access the CI builds and docker
hub account to perform the setup.
I have proposed two different setups, and they both should work for the
CI builds: We can either build it via the maven plugin in the CI builds,
or we can use the existing docker hub automated builds (like what is
done with the kettle docker images).
The only thing about the maven build is that we need to store the user
credentials in the CI configuration somewhere and need access to a
machine capable of performing docker image builds.
Everything else in the maven build is handled much better (everything
kept in one place, versions are automatically updated, names are kept in
sync between the docker images and kubernetes applications, can easier
push out to different docker registries, much better developer
experience for local builds, etc).
The docker hub automated builds are probably faster to setup right now
though since we already know we have everything working for it.
Note: the maven docker setup is not going away, we need that for
developer builds (either locally or pushing out to developer own docker
hub account). The docker hub automated builds are essentially useless
from a developer's perspective, but they work fine for CI builds.
>>> Viet
>>>
>>>
>>>
>>>
>>> ----- Original Message -----
>>> From: "Matt Wringe"
>>> To: hawkular-dev at lists.jboss.org
>>> Sent: Friday, April 17, 2015 3:44:12 PM
>>> Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
>>>
>>> I have a new subproject in Hawkular Metrics which sets up creating
>>> components for Openshift/Fabric8
>>> (https://github.com/hawkular/hawkular-metrics/pull/200).
>>>
>>> There are 3 main parts
>>>
>>> Cassandra: creates a custom seed provider to support
>>> ReplicationControllers in Kubernetes, creates a folder/zip archive which
>>> can be used to generate a Docker image. It may make sense to move the
>>> Cassandra parts out to a separate project.
>>>
>>> Hawkular Metrics: creates a folder/zip archive which can be used to
>>> generate a Docker image
>>>
>>> Kubernetes: pulls everything together into a single kubernetes
>>> application. Can be used to deploy an application zip into fabric8 (via
>>> drag and drop in the web console or via the maven plugin) or deploy all
>>> the components into Openshift via the kubernetes.json configuration file.
>>>
>>> The docker images are not created and deployed to a docker registry as
>>> part of the build, it will just create a folder where you can run the
>>> docker build from. None of the maven docker plugins I looked at seemed
>>> to really work properly, so its still a manual process to do the build
>>> (and push to a registry). Its something which needs to be improved.
>>>
>>> The Cassandra service currently only supports adding new nodes to a
>>> cluster and not removing them via the ReplicationController. This is due
>>> to the replication factor being set to be 1 by default (which means when
>>> a node is removed, so is the data it contained).
>>>
>>> I believe the docker subproject of hawkular metrics is obsolete and can
>>> be removed
>>> (https://github.com/hawkular/hawkular-metrics/tree/master/docker), but
>>> someone please correct me if I am wrong. It's scripts are referring to
>>> the console which no longer exists as part of the project.
>>>
>>> - Matt
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From tsegismo at redhat.com Thu Apr 23 10:10:00 2015
From: tsegismo at redhat.com (Thomas Segismont)
Date: Thu, 23 Apr 2015 16:10:00 +0200
Subject: [Hawkular-dev] Serialization format for inventory relations
In-Reply-To: <950401333.3544653.1429787963840.JavaMail.zimbra@redhat.com>
References: <950401333.3544653.1429787963840.JavaMail.zimbra@redhat.com>
Message-ID: <5538FD38.607@redhat.com>
Le 23/04/2015 13:19, Jiri Kremser a ?crit :
> cons:
> * not as concise as plain JSON
Will it be possible to switch to plain JSON representation?
From jkremser at redhat.com Thu Apr 23 10:13:48 2015
From: jkremser at redhat.com (Jiri Kremser)
Date: Thu, 23 Apr 2015 10:13:48 -0400 (EDT)
Subject: [Hawkular-dev] Serialization format for inventory relations
In-Reply-To: <6DC369AD-7972-4BB9-9F83-D88C624684D3@redhat.com>
References: <950401333.3544653.1429787963840.JavaMail.zimbra@redhat.com>
<6DC369AD-7972-4BB9-9F83-D88C624684D3@redhat.com>
Message-ID: <355819095.3615953.1429798428065.JavaMail.zimbra@redhat.com>
hi,
| Link: rel="child", href="http://bla/bla"
|
|
| Are you talking here about exposing the relationships only?
| If you don't plan to include the resources in the result,
| would be a list of links not enough?
The source and the target of the relationship are also present in the data. This is how it works:
send GET to /hawkular/inventory/.../relationships and you'll get all the relationships of the ...
so for instance /hawkular/inventory/acme/prod/resources/host42/relationships will return all the relationships (and the basic info of the other side of this relationship, i.e. where host42 functions as a target and those where host42 acts as a source)
I guess "Link: rel="child", href="http://bla/bla" is a good way how to address one resource from another one, but we need to expose the information about the relationship itself, it can have properties.
| > Here is an example of 1 relation/edge:
| >
| > {
| > "@context": {
| > "inv": "http://hawkular.org/inventory/0.0.1",
| > "baseUrl": "http://127.0.0.1:8080/hawkular/inventory/"
| > },
| > "@id": "baseUrl:relationships/1337",
| > "inv:shortId": "2",
| > "@type": "inv:Relationship",
| > "inv:source": {
| > "@id": "baseUrl:tenants/acme",
| > "@type": "inv:Tenant",
| > "inv:shortId": "acme"
| > },
| > "inv:label": "contains",
| > "inv:target": {
| > "@id": "baseUrl:acme/resourceTypes/URL",
| > "@type": "inv:ResourceType",
| > "inv:shortId": "URL"
| > },
|
| This doesn't really show me its strengths at the moment and looks
| bloated. But perhaps the strength is that the relationship target
| has its type supplied?
in fact it could look like this and it'll be still json-ld:
{
"@context": "http://hawkular.org/inventory/0.0.1/relationship.jsonld",
"@id": "baseUrl:relationships/1337",
"shortId": "1337",
"source": "baseUrl:tenants/acme",
"label": "contains",
"target": "baseUrl:acme/resourceTypes/URL"
}
It's up to us how much information we expose, almost everything can be remotely referenced. But I think the entity type is a good thing to have in the data.
| Do we expect to use some existing clients to browse and visualize
| our inventory using JSON-LD?
it's one of the standards for storing the triples and it can be converted [1] to RDF, so yes, there are tools out there for visualizing the structure
| The other question is if the query is 'give me all related entities to
| this entity'
| as you describe above, should we really "only" return the links?
definitely, this can be tweak once we find out what we want from the UI perspective. There can be a path/query parameter that will embed the entities (with all the fields including the property hashmap) into the response instead of the link.
| Or how
| will we treat the fetching of the target entities? Can they optionally
| be embedded in the answer?
yes, json-ld supports embedding [2]. Currently, the source and target contain the name (shortId), type and the URL if we need to fetch more/less information.
[1]: http://www.w3.org/TR/json-ld-api/#deserialize-json-ld-to-rdf-algorithm
[2]: https://www.youtube.com/watch?v=UmvWk_TQ30A&t=3m05s
From jkremser at redhat.com Thu Apr 23 10:16:32 2015
From: jkremser at redhat.com (Jiri Kremser)
Date: Thu, 23 Apr 2015 10:16:32 -0400 (EDT)
Subject: [Hawkular-dev] Serialization format for inventory relations
In-Reply-To: <5538FD38.607@redhat.com>
References: <950401333.3544653.1429787963840.JavaMail.zimbra@redhat.com>
<5538FD38.607@redhat.com>
Message-ID: <1480096154.3618343.1429798592415.JavaMail.zimbra@redhat.com>
| Will it be possible to switch to plain JSON representation?
Well, it's easy to do that, but I am not sure whether it is a good idea to have two serialization formats.
It is a JSON, so it's easily consumable in JS
From vnguyen at redhat.com Thu Apr 23 12:28:39 2015
From: vnguyen at redhat.com (Viet Nguyen)
Date: Thu, 23 Apr 2015 12:28:39 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
In-Reply-To: <5538F51C.4040807@redhat.com>
References: <55318CBC.8010105@redhat.com>
<1890420879.2259162.1429538271466.JavaMail.zimbra@redhat.com>
<55379F9B.4010307@redhat.com> <5537AD2F.5040806@redhat.com>
<5538F51C.4040807@redhat.com>
Message-ID: <1499876691.3669790.1429806519900.JavaMail.zimbra@redhat.com>
Matt,
I have not been intimately involved with hawkular dev due to other obligations. I'm curious about your use case, running metrics as an independent app... as I always thought metrics, inventory, alert, etc are to meant to be assembled together.
I would be happy to assist with the Dockerhub build steps. Let's have a chat early next week?
Viet
----- Original Message -----
From: "Matt Wringe"
To: hawkular-dev at lists.jboss.org
Sent: Thursday, April 23, 2015 6:35:24 AM
Subject: Re: [Hawkular-dev] Hawkular Metrics Openshift Containers
On 22/04/15 10:16 AM, Matt Wringe wrote:
>
> On 22/04/15 09:18 AM, Matt Wringe wrote:
>> On 20/04/15 09:57 AM, Viet Nguyen wrote:
>>> Matt,
>>> I was the last person who worked on that Docker build for Hawkular-metrics. Yes, it is obsolete and can be removed.
>>>
>>> FYI there's an automated Docker build of Kettle in DockerHub and a continuous deployment to a Kubernetes cluster
>>>
>>> Docker Hub:
>>> https://registry.hub.docker.com/u/hawkular/hawkular/
>>>
>>> CI Pipeline:
>>> https://docs.google.com/presentation/d/14zqOHOvXAB4uN7W_fWOub3ZD6txiS_Vp9cjUNIlj2yQ/edit?usp=sharing
>> I went through and have the docker images being built using a docker
>> maven plugin. So during the maven build, you can create the image and
>> push it out to a registry.
>>
>> It works great on a local machine, one maven build and I have the docker
>> images and kubernetes application zip created. But looking at how the
>> current CI is done, it might not have been the best solution (it would
>> require the credentials of the docker hub user to be added into the CI
>> setup somewhere).
>>
>> It might make more sense to do it the way the current CI is setup with
>> the kettle builds. Anyone have any preferences?
> Either way, the CI build way is also easy to setup. You would just need
> to sets these up with the official accounts and add in the automated
> build hooks:
>
> https://registry.hub.docker.com/u/mwringe/docker-hawkular-cassandra/
> https://github.com/mwringe/docker-hawkular-cassandra
>
> https://registry.hub.docker.com/u/mwringe/docker-hawkular-metrics/
> https://github.com/mwringe/docker-hawkular-metrics
We really need to get this setup as part of the build so that we can
hand off the containers and kubernetes application. I can't set this up
myself as we need whomever is able to access the CI builds and docker
hub account to perform the setup.
I have proposed two different setups, and they both should work for the
CI builds: We can either build it via the maven plugin in the CI builds,
or we can use the existing docker hub automated builds (like what is
done with the kettle docker images).
The only thing about the maven build is that we need to store the user
credentials in the CI configuration somewhere and need access to a
machine capable of performing docker image builds.
Everything else in the maven build is handled much better (everything
kept in one place, versions are automatically updated, names are kept in
sync between the docker images and kubernetes applications, can easier
push out to different docker registries, much better developer
experience for local builds, etc).
The docker hub automated builds are probably faster to setup right now
though since we already know we have everything working for it.
Note: the maven docker setup is not going away, we need that for
developer builds (either locally or pushing out to developer own docker
hub account). The docker hub automated builds are essentially useless
from a developer's perspective, but they work fine for CI builds.
>>> Viet
>>>
>>>
>>>
>>>
>>> ----- Original Message -----
>>> From: "Matt Wringe"
>>> To: hawkular-dev at lists.jboss.org
>>> Sent: Friday, April 17, 2015 3:44:12 PM
>>> Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
>>>
>>> I have a new subproject in Hawkular Metrics which sets up creating
>>> components for Openshift/Fabric8
>>> (https://github.com/hawkular/hawkular-metrics/pull/200).
>>>
>>> There are 3 main parts
>>>
>>> Cassandra: creates a custom seed provider to support
>>> ReplicationControllers in Kubernetes, creates a folder/zip archive which
>>> can be used to generate a Docker image. It may make sense to move the
>>> Cassandra parts out to a separate project.
>>>
>>> Hawkular Metrics: creates a folder/zip archive which can be used to
>>> generate a Docker image
>>>
>>> Kubernetes: pulls everything together into a single kubernetes
>>> application. Can be used to deploy an application zip into fabric8 (via
>>> drag and drop in the web console or via the maven plugin) or deploy all
>>> the components into Openshift via the kubernetes.json configuration file.
>>>
>>> The docker images are not created and deployed to a docker registry as
>>> part of the build, it will just create a folder where you can run the
>>> docker build from. None of the maven docker plugins I looked at seemed
>>> to really work properly, so its still a manual process to do the build
>>> (and push to a registry). Its something which needs to be improved.
>>>
>>> The Cassandra service currently only supports adding new nodes to a
>>> cluster and not removing them via the ReplicationController. This is due
>>> to the replication factor being set to be 1 by default (which means when
>>> a node is removed, so is the data it contained).
>>>
>>> I believe the docker subproject of hawkular metrics is obsolete and can
>>> be removed
>>> (https://github.com/hawkular/hawkular-metrics/tree/master/docker), but
>>> someone please correct me if I am wrong. It's scripts are referring to
>>> the console which no longer exists as part of the project.
>>>
>>> - Matt
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
_______________________________________________
hawkular-dev mailing list
hawkular-dev at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hawkular-dev
From jshaughn at redhat.com Fri Apr 24 09:15:09 2015
From: jshaughn at redhat.com (Jay Shaughnessy)
Date: Fri, 24 Apr 2015 09:15:09 -0400
Subject: [Hawkular-dev] What is Business Transaction Management (prep
for F2F)
In-Reply-To: <1443849909.4662889.1429699649666.JavaMail.zimbra@redhat.com>
References: <1443849909.4662889.1429699649666.JavaMail.zimbra@redhat.com>
Message-ID: <553A41DD.1040109@redhat.com>
Thanks for the jump start, Gary,
Is there any active BTM going on in the RH Middleware product set
today? Anything collecting information that might feed into Hawkular?
How about in a containerized deployment env? Sorry if these are naive
questions, just trying to get handle on the sort of data we may be
looking at, and how it gets correlated. Or, would BTM be more
interested in just using H Alerting to generate alerts and take
automated actions?
On 4/22/2015 6:47 AM, Gary Brown wrote:
> Hi all
>
> As suggested recently by others, we want to focus the F2F sessions on discussions rather than presentations. So in that spirit, I thought it would be good to get the "What is Business Transaction Management" discussion out of the way as a ML thread, so that the F2F session can discuss what and how to build BTM in a Hawkular context.
>
> Taking some excerpts from Wikipedia:
>
> "Business transaction management (BTM), is the practice of managing information technology (IT) from a business transaction perspective. It provides a tool for tracking the flow of transactions across IT infrastructure, in addition to detection, alerting, and correction of unexpected changes in business or technical conditions. BTM provides visibility into the flow of transactions across infrastructure tiers, including a dynamic mapping of the application topology.
>
> Using BTM, application support teams are able to search for transactions based on message context and content ? for instance, time of arrival or message type ? providing a way to isolate causes for common issues such as application exceptions, stalled transactions, and lower-level issues such as incorrect data values.
>
> The ultimate goal of BTM is to improve service quality for users conducting business transactions while improving the effectiveness of the IT applications and infrastructure across which those transactions execute. The main benefit of BTM is its capacity to identify precisely where transactions are delayed within the IT infrastructure. BTM also aims to provide proactive problem prevention and the generation of business service intelligence for optimization of resource provisioning and virtualization."
>
> Some of the applications of BTM listed are:
>
> "BTM solutions capture all of the transaction instances in the production environment and as such can be used for monitoring as well as for analysis and planning. Some applications include:
>
> * Outage avoidance and problem isolation: Identification and isolation of tier-specific performance and availability issues.
> * Service level management: Monitoring of SLAs and alerting of threshold breaches both at the end-user and infrastructure tier level.
> * Infrastructure optimization: Modification of the configuration of data center infrastructure to maximize utilization and improve performance.
> * Capacity planning: Analysis of usage and performance trends in order to estimate future capacity requirements.
> * Change management: Analysis of the impact of change on transaction execution.
> * Cloud management: Track the end-to-end transaction flow across both cloud (private, hybrid, public) and dedicated (on-premises, off-premises) infrastructure."
>
> Obviously we need to focus our efforts on the monitoring/alerting aspects initially, and this is what I am expecting the F2F discussion will be focused on, but a couple of these areas may be of interest in the future.
>
> Any views on the above appreciated.
>
> Regards
> Gary
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150424/f1a7fc34/attachment-0001.html
From gbrown at redhat.com Fri Apr 24 09:23:42 2015
From: gbrown at redhat.com (Gary Brown)
Date: Fri, 24 Apr 2015 09:23:42 -0400 (EDT)
Subject: [Hawkular-dev] What is Business Transaction Management (prep
for F2F)
In-Reply-To: <553A41DD.1040109@redhat.com>
References: <1443849909.4662889.1429699649666.JavaMail.zimbra@redhat.com>
<553A41DD.1040109@redhat.com>
Message-ID: <3002676.6132995.1429881822552.JavaMail.zimbra@redhat.com>
Hi Jay
Currently I think BTM in RH is limited - RTGov has the ability to provide a call trace, but correlation across servers was not properly supported, and I think Fuse has the ability to trace activities, but again within a single VM.
So one of the main focuses of this new project is providing proper tracability of business transactions across servers and work well across on-premises and cloud environments.
The current thought is the trace fragments from individual servers would be captured and correlated, generating relevant metrics to H Metrics which then would feed into H Alerts to take actions.
Regards
Gary
----- Original Message -----
>
> Thanks for the jump start, Gary,
>
> Is there any active BTM going on in the RH Middleware product set today?
> Anything collecting information that might feed into Hawkular? How about in
> a containerized deployment env? Sorry if these are naive questions, just
> trying to get handle on the sort of data we may be looking at, and how it
> gets correlated. Or, would BTM be more interested in just using H Alerting
> to generate alerts and take automated actions?
>
>
> On 4/22/2015 6:47 AM, Gary Brown wrote:
>
>
>
> Hi all
>
> As suggested recently by others, we want to focus the F2F sessions on
> discussions rather than presentations. So in that spirit, I thought it would
> be good to get the "What is Business Transaction Management" discussion out
> of the way as a ML thread, so that the F2F session can discuss what and how
> to build BTM in a Hawkular context.
>
> Taking some excerpts from Wikipedia:
>
> "Business transaction management (BTM), is the practice of managing
> information technology (IT) from a business transaction perspective. It
> provides a tool for tracking the flow of transactions across IT
> infrastructure, in addition to detection, alerting, and correction of
> unexpected changes in business or technical conditions. BTM provides
> visibility into the flow of transactions across infrastructure tiers,
> including a dynamic mapping of the application topology.
>
> Using BTM, application support teams are able to search for transactions
> based on message context and content ? for instance, time of arrival or
> message type ? providing a way to isolate causes for common issues such as
> application exceptions, stalled transactions, and lower-level issues such as
> incorrect data values.
>
> The ultimate goal of BTM is to improve service quality for users conducting
> business transactions while improving the effectiveness of the IT
> applications and infrastructure across which those transactions execute. The
> main benefit of BTM is its capacity to identify precisely where transactions
> are delayed within the IT infrastructure. BTM also aims to provide proactive
> problem prevention and the generation of business service intelligence for
> optimization of resource provisioning and virtualization."
>
> Some of the applications of BTM listed are:
>
> "BTM solutions capture all of the transaction instances in the production
> environment and as such can be used for monitoring as well as for analysis
> and planning. Some applications include:
>
> * Outage avoidance and problem isolation: Identification and isolation of
> tier-specific performance and availability issues.
> * Service level management: Monitoring of SLAs and alerting of threshold
> breaches both at the end-user and infrastructure tier level.
> * Infrastructure optimization: Modification of the configuration of data
> center infrastructure to maximize utilization and improve performance.
> * Capacity planning: Analysis of usage and performance trends in order to
> estimate future capacity requirements.
> * Change management: Analysis of the impact of change on transaction
> execution.
> * Cloud management: Track the end-to-end transaction flow across both
> cloud (private, hybrid, public) and dedicated (on-premises,
> off-premises) infrastructure."
>
> Obviously we need to focus our efforts on the monitoring/alerting aspects
> initially, and this is what I am expecting the F2F discussion will be
> focused on, but a couple of these areas may be of interest in the future.
>
> Any views on the above appreciated.
>
> Regards
> Gary
>
> _______________________________________________
> hawkular-dev mailing list hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From mazz at redhat.com Fri Apr 24 10:05:29 2015
From: mazz at redhat.com (John Mazzitelli)
Date: Fri, 24 Apr 2015 10:05:29 -0400 (EDT)
Subject: [Hawkular-dev] WildFly NoSQL integration prototype
In-Reply-To: <553A4CA6.70905@redhat.com>
References: <553A4CA6.70905@redhat.com>
Message-ID: <1368169286.5864494.1429884329920.JavaMail.zimbra@redhat.com>
cross-posting from the wildfly-dev list - could be of interest to us.
----- Forwarded Message -----
To: "WildFly Dev List"
Sent: Friday, April 24, 2015 10:01:10 AM
Subject: [wildfly-dev] WildFly NoSQL integration prototype
Are you interested in allowing NoSQL databases access from WildFly
application deployments? This email is about an integration effort to
allow WildFly applications to use NoSQL. Feedback is welcome on this
effort, as well as help in improving [1]. Some basic unit tests are
already added that show a session bean reading/writing MongoDB [2] +
Cassandra [3] databases. In order for the tests to pass, the local
machine must already be running MongoDB or Cassandra databases.
1. Things that currently (seems to be) working in the prototype:
* During WildFly startup, MongoDB/Cassandra databases are connected to
based on settings in their respective subsystems. See the configuration
example [4].
* Applications can access native MongoDB/Cassandra objects that
represent database connections (with internal native connection
pooling). See @Resource example [2][3]. Will see how the requirements
evolve going forward and whether @Resource is the right way and/or
whether other annotations are needed.
2. Currently not working in the prototype:
* Multiple hosts/ports cannot be specified yet for target database.
* Protection against applications closing pooled connections.
* NoSQL drivers currently may create threads in EE application threads
which could leak ClassLoaders/AccessControlContexts. One solution might
be to contribute a patch that allows WildFly to do the thread creation
in some fashion for the NoSQL drivers.
* We have not (yet) tried using (Java) security manager support with the
NoSQL driver clients.
* Additional NoSQL connection attributes need to be added to the NoSQL
subsystems.
* Native NoSQL class objects are bound to JNDI currently (e.g.
MongoClient). We might want to bind wrapper or proxy objects so that we
can extend the NoSQL classes or in some cases, prevent certain actions
(e.g. prevent calls to MongoClient.close()). Perhaps we will end up
with a mixed approach, where we could extend the NoSQL driver if that is
the only way to manage it, or contribute a listener patch for WildFly to
get control during certain events (e.g. for ignoring close of pooled
database connections).
* The prototype currently gives all (WildFly) deployments access to the
Cassandra/MongoDB driver module classloaders. This is likely to change
but not yet sure to what.
3. The Weld (CDI) project is also looking at NoSQL enhancements, as is
the Narayana project. There is also the Hibernate OGM project that is
pushing on JPA integration and will also help contribute changes to the
NoSQL drivers that are needed for WildFly integration (e.g. introduce
alternative way for NoSQL drivers manage thread creation for background
task execution).
4. We will need a place to track issues for NoSQL integration. If the
NoSQL integration changes are merged directly into WildFly, perhaps we
could have a nosql category under https://issues.jboss.org/browse/WFLY.
5. You can view outstanding issues in the MongoDB server [5], Java
driver [6] to get feel for problems that others have run into (just like
you would with WildFly). You can view outstanding issues in the
Cassandra server [7] and Java driver [8] to get a feel for problems as well.
6. Infinispan [9] integration in WildFly is still going strong.
Infinispan is still the backbone of WildFly clustering and also
available for applications to use as a datasource.
7. The standalone.xml settings [4] will soon change (would like to
eliminate the "name=default", add more attributes and get the multiple
host/ports wired in).
8. If the NoSQL unit tests do stay in the WildFly repo, they will need
to be disabled by default, as most WildFly developers will not have a
NoSQL database running. Speaking of which, we need to wire the unit
tests to update the standalone.xml to contain the MongoDB/Cassandra
subsystem settings [4].
9. What version of NoSQL databases will work with the WildFly NoSQL
integration? At this point, we will only work with one version of each
NoSQL database that is integrated with. Because we are likely to need
some changes in the NoSQL client drivers, we will work with the upstream
communities to ensure the NoSQL driver code can run in an EE container
thread, without causing leaks. First we have to identity the changes
that we need (e.g. find some actual leaks that I only suspect will
happen at this point and propose some changes). The Hibernate OGM team
is going to help with the driver patches (thanks Hibernate OGM team! :-)
10. Going forward, how can WildFly extend the NoSQL (client driver
side) capabilities to improve the different application life cycles
through development, test, production?
Scott
[1] https://github.com/scottmarlow/wildfly/tree/nosql-dev
[2]
https://github.com/scottmarlow/wildfly/blob/nosql-dev/testsuite/compat/src/test/java/org/jboss/as/test/compat/nosql/mongodb/StatefulTestBean.java#L23
[3]
https://github.com/scottmarlow/wildfly/blob/nosql-dev/testsuite/compat/src/test/java/org/jboss/as/test/compat/nosql/cassandra/StatefulTestBean.java#L19
[4] https://gist.github.com/scottmarlow/b8196bdc56431bb171c8
[5] https://jira.mongodb.org/browse/SERVER
[6] https://jira.mongodb.org/browse/JAVA
[7] https://issues.apache.org/jira/browse/CASSANDRA
[8] https://datastax-oss.atlassian.net/browse/JAVA
[9] http://infinispan.org
_______________________________________________
wildfly-dev mailing list
wildfly-dev at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/wildfly-dev
From hrupp at redhat.com Fri Apr 24 11:08:56 2015
From: hrupp at redhat.com (Heiko W.Rupp)
Date: Fri, 24 Apr 2015 17:08:56 +0200
Subject: [Hawkular-dev] REST-api pagination
Message-ID:
Hey,
triggered by https://issues.jboss.org/browse/HWKINVENT-33
and https://issues.jboss.org/browse/HAWKULAR-125
we should make sure that all the Hawkular-subprojects use the
same pagination mechanism in the REST-endpoints.
== Why pagination?
Pagination serves two main purposes
* Limit the work the server has to do by not returning all results at
once
* Limit the work a client has to do with a huge list of results.
The limiting of work not only applies to CPU time, but also to memory
consumption
and in the case of remote clients also to load time. Smaller lists just
load faster.
== What is there?
Inseide RHQ we use both: Link-headers and paging information
inside the returned objects
There are 'page', 'ps' for page number and ps for page size,
have links to 'prev', 'next','current' and 'last' (if applicable)
And an additional header "X-collection-size" for the total number of
items
See
https://github.com/rhq-project/rhq/blob/master/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/rest/AbstractRestBean.java#L454
and
https://github.com/rhq-project/rhq/blob/master/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/rest/AbstractRestBean.java#L505
There is RFC5988 that talks about linking headers and which defines a
number of link types (
http://tools.ietf.org/html/rfc5988#section-6.2.2 ), from where the RHQ
ones were taken.
This url
http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api#pagination
has some "best practices" (defined by whom?) that are basically like the
RHQ link headers,
but instead of using 'ps' for the page size, they use 'per_page', which
is apparently what GitHub
does. Also the total collection count is 'X-Total-Count' and not RHQ's
'X-collection-size'.
We had a discussion about the style (link/body) in the past:
http://pilhuhn.blogspot.de/2013/02/best-practice-for-paging-in-restful-apis.html
and also the objections from the JS side, who have issues getting at the
http-headers, but can easily digest body elements), which led to support
both paging in body and headers depending on the media type requested (
see
https://github.com/rhq-project/rhq/blob/master/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/rest/AbstractRestBean.java#L413
)
For convenience I suggest to copy over the methods from RHQ and re-use
them.
From jpkroehling at redhat.com Mon Apr 27 04:35:28 2015
From: jpkroehling at redhat.com (=?windows-1252?Q?Juraci_Paix=E3o_Kr=F6hling?=)
Date: Mon, 27 Apr 2015 10:35:28 +0200
Subject: [Hawkular-dev] Looking for a first project to integrate accounts
In-Reply-To: <55361E5D.7090302@redhat.com>
References: <55361E5D.7090302@redhat.com>
Message-ID: <553DF4D0.1080709@redhat.com>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
All,
I would love to get one component first and help implement this
integration, so that problems and missing features would be already
fixed at the time the other components start doing the integration.
If you are interested in having your component integrated, let me know
and we can work something out.
In case you are unsure about what needs to be done, there are a couple
of documents that could be helpful:
https://github.com/hawkular/hawkular-accounts -- Readme file
http://www.hawkular.org/docs/dev/accounts.html
Thanks!
- - Juca.
On 04/21/2015 11:54 AM, Juraci Paix?o Kr?hling wrote:
> All,
>
> Hawkular Accounts have reached a point where it's possible for
> other components to integrate with it. As such, I would like to ask
> if there's a project that would volunteer for it, to be the first
> with this integration, so that I can fix possible integration bugs
> that might come from this experience.
>
> I know that you all are busy with the MVP, but if you think you
> can afford to spend, say, a day on this, I'll be ready to guide
> you.
>
> Those are the items that I would like to see being used during
> this first integration:
>
> - Securing the backend with Keycloak - Consuming the tenant
> information (Persona) - Protecting resources based on the Persona's
> role
>
> Needless to say, I'll support you in achieving this and will
> promptly fix the issues that may arise.
>
> If you need more information before you volunteer, you can take a
> look at the readme file from the accounts module:
>
> https://github.com/hawkular/hawkular-accounts
>
> - Juca. _______________________________________________
> hawkular-dev mailing list hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBCAAGBQJVPfTQAAoJECKM1e+fkPrXm6QH/3FmzCvrDzwrzZr3OqL/Tnoc
0EwFO+XXvwWsKTCNz2yZGGM++SlwyGW0YkynHXYaJkqqCvntshN0G/V2oPZCc1NN
tyGSFX9v7pVfb3OATgU+Oabk8+Q/VMSPtHy6ktiV+/5jq0WrKrESJHi8+GJRBLoE
GtLx0lKXO/iI6QC8e87sOjAhJm+/Nvfn5fZrvMWP9R4vuj+m2O+zX7dZw34ot3op
G9qPhQw+9+cQX1FpgRuaUNbcITO4pHD7dtYv/hcjKt5MDhwuCxVIy8UUK2qrZj9A
oA60BsBgAii1CIjJU93AA295rjJl8Nxz4zRFM1s+QlmpbvGtme7mmXXDzDvgDhE=
=VUnM
-----END PGP SIGNATURE-----
From vrockai at redhat.com Mon Apr 27 06:59:01 2015
From: vrockai at redhat.com (Viliam Rockai)
Date: Mon, 27 Apr 2015 12:59:01 +0200
Subject: [Hawkular-dev] REST-api pagination
In-Reply-To:
References:
Message-ID: <1430132341.17833.3.camel@vrockai-laptop>
On Fri, 2015-04-24 at 17:08 +0200, Heiko W.Rupp wrote:
> Hey,
>
> triggered by https://issues.jboss.org/browse/HWKINVENT-33
> and https://issues.jboss.org/browse/HAWKULAR-125
>
> we should make sure that all the Hawkular-subprojects use the
> same pagination mechanism in the REST-endpoints.
>
> == Why pagination?
>
> Pagination serves two main purposes
>
> * Limit the work the server has to do by not returning all results at
> once
> * Limit the work a client has to do with a huge list of results.
>
> The limiting of work not only applies to CPU time, but also to memory
> consumption
> and in the case of remote clients also to load time. Smaller lists just
> load faster.
>
> == What is there?
>
> Inseide RHQ we use both: Link-headers and paging information
> inside the returned objects
>
> There are 'page', 'ps' for page number and ps for page size,
> have links to 'prev', 'next','current' and 'last' (if applicable)
>
> And an additional header "X-collection-size" for the total number of
> items
>
> See
> https://github.com/rhq-project/rhq/blob/master/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/rest/AbstractRestBean.java#L454
> and
> https://github.com/rhq-project/rhq/blob/master/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/rest/AbstractRestBean.java#L505
>
>
> There is RFC5988 that talks about linking headers and which defines a
> number of link types (
> http://tools.ietf.org/html/rfc5988#section-6.2.2 ), from where the RHQ
> ones were taken.
>
> This url
> http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api#pagination
> has some "best practices" (defined by whom?) that are basically like the
> RHQ link headers,
> but instead of using 'ps' for the page size, they use 'per_page', which
> is apparently what GitHub
> does. Also the total collection count is 'X-Total-Count' and not RHQ's
> 'X-collection-size'.
>
> We had a discussion about the style (link/body) in the past:
> http://pilhuhn.blogspot.de/2013/02/best-practice-for-paging-in-restful-apis.html
> and also the objections from the JS side, who have issues getting at the
> http-headers, but can easily digest body elements), which led to support
> both paging in body and headers depending on the media type requested (
> see
> https://github.com/rhq-project/rhq/blob/master/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/rest/AbstractRestBean.java#L413
> )
This should not be a problem anymore, since in the current AngularJS
$resource object which we use as the REST "client", we can access the
headers directly the same way as the json data:
"Success callback is called with (value, responseHeaders) arguments."
https://docs.angularjs.org/api/ngResource/service/$resource
>
> For convenience I suggest to copy over the methods from RHQ and re-use
> them.
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From jshaughn at redhat.com Mon Apr 27 16:07:01 2015
From: jshaughn at redhat.com (Jay Shaughnessy)
Date: Mon, 27 Apr 2015 16:07:01 -0400
Subject: [Hawkular-dev] Hawkular Alerts - 0.0.1-Snapshot pushed to master
Message-ID: <553E96E5.2060803@redhat.com>
Hawkular Alerts has been updated in master.
Given our latest Hawkular convention for versioning, the versioning has
gone backwards. We pushed Version 0.0.1-SNAPSHOT, changed from Version
1.0.0-SNAPSHOT. We maintain snapshot releases for use with Kettle.
But the version has changed to reflect API changes. Going forward we'll
maintain the version of 0.0.1 unless we have an API change, at which
point we'll up the micro-version. Eventually this will settle down and
we can move to versioned components, and avoid breaking API changes.
We've begun supplying developer documentation, here:
http://www.hawkular.org/docs/dev/alerts.html
What's NEW!
* Alert life-cycle support
o Alerts now support Open, Ack and Resolved states.
o This gives us the ability to store and display full start and
end times for an alerting "event".
* Trigger AutoResolve
o This replaces and builds on the former "trigger safety" feature.
o Optionally provide AutoResolve conditions and dampening to
toggle the Trigger from Firing mode to AutoResolve mode.
o Optionally have a Trigger's alerts set Resolved automatically,
when the trigger's AutoResolve conditions are satisfied.
* Trigger AutoDisable
o Optionally have a Trigger disable itself after firing.
o Mutes a trigger without the need to define AutoResolve.
* Rest Api control of the new features.
* Twilio SMS sender action
* Aerogear sender action
* Performance testing infrastructure
* Improved Rest API documentation
And for Hawkular Kettle!
* Data Filtering
o Only forward relevant metric and availability data for alert
processing.
o Remove the metrics and availability not used in any trigger.
And of course several fixes and improvements.
Coming Up:
* Moving the persistence back-end to Cassandra to leverage the Metrics
cluster (soon).
* PagerDuty action integration.
* Integration of the new 0.0.1 features into Hawkular.
Hawkular Alerts Team
Jay Shaughnessy
Lucas Ponce
Thomas Segismont
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150427/92c404ac/attachment-0001.html
From jmorgan at redhat.com Mon Apr 27 20:38:47 2015
From: jmorgan at redhat.com (Jared MORGAN)
Date: Mon, 27 Apr 2015 20:38:47 -0400 (EDT)
Subject: [Hawkular-dev] Coming to Parent: publishing JavaDoc and sources
via Maven
In-Reply-To: <1073938809.6663690.1427748801386.JavaMail.zimbra@redhat.com>
References: <5519518D.7030308@redhat.com> <55196003.9090202@redhat.com>
<5519A53D.2020005@redhat.com>
<1073938809.6663690.1427748801386.JavaMail.zimbra@redhat.com>
Message-ID: <583269998.7134666.1430181527605.JavaMail.zimbra@redhat.com>
I'm coming late to the party here, so my apologies for that.
I understand that docs for Hawkular will be done in Asciidoc (great move IMHO).
Why not extend that to Javadocs: https://github.com/asciidoctor/asciidoclet
Compatible with Maven. No need to try and kludge HTML to make tables work. Easy to read directly in code as well as looking pretty when compiled.
Thoughts?
J
----- Original Message -----
> > Hi Jay, there is just a couple of them in Bus - see the attached file. -- P
>
> If everyone writes as good as javadocs as I do, I'm all for the javadoc
> checker :-D
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From artur.dryomov at gmail.com Tue Apr 28 03:29:20 2015
From: artur.dryomov at gmail.com (Artur Dryomov)
Date: Tue, 28 Apr 2015 10:29:20 +0300
Subject: [Hawkular-dev] [GSoC] Hawkular Android Client
Message-ID:
Hi everyone,
This year I will be working on the Hawkular Android client application as
part of the Google Summer of Code 2015 program.
The application itself will use Hawkular API and AeroGear SDK. In coming
days I?ll research these areas, especially documentation, and will try to
create some sort of architecture and basic design.
Thank you all for this opportunity!
Artur.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150428/fd028bba/attachment.html
From lkrejci at redhat.com Tue Apr 28 05:43:36 2015
From: lkrejci at redhat.com (Lukas Krejci)
Date: Tue, 28 Apr 2015 11:43:36 +0200
Subject: [Hawkular-dev] Inventory REST now has result sets pagination
Message-ID: <2159243.DYWF8jYFne@localhost.localdomain>
Hi,
I went ahead and prototyped the pagination support both in the backend and the
REST API within the boundaries of inventory.
Because this is a generic feature, it's been agreed that this stuff would
deserve a place of its own so that it can be shared amongst the various
hawkular components.
There are 2 aspects of the paging:
* support in backend - This basically only revolves around the specification
of the paging requirements and a list "wrapper" that adds paging context to
the results. The way how the paging will be implemented will differ in each
component.
https://github.com/hawkular/hawkular-inventory/tree/master/api/src/main/java/org/hawkular/inventory/api/paging
* support in the REST API - This means to translate the query parameters with
the paging specification into paging java API and transform the results from
the backend into the set of headers attached to the response.
The support for paging in REST in inventory is contained in these classes:
https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/src/main/java/org/hawkular/inventory/rest/RequestUtil.java
https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/src/main/java/org/hawkular/inventory/rest/ResponseUtil.java
https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/src/main/java/org/hawkular/inventory/rest/json/Link.java
https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/src/main/java/org/hawkular/inventory/rest/json/LinkDeserializer.java
https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/src/main/java/org/hawkular/inventory/rest/json/LinkSerializer.java
Both the backend and the REST support were either taken from or were heavily
inspired by the paging support in RHQ.
Where do you think these should live? Do we have a repo for common stuff? I
imagine we will have to have 2 separate common modules so that we don't drag
jaxrs deps into core components.
Cheers,
Lukas
From matzew at apache.org Tue Apr 28 07:13:56 2015
From: matzew at apache.org (Matthias Wessendorf)
Date: Tue, 28 Apr 2015 13:13:56 +0200
Subject: [Hawkular-dev] [aerogear-dev] [GSoC] Hawkular Android Client
In-Reply-To:
References:
Message-ID:
Hello Artur!
welcome to our community/communities and congratulations on getting a seat
at the GSoC program!
We are looking forward to your contributions to our mailing lists and code
repos :-)
Good luck!
On Tue, Apr 28, 2015 at 9:29 AM, Artur Dryomov
wrote:
> Hi everyone,
>
> This year I will be working on the Hawkular Android client application as
> part of the Google Summer of Code 2015 program.
>
> The application itself will use Hawkular API and AeroGear SDK. In coming
> days I?ll research these areas, especially documentation, and will try to
> create some sort of architecture and basic design.
>
> Thank you all for this opportunity!
> Artur.
>
> _______________________________________________
> aerogear-dev mailing list
> aerogear-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>
--
Matthias Wessendorf
blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150428/aad77144/attachment.html
From lkrejci at redhat.com Tue Apr 28 07:50:47 2015
From: lkrejci at redhat.com (Lukas Krejci)
Date: Tue, 28 Apr 2015 13:50:47 +0200
Subject: [Hawkular-dev] Coming to Parent: publishing JavaDoc and sources
via Maven
In-Reply-To: <583269998.7134666.1430181527605.JavaMail.zimbra@redhat.com>
References: <5519518D.7030308@redhat.com>
<1073938809.6663690.1427748801386.JavaMail.zimbra@redhat.com>
<583269998.7134666.1430181527605.JavaMail.zimbra@redhat.com>
Message-ID: <1833327.3eVncBMr9F@localhost.localdomain>
What about IDE support for Asciidoc docs? Me, I like being able to click on
links in javadoc popups.
On Monday, April 27, 2015 20:38:47 Jared MORGAN wrote:
> I'm coming late to the party here, so my apologies for that.
>
> I understand that docs for Hawkular will be done in Asciidoc (great move
> IMHO).
>
> Why not extend that to Javadocs: https://github.com/asciidoctor/asciidoclet
>
> Compatible with Maven. No need to try and kludge HTML to make tables work.
> Easy to read directly in code as well as looking pretty when compiled.
>
> Thoughts?
>
> J
>
> ----- Original Message -----
>
> > > Hi Jay, there is just a couple of them in Bus - see the attached file.
> > > -- P
> >
> > If everyone writes as good as javadocs as I do, I'm all for the javadoc
> > checker :-D
> > _______________________________________________
> > hawkular-dev mailing list
> > hawkular-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From jbalunas at redhat.com Tue Apr 28 08:41:54 2015
From: jbalunas at redhat.com (Jay Balunas)
Date: Tue, 28 Apr 2015 08:41:54 -0400
Subject: [Hawkular-dev] [aerogear-dev] [GSoC] Hawkular Android Client
In-Reply-To:
References:
Message-ID:
+1, Great to have you and can't wait to see your contributions and ideas!
On Tue, Apr 28, 2015 at 7:13 AM, Matthias Wessendorf
wrote:
> Hello Artur!
>
> welcome to our community/communities and congratulations on getting a seat
> at the GSoC program!
>
> We are looking forward to your contributions to our mailing lists and code
> repos :-)
>
> Good luck!
>
> On Tue, Apr 28, 2015 at 9:29 AM, Artur Dryomov
> wrote:
>
>> Hi everyone,
>>
>> This year I will be working on the Hawkular Android client application as
>> part of the Google Summer of Code 2015 program.
>>
>> The application itself will use Hawkular API and AeroGear SDK. In coming
>> days I?ll research these areas, especially documentation, and will try to
>> create some sort of architecture and basic design.
>>
>> Thank you all for this opportunity!
>> Artur.
>>
>> _______________________________________________
>> aerogear-dev mailing list
>> aerogear-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>
>
>
>
> --
> Matthias Wessendorf
>
> blog: http://matthiaswessendorf.wordpress.com/
> sessions: http://www.slideshare.net/mwessendorf
> twitter: http://twitter.com/mwessendorf
>
> _______________________________________________
> aerogear-dev mailing list
> aerogear-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150428/74ef7fe4/attachment.html
From supittma at redhat.com Tue Apr 28 09:27:49 2015
From: supittma at redhat.com (Summers Pittman)
Date: Tue, 28 Apr 2015 09:27:49 -0400
Subject: [Hawkular-dev] [aerogear-dev] [GSoC] Hawkular Android Client
In-Reply-To:
References:
Message-ID:
Hi, Arur and welcome.
Look for me (summersp) and passos (passos) in IRC. We are the two main
Android developers. Abstractj and qmx tend to help out a lot too.
Summers
On Tue, Apr 28, 2015 at 8:41 AM, Jay Balunas wrote:
> +1, Great to have you and can't wait to see your contributions and ideas!
>
>
> On Tue, Apr 28, 2015 at 7:13 AM, Matthias Wessendorf
> wrote:
>
>> Hello Artur!
>>
>> welcome to our community/communities and congratulations on getting a
>> seat at the GSoC program!
>>
>> We are looking forward to your contributions to our mailing lists and
>> code repos :-)
>>
>> Good luck!
>>
>> On Tue, Apr 28, 2015 at 9:29 AM, Artur Dryomov
>> wrote:
>>
>>> Hi everyone,
>>>
>>> This year I will be working on the Hawkular Android client application
>>> as part of the Google Summer of Code 2015 program.
>>>
>>> The application itself will use Hawkular API and AeroGear SDK. In coming
>>> days I?ll research these areas, especially documentation, and will try to
>>> create some sort of architecture and basic design.
>>>
>>> Thank you all for this opportunity!
>>> Artur.
>>>
>>> _______________________________________________
>>> aerogear-dev mailing list
>>> aerogear-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>>
>>
>>
>>
>> --
>> Matthias Wessendorf
>>
>> blog: http://matthiaswessendorf.wordpress.com/
>> sessions: http://www.slideshare.net/mwessendorf
>> twitter: http://twitter.com/mwessendorf
>>
>> _______________________________________________
>> aerogear-dev mailing list
>> aerogear-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>
>
>
> _______________________________________________
> aerogear-dev mailing list
> aerogear-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150428/a290435b/attachment-0001.html
From snegrea at redhat.com Tue Apr 28 11:44:56 2015
From: snegrea at redhat.com (Stefan Negrea)
Date: Tue, 28 Apr 2015 11:44:56 -0400 (EDT)
Subject: [Hawkular-dev] Tenant Id - Not Part of URL
In-Reply-To: <591057080.8494667.1430233780909.JavaMail.zimbra@redhat.com>
Message-ID: <1799616218.8541357.1430235896155.JavaMail.zimbra@redhat.com>
Hello Everybody,
I've been working on a PR for the upcoming Hawkular Metrics release that will remove the tenant id from the end-point URLs. The tenant id will be moved to either a header parameter or a query parameter. The query parameter is in place for cases (such as curl) where setting a header is not possible, difficult, or inconvenient.
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.
Now, to the merits of this change. The tenant id is volatile, can change any time, and changes to it should be expected; but the rest of the URL is fixed. The second issue is that the tenant id is a security concern. So we were limited in design choices since a security concern was leaking as part of the URL.
So removing the tenant id from the URL will give us permanent & consistent addresses for resources (metrics and metric data points). And we 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 to be used on the request. If the same user later decides to use a tenant id to pass along the request, the URL of the resources 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).
This change will give us the flexibility to adjust the security model (the meaning of tenant ids and ways to validate them) without compromising the URL structure. This will help Hawkular Metrics as it gets integrated into more and more projects and products.
Here are the links to the JIRA and the PR for this change:
https://github.com/hawkular/hawkular-metrics/pull/202
https://issues.jboss.org/browse/HWKMETRICS-68
Thank you,
Stefan Negrea
Software Engineer
From lkrejci at redhat.com Tue Apr 28 15:58:47 2015
From: lkrejci at redhat.com (Lukas Krejci)
Date: Tue, 28 Apr 2015 15:58:47 -0400 (EDT)
Subject: [Hawkular-dev] Tenant Id - Not Part of URL
In-Reply-To: <1799616218.8541357.1430235896155.JavaMail.zimbra@redhat.com>
References: <1799616218.8541357.1430235896155.JavaMail.zimbra@redhat.com>
Message-ID: <555395784.9520692.1430251127156.JavaMail.zimbra@redhat.com>
How do metrics' tenants fit into the hawkular accounts and its persona concept?
----- Original Message -----
> From: "Stefan Negrea"
> To: "Discussions"
> Sent: Tuesday, 28 April, 2015 5:44:56 PM
> Subject: [Hawkular-dev] Tenant Id - Not Part of URL
>
> Hello Everybody,
>
> I've been working on a PR for the upcoming Hawkular Metrics release that will
> remove the tenant id from the end-point URLs. The tenant id will be moved to
> either a header parameter or a query parameter. The query parameter is in
> place for cases (such as curl) where setting a header is not possible,
> difficult, or inconvenient.
>
> 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.
>
>
> Now, to the merits of this change. The tenant id is volatile, can change any
> time, and changes to it should be expected; but the rest of the URL is
> fixed. The second issue is that the tenant id is a security concern. So we
> were limited in design choices since a security concern was leaking as part
> of the URL.
>
> So removing the tenant id from the URL will give us permanent & consistent
> addresses for resources (metrics and metric data points). And we 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 to be used on the request. If the same user later decides
> to use a tenant id to pass along the request, the URL of the resources 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).
>
> This change will give us the flexibility to adjust the security model (the
> meaning of tenant ids and ways to validate them) without compromising the
> URL structure. This will help Hawkular Metrics as it gets integrated into
> more and more projects and products.
>
> Here are the links to the JIRA and the PR for this change:
> https://github.com/hawkular/hawkular-metrics/pull/202
> https://issues.jboss.org/browse/HWKMETRICS-68
>
>
>
> Thank you,
> Stefan Negrea
>
> Software Engineer
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From agalante at redhat.com Tue Apr 28 22:14:06 2015
From: agalante at redhat.com (Andres Galante)
Date: Tue, 28 Apr 2015 22:14:06 -0400
Subject: [Hawkular-dev] [aerogear-dev] [GSoC] Hawkular Android Client
In-Reply-To:
References:
Message-ID:
And if you are looking for design help you can ping Gabriel
gcardoso at redhat.com he is the UX dedicated to Hawkular and a great designer.
On Tue, Apr 28, 2015 at 9:27 AM, Summers Pittman
wrote:
> Hi, Arur and welcome.
>
> Look for me (summersp) and passos (passos) in IRC. We are the two main
> Android developers. Abstractj and qmx tend to help out a lot too.
>
> Summers
>
> On Tue, Apr 28, 2015 at 8:41 AM, Jay Balunas wrote:
>
>> +1, Great to have you and can't wait to see your contributions and ideas!
>>
>>
>> On Tue, Apr 28, 2015 at 7:13 AM, Matthias Wessendorf
>> wrote:
>>
>>> Hello Artur!
>>>
>>> welcome to our community/communities and congratulations on getting a
>>> seat at the GSoC program!
>>>
>>> We are looking forward to your contributions to our mailing lists and
>>> code repos :-)
>>>
>>> Good luck!
>>>
>>> On Tue, Apr 28, 2015 at 9:29 AM, Artur Dryomov
>>> wrote:
>>>
>>>> Hi everyone,
>>>>
>>>> This year I will be working on the Hawkular Android client application
>>>> as part of the Google Summer of Code 2015 program.
>>>>
>>>> The application itself will use Hawkular API and AeroGear SDK. In
>>>> coming days I?ll research these areas, especially documentation, and will
>>>> try to create some sort of architecture and basic design.
>>>>
>>>> Thank you all for this opportunity!
>>>> Artur.
>>>>
>>>> _______________________________________________
>>>> aerogear-dev mailing list
>>>> aerogear-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>>>
>>>
>>>
>>>
>>> --
>>> Matthias Wessendorf
>>>
>>> blog: http://matthiaswessendorf.wordpress.com/
>>> sessions: http://www.slideshare.net/mwessendorf
>>> twitter: http://twitter.com/mwessendorf
>>>
>>> _______________________________________________
>>> aerogear-dev mailing list
>>> aerogear-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>>
>>
>>
>> _______________________________________________
>> aerogear-dev mailing list
>> aerogear-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>>
>
>
> _______________________________________________
> aerogear-dev mailing list
> aerogear-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/aerogear-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150428/d895f97c/attachment.html
From ppalaga at redhat.com Wed Apr 29 05:26:05 2015
From: ppalaga at redhat.com (Peter Palaga)
Date: Wed, 29 Apr 2015 11:26:05 +0200
Subject: [Hawkular-dev] Coming to Parent: publishing JavaDoc and sources
via Maven
In-Reply-To: <1833327.3eVncBMr9F@localhost.localdomain>
References: <5519518D.7030308@redhat.com> <1073938809.6663690.1427748801386.JavaMail.zimbra@redhat.com> <583269998.7134666.1430181527605.JavaMail.zimbra@redhat.com>
<1833327.3eVncBMr9F@localhost.localdomain>
Message-ID: <5540A3AD.7030905@redhat.com>
On 2015-04-28 13:50, Lukas Krejci wrote:
> What about IDE support for Asciidoc docs? Me, I like being able to click on
> links in javadoc popups.
+1 for the question about the IDE support. Jared, do you know how does
it work in Eclipse & Co?
Regardless of the above, I do not see the need to introduce asciidoclet.
There is very little plain HTML in typical good JavaDoc and this small
amount is not worth the trouble, IMO.
-- P
> On Monday, April 27, 2015 20:38:47 Jared MORGAN wrote:
>> I'm coming late to the party here, so my apologies for that.
>>
>> I understand that docs for Hawkular will be done in Asciidoc (great move
>> IMHO).
>>
>> Why not extend that to Javadocs: https://github.com/asciidoctor/asciidoclet
>>
>> Compatible with Maven. No need to try and kludge HTML to make tables work.
>> Easy to read directly in code as well as looking pretty when compiled.
>>
>> Thoughts?
>>
>> J
>>
>> ----- Original Message -----
>>
>>>> Hi Jay, there is just a couple of them in Bus - see the attached file.
>>>> -- P
>>>
>>> If everyone writes as good as javadocs as I do, I'm all for the javadoc
>>> checker :-D
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From jshaughn at redhat.com Wed Apr 29 09:16:37 2015
From: jshaughn at redhat.com (Jay Shaughnessy)
Date: Wed, 29 Apr 2015 09:16:37 -0400
Subject: [Hawkular-dev] Coming to Parent: publishing JavaDoc and sources
via Maven
In-Reply-To: <5540A3AD.7030905@redhat.com>
References: <5519518D.7030308@redhat.com> <1073938809.6663690.1427748801386.JavaMail.zimbra@redhat.com> <583269998.7134666.1430181527605.JavaMail.zimbra@redhat.com> <1833327.3eVncBMr9F@localhost.localdomain>
<5540A3AD.7030905@redhat.com>
Message-ID: <5540D9B5.8070608@redhat.com>
Yes, good question. And I have concerns about how existing, or
submitted jdoc, would be handled. Can you mix the two approaches? I
agree with ppalaga, perhaps not worth the change.
On 4/29/2015 5:26 AM, Peter Palaga wrote:
> On 2015-04-28 13:50, Lukas Krejci wrote:
>> What about IDE support for Asciidoc docs? Me, I like being able to click on
>> links in javadoc popups.
> +1 for the question about the IDE support. Jared, do you know how does
> it work in Eclipse & Co?
>
> Regardless of the above, I do not see the need to introduce asciidoclet.
> There is very little plain HTML in typical good JavaDoc and this small
> amount is not worth the trouble, IMO.
>
> -- P
>
>> On Monday, April 27, 2015 20:38:47 Jared MORGAN wrote:
>>> I'm coming late to the party here, so my apologies for that.
>>>
>>> I understand that docs for Hawkular will be done in Asciidoc (great move
>>> IMHO).
>>>
>>> Why not extend that to Javadocs: https://github.com/asciidoctor/asciidoclet
>>>
>>> Compatible with Maven. No need to try and kludge HTML to make tables work.
>>> Easy to read directly in code as well as looking pretty when compiled.
>>>
>>> Thoughts?
>>>
>>> J
>>>
>>> ----- Original Message -----
>>>
>>>>> Hi Jay, there is just a couple of them in Bus - see the attached file.
>>>>> -- P
>>>> If everyone writes as good as javadocs as I do, I'm all for the javadoc
>>>> checker :-D
>>>> _______________________________________________
>>>> hawkular-dev mailing list
>>>> hawkular-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150429/d57452ad/attachment-0001.html
From mwringe at redhat.com Wed Apr 29 12:05:16 2015
From: mwringe at redhat.com (Matt Wringe)
Date: Wed, 29 Apr 2015 12:05:16 -0400
Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
In-Reply-To: <1499876691.3669790.1429806519900.JavaMail.zimbra@redhat.com>
References: <55318CBC.8010105@redhat.com> <1890420879.2259162.1429538271466.JavaMail.zimbra@redhat.com> <55379F9B.4010307@redhat.com>
<5537AD2F.5040806@redhat.com> <5538F51C.4040807@redhat.com>
<1499876691.3669790.1429806519900.JavaMail.zimbra@redhat.com>
Message-ID: <5541013C.3040609@redhat.com>
On 23/04/15 12:28 PM, Viet Nguyen wrote:
> Matt,
> I have not been intimately involved with hawkular dev due to other obligations. I'm curious about your use case, running metrics as an independent app... as I always thought metrics, inventory, alert, etc are to meant to be assembled together.
Ah, sorry I forgot to respond to this last week.
All that we need in OpenShift for now is just the Hawkular Metrics part,
we don't need the other components (at least not yet). There is also the
problem where the other components are not setup to be run in a cluster yet.
In terms of how things are meant to be run in the future, I am not sure
if we would have a single application running all of Hawkular, or have
it more modular with multiple pods running different components.
>
> I would be happy to assist with the Dockerhub build steps. Let's have a chat early next week?
Basically I just need whomever is in control of the CI build process and
in charge of the Hawkular docker hub account to help out with this since
I don't have access to those accounts.
Ideally we should just use the maven build setup and not the current
docker hub automated build but if the docker hub automated build setup
is easier to get things up and running then it might be good to use that
for now.
I will see if I can ping you on irc about all of this.
- Matt
>
>
> Viet
>
>
>
> ----- Original Message -----
> From: "Matt Wringe"
> To: hawkular-dev at lists.jboss.org
> Sent: Thursday, April 23, 2015 6:35:24 AM
> Subject: Re: [Hawkular-dev] Hawkular Metrics Openshift Containers
>
> On 22/04/15 10:16 AM, Matt Wringe wrote:
>> On 22/04/15 09:18 AM, Matt Wringe wrote:
>>> On 20/04/15 09:57 AM, Viet Nguyen wrote:
>>>> Matt,
>>>> I was the last person who worked on that Docker build for Hawkular-metrics. Yes, it is obsolete and can be removed.
>>>>
>>>> FYI there's an automated Docker build of Kettle in DockerHub and a continuous deployment to a Kubernetes cluster
>>>>
>>>> Docker Hub:
>>>> https://registry.hub.docker.com/u/hawkular/hawkular/
>>>>
>>>> CI Pipeline:
>>>> https://docs.google.com/presentation/d/14zqOHOvXAB4uN7W_fWOub3ZD6txiS_Vp9cjUNIlj2yQ/edit?usp=sharing
>>> I went through and have the docker images being built using a docker
>>> maven plugin. So during the maven build, you can create the image and
>>> push it out to a registry.
>>>
>>> It works great on a local machine, one maven build and I have the docker
>>> images and kubernetes application zip created. But looking at how the
>>> current CI is done, it might not have been the best solution (it would
>>> require the credentials of the docker hub user to be added into the CI
>>> setup somewhere).
>>>
>>> It might make more sense to do it the way the current CI is setup with
>>> the kettle builds. Anyone have any preferences?
>> Either way, the CI build way is also easy to setup. You would just need
>> to sets these up with the official accounts and add in the automated
>> build hooks:
>>
>> https://registry.hub.docker.com/u/mwringe/docker-hawkular-cassandra/
>> https://github.com/mwringe/docker-hawkular-cassandra
>>
>> https://registry.hub.docker.com/u/mwringe/docker-hawkular-metrics/
>> https://github.com/mwringe/docker-hawkular-metrics
> We really need to get this setup as part of the build so that we can
> hand off the containers and kubernetes application. I can't set this up
> myself as we need whomever is able to access the CI builds and docker
> hub account to perform the setup.
>
> I have proposed two different setups, and they both should work for the
> CI builds: We can either build it via the maven plugin in the CI builds,
> or we can use the existing docker hub automated builds (like what is
> done with the kettle docker images).
>
> The only thing about the maven build is that we need to store the user
> credentials in the CI configuration somewhere and need access to a
> machine capable of performing docker image builds.
>
> Everything else in the maven build is handled much better (everything
> kept in one place, versions are automatically updated, names are kept in
> sync between the docker images and kubernetes applications, can easier
> push out to different docker registries, much better developer
> experience for local builds, etc).
>
> The docker hub automated builds are probably faster to setup right now
> though since we already know we have everything working for it.
>
> Note: the maven docker setup is not going away, we need that for
> developer builds (either locally or pushing out to developer own docker
> hub account). The docker hub automated builds are essentially useless
> from a developer's perspective, but they work fine for CI builds.
>
>>>> Viet
>>>>
>>>>
>>>>
>>>>
>>>> ----- Original Message -----
>>>> From: "Matt Wringe"
>>>> To: hawkular-dev at lists.jboss.org
>>>> Sent: Friday, April 17, 2015 3:44:12 PM
>>>> Subject: [Hawkular-dev] Hawkular Metrics Openshift Containers
>>>>
>>>> I have a new subproject in Hawkular Metrics which sets up creating
>>>> components for Openshift/Fabric8
>>>> (https://github.com/hawkular/hawkular-metrics/pull/200).
>>>>
>>>> There are 3 main parts
>>>>
>>>> Cassandra: creates a custom seed provider to support
>>>> ReplicationControllers in Kubernetes, creates a folder/zip archive which
>>>> can be used to generate a Docker image. It may make sense to move the
>>>> Cassandra parts out to a separate project.
>>>>
>>>> Hawkular Metrics: creates a folder/zip archive which can be used to
>>>> generate a Docker image
>>>>
>>>> Kubernetes: pulls everything together into a single kubernetes
>>>> application. Can be used to deploy an application zip into fabric8 (via
>>>> drag and drop in the web console or via the maven plugin) or deploy all
>>>> the components into Openshift via the kubernetes.json configuration file.
>>>>
>>>> The docker images are not created and deployed to a docker registry as
>>>> part of the build, it will just create a folder where you can run the
>>>> docker build from. None of the maven docker plugins I looked at seemed
>>>> to really work properly, so its still a manual process to do the build
>>>> (and push to a registry). Its something which needs to be improved.
>>>>
>>>> The Cassandra service currently only supports adding new nodes to a
>>>> cluster and not removing them via the ReplicationController. This is due
>>>> to the replication factor being set to be 1 by default (which means when
>>>> a node is removed, so is the data it contained).
>>>>
>>>> I believe the docker subproject of hawkular metrics is obsolete and can
>>>> be removed
>>>> (https://github.com/hawkular/hawkular-metrics/tree/master/docker), but
>>>> someone please correct me if I am wrong. It's scripts are referring to
>>>> the console which no longer exists as part of the project.
>>>>
>>>> - Matt
>>>> _______________________________________________
>>>> hawkular-dev mailing list
>>>> hawkular-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>>> _______________________________________________
>>>> hawkular-dev mailing list
>>>> hawkular-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From jsanda at redhat.com Wed Apr 29 12:28:50 2015
From: jsanda at redhat.com (John Sanda)
Date: Wed, 29 Apr 2015 12:28:50 -0400
Subject: [Hawkular-dev] Tenant Id - Not Part of URL
In-Reply-To: <555395784.9520692.1430251127156.JavaMail.zimbra@redhat.com>
References: <1799616218.8541357.1430235896155.JavaMail.zimbra@redhat.com>
<555395784.9520692.1430251127156.JavaMail.zimbra@redhat.com>
Message-ID:
Will the REST APIs for other hawkular services take a similar approach? This seems like an area where we want to be consistent across APIs.
> On Apr 28, 2015, at 3:58 PM, Lukas Krejci wrote:
>
> How do metrics' tenants fit into the hawkular accounts and its persona concept?
>
> ----- Original Message -----
>> From: "Stefan Negrea"
>> To: "Discussions"
>> Sent: Tuesday, 28 April, 2015 5:44:56 PM
>> Subject: [Hawkular-dev] Tenant Id - Not Part of URL
>>
>> Hello Everybody,
>>
>> I've been working on a PR for the upcoming Hawkular Metrics release that will
>> remove the tenant id from the end-point URLs. The tenant id will be moved to
>> either a header parameter or a query parameter. The query parameter is in
>> place for cases (such as curl) where setting a header is not possible,
>> difficult, or inconvenient.
>>
>> 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.
>>
>>
>> Now, to the merits of this change. The tenant id is volatile, can change any
>> time, and changes to it should be expected; but the rest of the URL is
>> fixed. The second issue is that the tenant id is a security concern. So we
>> were limited in design choices since a security concern was leaking as part
>> of the URL.
>>
>> So removing the tenant id from the URL will give us permanent & consistent
>> addresses for resources (metrics and metric data points). And we 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 to be used on the request. If the same user later decides
>> to use a tenant id to pass along the request, the URL of the resources 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).
>>
>> This change will give us the flexibility to adjust the security model (the
>> meaning of tenant ids and ways to validate them) without compromising the
>> URL structure. This will help Hawkular Metrics as it gets integrated into
>> more and more projects and products.
>>
>> Here are the links to the JIRA and the PR for this change:
>> https://github.com/hawkular/hawkular-metrics/pull/202
>> https://issues.jboss.org/browse/HWKMETRICS-68
>>
>>
>>
>> Thank you,
>> Stefan Negrea
>>
>> Software Engineer
>>
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From lkrejci at redhat.com Wed Apr 29 12:46:33 2015
From: lkrejci at redhat.com (Lukas Krejci)
Date: Wed, 29 Apr 2015 18:46:33 +0200
Subject: [Hawkular-dev] Tenant Id - Not Part of URL
In-Reply-To:
References: <1799616218.8541357.1430235896155.JavaMail.zimbra@redhat.com>
<555395784.9520692.1430251127156.JavaMail.zimbra@redhat.com>
Message-ID: <2426339.6kgTx6A8MY@localhost.localdomain>
Well, for inventory, we're considering dropping the context of a tenant
altogether.
Accounts don't work with a tenant in a usual meaning of that word very well -
in accounts there is nothing like an isolated "island" that cannot be accessed
by anyone outside of that island.
Instead, accounts work with a hierarchy of organizations, of which users can
be members of (and have different roles in) and impersonate them.
In inventory, we're using tenants rather loosely - while they form a root of
the path to any other entity in inventory, it is not disallowed to link
entities from different tenants.
A single tenant as a root of the hierarchy doesn't correspond well to the
hierarchical nature of accounts organizations. So instead, to offer similar,
if disconnected, approach to structuring things, we are thinking about
replacing a single tenant with a hierarchy of "partitions" or "locations" (the
nomenclature is not settled as isn't the concept itself ;) ). The thinking
behind it is that while orgs model the departmental and security structure of
a company, the partitions/locations would/could model the physical location of
machines in the company's infrastructure (/geo5/datacenterA/...) or they could
model a logical structure of the machines (/middleware/client5/...), or they
even could mirror the security structure of orgs.
In any case, given the fact that either tenant or any of its successors are
iherent part of a an ID of any entity (entities in inventory are identified by
their path, not by a unique ID), I think we will have to keep them in the
URI's, too, as it would not make sense to address things like:
http://.../EAP-5?tenantId=x
because
http://.../EAP-5?tenantId=y
is most probably an utterly different thing that is completely unrelated to
the first one.
On Wednesday, April 29, 2015 12:28:50 John Sanda wrote:
> Will the REST APIs for other hawkular services take a similar approach? This
> seems like an area where we want to be consistent across APIs.
> > On Apr 28, 2015, at 3:58 PM, Lukas Krejci wrote:
> >
> > How do metrics' tenants fit into the hawkular accounts and its persona
> > concept?
> >
> > ----- Original Message -----
> >
> >> From: "Stefan Negrea"
> >> To: "Discussions"
> >> Sent: Tuesday, 28 April, 2015 5:44:56 PM
> >> Subject: [Hawkular-dev] Tenant Id - Not Part of URL
> >>
> >> Hello Everybody,
> >>
> >> I've been working on a PR for the upcoming Hawkular Metrics release that
> >> will remove the tenant id from the end-point URLs. The tenant id will be
> >> moved to either a header parameter or a query parameter. The query
> >> parameter is in place for cases (such as curl) where setting a header is
> >> not possible, difficult, or inconvenient.
> >>
> >> 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.
> >>
> >>
> >> Now, to the merits of this change. The tenant id is volatile, can change
> >> any time, and changes to it should be expected; but the rest of the URL
> >> is fixed. The second issue is that the tenant id is a security concern.
> >> So we were limited in design choices since a security concern was
> >> leaking as part of the URL.
> >>
> >> So removing the tenant id from the URL will give us permanent &
> >> consistent
> >> addresses for resources (metrics and metric data points). And we 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 to be used on the request. If the same
> >> user later decides to use a tenant id to pass along the request, the URL
> >> of the resources 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).
> >>
> >> This change will give us the flexibility to adjust the security model
> >> (the
> >> meaning of tenant ids and ways to validate them) without compromising the
> >> URL structure. This will help Hawkular Metrics as it gets integrated into
> >> more and more projects and products.
> >>
> >> Here are the links to the JIRA and the PR for this change:
> >> https://github.com/hawkular/hawkular-metrics/pull/202
> >> https://issues.jboss.org/browse/HWKMETRICS-68
> >>
> >>
> >>
> >> Thank you,
> >> Stefan Negrea
> >>
> >> Software Engineer
> >>
> >> _______________________________________________
> >> hawkular-dev mailing list
> >> hawkular-dev at lists.jboss.org
> >> https://lists.jboss.org/mailman/listinfo/hawkular-dev
> >
> > _______________________________________________
> > hawkular-dev mailing list
> > hawkular-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From jpkroehling at redhat.com Wed Apr 29 13:01:48 2015
From: jpkroehling at redhat.com (=?windows-1252?Q?Juraci_Paix=E3o_Kr=F6hling?=)
Date: Wed, 29 Apr 2015 19:01:48 +0200
Subject: [Hawkular-dev] Tenant Id - Not Part of URL
In-Reply-To: <2426339.6kgTx6A8MY@localhost.localdomain>
References: <1799616218.8541357.1430235896155.JavaMail.zimbra@redhat.com> <555395784.9520692.1430251127156.JavaMail.zimbra@redhat.com>
<2426339.6kgTx6A8MY@localhost.localdomain>
Message-ID: <55410E7C.6030906@redhat.com>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
On 04/29/2015 06:46 PM, Lukas Krejci wrote:
> Well, for inventory, we're considering dropping the context of a
> tenant altogether.
>
> Accounts don't work with a tenant in a usual meaning of that word
> very well - in accounts there is nothing like an isolated "island"
> that cannot be accessed by anyone outside of that island.
>
> Instead, accounts work with a hierarchy of organizations, of which
> users can be members of (and have different roles in) and
> impersonate them.
Actually, this is a requirement we got based on the demos and
discussions that followed them. Accounts can be changed to fit
whatever definition of tenants that we might want.
The use case that led to the current model is:
- - Company "Acme, Inc" has the following departments:
- -- finances
- -- marketing
- -- operations
Finances cannot see the data from Marketing and vice-versa.
Neither finances nor marketing can see data from operations, but
operations should be able to view and/or manage data from both,
including its own.
As we also have "users", the concept of tenant in accounts is then an
abstraction of "users" or "organizations" (company, department, ...).
It's called "persona" because an user might be impersonating a company
when doing some action (ie: jdoe is creating an EAP instance on behalf
of "Acme, inc").
So, as far as the end component (metrics, inventory, ...) is
concerned, all operations belonging to "Acme, Inc" are done by "Acme,
Inc" (who the final user is shouldn't be relevant to the component).
> In inventory, we're using tenants rather loosely - while they form
> a root of the path to any other entity in inventory, it is not
> disallowed to link entities from different tenants.
I believe you know this better than I do, but just make sure that this
model would fit the use case above.
- - Juca.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBCAAGBQJVQQ58AAoJECKM1e+fkPrXhd8IAIOGChSGBaWbDcEBjbK1Hr97
yMbUV8PYDO2b8dtJ0x5B7yntMk/eD03NsSWHJQuglljA+V3m5gkgiUTgzZUgV9/j
h25z6HrtbevMGwEE275Jva9/UiePNY02dShN6X9gk/3I3AXz8NnJ7m6ZM3jIt4tB
AlD/t7Z9/eOlnNpjpIAvwwXh/aSUPkWzbH2gWVIkCxQVUNplpsThwyPcLmtqbvMd
2H5mp7WkToUK3XFxvN+bBHYAAdBHOJ+sPRrgJGg87Jg/KXbr+7WhZETzDn9euqoa
m3Iu3B7Itd+UcHGAaTlVHrQMzBx61Jn6TrPeZRt5ekx9j92tKSGX+3kOcF0KyaQ=
=xZJy
-----END PGP SIGNATURE-----
From vrockai at redhat.com Wed Apr 29 13:09:54 2015
From: vrockai at redhat.com (Viliam Rockai)
Date: Wed, 29 Apr 2015 19:09:54 +0200
Subject: [Hawkular-dev] Inventory REST now has result sets pagination
In-Reply-To: <2159243.DYWF8jYFne@localhost.localdomain>
References: <2159243.DYWF8jYFne@localhost.localdomain>
Message-ID: <1430327394.11457.3.camel@vrockai-laptop>
Hi Lukas,
It seems you're returning multiple "Link:" headers with URLs. I believe
a single Link header with a list is better option. For more info
check-out the [update] section here:
http://pilhuhn.blogspot.de/2013/02/best-practice-for-paging-in-restful-apis.html
IIRC we do get access to headers in angular $resource as to a map
object. So angular devs may have the same issue as stated in the blog
(only single value returned once "Link" key is accessed).
Viliam
On Tue, 2015-04-28 at 11:43 +0200, Lukas Krejci wrote:
> Hi,
>
> I went ahead and prototyped the pagination support both in the backend and the
> REST API within the boundaries of inventory.
>
> Because this is a generic feature, it's been agreed that this stuff would
> deserve a place of its own so that it can be shared amongst the various
> hawkular components.
>
> There are 2 aspects of the paging:
>
> * support in backend - This basically only revolves around the specification
> of the paging requirements and a list "wrapper" that adds paging context to
> the results. The way how the paging will be implemented will differ in each
> component.
> https://github.com/hawkular/hawkular-inventory/tree/master/api/src/main/java/org/hawkular/inventory/api/paging
>
> * support in the REST API - This means to translate the query parameters with
> the paging specification into paging java API and transform the results from
> the backend into the set of headers attached to the response.
>
> The support for paging in REST in inventory is contained in these classes:
>
> https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/src/main/java/org/hawkular/inventory/rest/RequestUtil.java
>
> https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/src/main/java/org/hawkular/inventory/rest/ResponseUtil.java
>
> https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/src/main/java/org/hawkular/inventory/rest/json/Link.java
>
> https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/src/main/java/org/hawkular/inventory/rest/json/LinkDeserializer.java
>
> https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/src/main/java/org/hawkular/inventory/rest/json/LinkSerializer.java
>
> Both the backend and the REST support were either taken from or were heavily
> inspired by the paging support in RHQ.
>
> Where do you think these should live? Do we have a repo for common stuff? I
> imagine we will have to have 2 separate common modules so that we don't drag
> jaxrs deps into core components.
>
> Cheers,
>
> Lukas
>
>
>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From lkrejci at redhat.com Wed Apr 29 15:06:15 2015
From: lkrejci at redhat.com (Lukas Krejci)
Date: Wed, 29 Apr 2015 21:06:15 +0200
Subject: [Hawkular-dev] Inventory REST now has result sets pagination
In-Reply-To: <1430327394.11457.3.camel@vrockai-laptop>
References: <2159243.DYWF8jYFne@localhost.localdomain>
<1430327394.11457.3.camel@vrockai-laptop>
Message-ID: <130032455.vQh4D99tty@localhost.localdomain>
I merely copied the approach we used in RHQ, but yes, we definitely should
look into making it better.
I'll change that to be a single Link header with a list of URIs+rels as
outlined in https://tools.ietf.org/html/rfc5988#section-5.5
Thanks for bringing that up!
On Wednesday, April 29, 2015 19:09:54 Viliam Rockai wrote:
> Hi Lukas,
>
> It seems you're returning multiple "Link:" headers with URLs. I believe
> a single Link header with a list is better option. For more info
> check-out the [update] section here:
> http://pilhuhn.blogspot.de/2013/02/best-practice-for-paging-in-restful-apis.
> html
>
> IIRC we do get access to headers in angular $resource as to a map
> object. So angular devs may have the same issue as stated in the blog
> (only single value returned once "Link" key is accessed).
>
> Viliam
>
> On Tue, 2015-04-28 at 11:43 +0200, Lukas Krejci wrote:
> > Hi,
> >
> > I went ahead and prototyped the pagination support both in the backend and
> > the REST API within the boundaries of inventory.
> >
> > Because this is a generic feature, it's been agreed that this stuff would
> > deserve a place of its own so that it can be shared amongst the various
> > hawkular components.
> >
> > There are 2 aspects of the paging:
> >
> > * support in backend - This basically only revolves around the
> > specification of the paging requirements and a list "wrapper" that adds
> > paging context to the results. The way how the paging will be implemented
> > will differ in each component.
> > https://github.com/hawkular/hawkular-inventory/tree/master/api/src/main/ja
> > va/org/hawkular/inventory/api/paging
> >
> > * support in the REST API - This means to translate the query parameters
> > with the paging specification into paging java API and transform the
> > results from the backend into the set of headers attached to the
> > response.
> >
> > The support for paging in REST in inventory is contained in these classes:
> >
> > https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/sr
> > c/main/java/org/hawkular/inventory/rest/RequestUtil.java
> >
> > https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/sr
> > c/main/java/org/hawkular/inventory/rest/ResponseUtil.java
> >
> > https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/sr
> > c/main/java/org/hawkular/inventory/rest/json/Link.java
> >
> > https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/sr
> > c/main/java/org/hawkular/inventory/rest/json/LinkDeserializer.java
> >
> > https://github.com/hawkular/hawkular-inventory/blob/master/rest-servlet/sr
> > c/main/java/org/hawkular/inventory/rest/json/LinkSerializer.java
> >
> > Both the backend and the REST support were either taken from or were
> > heavily inspired by the paging support in RHQ.
> >
> > Where do you think these should live? Do we have a repo for common stuff?
> > I
> > imagine we will have to have 2 separate common modules so that we don't
> > drag jaxrs deps into core components.
> >
> > Cheers,
> >
> > Lukas
> >
> >
> >
> >
> > _______________________________________________
> > hawkular-dev mailing list
> > hawkular-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From jshaughn at redhat.com Wed Apr 29 17:30:35 2015
From: jshaughn at redhat.com (Jay Shaughnessy)
Date: Wed, 29 Apr 2015 17:30:35 -0400
Subject: [Hawkular-dev] Tenant Id - Not Part of URL
In-Reply-To:
References: <1799616218.8541357.1430235896155.JavaMail.zimbra@redhat.com> <555395784.9520692.1430251127156.JavaMail.zimbra@redhat.com>
Message-ID: <55414D7B.3040206@redhat.com>
And for Alerting we do not yet have an idea of the accounts/authz we
even need. As such, we have no tenants in the REST API nor any accounts
integration. Any thoughts appreciated, It may be something we can
start to figure out at the F2F.
On 4/29/2015 12:28 PM, John Sanda wrote:
> Will the REST APIs for other hawkular services take a similar approach? This seems like an area where we want to be consistent across APIs.
>
>> On Apr 28, 2015, at 3:58 PM, Lukas Krejci wrote:
>>
>> How do metrics' tenants fit into the hawkular accounts and its persona concept?
>>
>> ----- Original Message -----
>>> From: "Stefan Negrea"
>>> To: "Discussions"
>>> Sent: Tuesday, 28 April, 2015 5:44:56 PM
>>> Subject: [Hawkular-dev] Tenant Id - Not Part of URL
>>>
>>> Hello Everybody,
>>>
>>> I've been working on a PR for the upcoming Hawkular Metrics release that will
>>> remove the tenant id from the end-point URLs. The tenant id will be moved to
>>> either a header parameter or a query parameter. The query parameter is in
>>> place for cases (such as curl) where setting a header is not possible,
>>> difficult, or inconvenient.
>>>
>>> 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.
>>>
>>>
>>> Now, to the merits of this change. The tenant id is volatile, can change any
>>> time, and changes to it should be expected; but the rest of the URL is
>>> fixed. The second issue is that the tenant id is a security concern. So we
>>> were limited in design choices since a security concern was leaking as part
>>> of the URL.
>>>
>>> So removing the tenant id from the URL will give us permanent & consistent
>>> addresses for resources (metrics and metric data points). And we 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 to be used on the request. If the same user later decides
>>> to use a tenant id to pass along the request, the URL of the resources 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).
>>>
>>> This change will give us the flexibility to adjust the security model (the
>>> meaning of tenant ids and ways to validate them) without compromising the
>>> URL structure. This will help Hawkular Metrics as it gets integrated into
>>> more and more projects and products.
>>>
>>> Here are the links to the JIRA and the PR for this change:
>>> https://github.com/hawkular/hawkular-metrics/pull/202
>>> https://issues.jboss.org/browse/HWKMETRICS-68
>>>
>>>
>>>
>>> Thank you,
>>> Stefan Negrea
>>>
>>> Software Engineer
>>>
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>>
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150429/72a53ca9/attachment.html
From snegrea at redhat.com Wed Apr 29 19:12:04 2015
From: snegrea at redhat.com (Stefan Negrea)
Date: Wed, 29 Apr 2015 19:12:04 -0400 (EDT)
Subject: [Hawkular-dev] Tenant Id - Not Part of URL
In-Reply-To: <555395784.9520692.1430251127156.JavaMail.zimbra@redhat.com>
References: <1799616218.8541357.1430235896155.JavaMail.zimbra@redhat.com>
<555395784.9520692.1430251127156.JavaMail.zimbra@redhat.com>
Message-ID: <396872469.9554315.1430349124044.JavaMail.zimbra@redhat.com>
----- Original Message -----
> From: "Lukas Krejci"
> To: "Discussions around Hawkular development"
> Sent: Tuesday, April 28, 2015 2:58:47 PM
> Subject: Re: [Hawkular-dev] Tenant Id - Not Part of URL
>
> How do metrics' tenants fit into the hawkular accounts and its persona
> concept?
This change will get Hawkular Metrics in a position to answer that hard question later; no decision needs to be made before the actual integration. Hawkular Metrics will never drop the idea of a tenant internally. It is essential to the way metrics are partitioned and uniquely identified. However, the mapping between external services and internal tenant ids should not leak in the URL of a resource. That kind of leak would be limiting the design choices for integration. This is a general answer, not just for the Hawkular Accounts integration.
Now, specifically to your question, I see personas to be mapped directly to tenant ids. Hawkular Metrics does not need a very complex authorization model. Anybody with the right credentials for a tenant id gets access to all the metrics for that tenant id. When the integration with Hawkular Accounts happens, Metrics would just need to write code to delegate the authentication to Hawkular Accounts, obtain the personas details, and then map personas to internal tenant ids. And this is done without affecting URLs (completely outside of resource addressing).
Thank you,
Stefan
>
> ----- Original Message -----
> > From: "Stefan Negrea"
> > To: "Discussions"
> > Sent: Tuesday, 28 April, 2015 5:44:56 PM
> > Subject: [Hawkular-dev] Tenant Id - Not Part of URL
> >
> > Hello Everybody,
> >
> > I've been working on a PR for the upcoming Hawkular Metrics release that
> > will
> > remove the tenant id from the end-point URLs. The tenant id will be moved
> > to
> > either a header parameter or a query parameter. The query parameter is in
> > place for cases (such as curl) where setting a header is not possible,
> > difficult, or inconvenient.
> >
> > 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.
> >
> >
> > Now, to the merits of this change. The tenant id is volatile, can change
> > any
> > time, and changes to it should be expected; but the rest of the URL is
> > fixed. The second issue is that the tenant id is a security concern. So we
> > were limited in design choices since a security concern was leaking as part
> > of the URL.
> >
> > So removing the tenant id from the URL will give us permanent & consistent
> > addresses for resources (metrics and metric data points). And we 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 to be used on the request. If the same user later decides
> > to use a tenant id to pass along the request, the URL of the resources
> > 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).
> >
> > This change will give us the flexibility to adjust the security model (the
> > meaning of tenant ids and ways to validate them) without compromising the
> > URL structure. This will help Hawkular Metrics as it gets integrated into
> > more and more projects and products.
> >
> > Here are the links to the JIRA and the PR for this change:
> > https://github.com/hawkular/hawkular-metrics/pull/202
> > https://issues.jboss.org/browse/HWKMETRICS-68
> >
> >
> >
> > Thank you,
> > Stefan Negrea
> >
> > Software Engineer
> >
> > _______________________________________________
> > hawkular-dev mailing list
> > hawkular-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hawkular-dev
> >
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From theute at redhat.com Thu Apr 30 02:23:09 2015
From: theute at redhat.com (Thomas Heute)
Date: Thu, 30 Apr 2015 02:23:09 -0400 (EDT)
Subject: [Hawkular-dev] Tenant Id - Not Part of URL
In-Reply-To: <396872469.9554315.1430349124044.JavaMail.zimbra@redhat.com>
References: <1799616218.8541357.1430235896155.JavaMail.zimbra@redhat.com>
<555395784.9520692.1430251127156.JavaMail.zimbra@redhat.com>
<396872469.9554315.1430349124044.JavaMail.zimbra@redhat.com>
Message-ID: <724166753.10695424.1430374989776.JavaMail.zimbra@redhat.com>
Just a note to say that Account integration needs to happen sooner rather than later, this is blocker for the MVP due ... last week
Also let's make sure this is consistent.
- All components need to support the same multitenancy model. We may also need to adapt it to various places where Hawkular will be used (with OpenShift, "standalone", with FeedHenry...) so would help if we can keep each service relatively dumb about the model and keep the logic in Account.
- URL vs Header, I kinda lean toward header, but more importantly we need consistency so component leads need to agree on 1 way.
Thomas
----- Original Message -----
From: "Stefan Negrea"
To: "Discussions around Hawkular development"
Sent: Thursday, April 30, 2015 1:12:04 AM
Subject: Re: [Hawkular-dev] Tenant Id - Not Part of URL
----- Original Message -----
> From: "Lukas Krejci"
> To: "Discussions around Hawkular development"
> Sent: Tuesday, April 28, 2015 2:58:47 PM
> Subject: Re: [Hawkular-dev] Tenant Id - Not Part of URL
>
> How do metrics' tenants fit into the hawkular accounts and its persona
> concept?
This change will get Hawkular Metrics in a position to answer that hard question later; no decision needs to be made before the actual integration. Hawkular Metrics will never drop the idea of a tenant internally. It is essential to the way metrics are partitioned and uniquely identified. However, the mapping between external services and internal tenant ids should not leak in the URL of a resource. That kind of leak would be limiting the design choices for integration. This is a general answer, not just for the Hawkular Accounts integration.
Now, specifically to your question, I see personas to be mapped directly to tenant ids. Hawkular Metrics does not need a very complex authorization model. Anybody with the right credentials for a tenant id gets access to all the metrics for that tenant id. When the integration with Hawkular Accounts happens, Metrics would just need to write code to delegate the authentication to Hawkular Accounts, obtain the personas details, and then map personas to internal tenant ids. And this is done without affecting URLs (completely outside of resource addressing).
Thank you,
Stefan
>
> ----- Original Message -----
> > From: "Stefan Negrea"
> > To: "Discussions"
> > Sent: Tuesday, 28 April, 2015 5:44:56 PM
> > Subject: [Hawkular-dev] Tenant Id - Not Part of URL
> >
> > Hello Everybody,
> >
> > I've been working on a PR for the upcoming Hawkular Metrics release that
> > will
> > remove the tenant id from the end-point URLs. The tenant id will be moved
> > to
> > either a header parameter or a query parameter. The query parameter is in
> > place for cases (such as curl) where setting a header is not possible,
> > difficult, or inconvenient.
> >
> > 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.
> >
> >
> > Now, to the merits of this change. The tenant id is volatile, can change
> > any
> > time, and changes to it should be expected; but the rest of the URL is
> > fixed. The second issue is that the tenant id is a security concern. So we
> > were limited in design choices since a security concern was leaking as part
> > of the URL.
> >
> > So removing the tenant id from the URL will give us permanent & consistent
> > addresses for resources (metrics and metric data points). And we 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 to be used on the request. If the same user later decides
> > to use a tenant id to pass along the request, the URL of the resources
> > 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).
> >
> > This change will give us the flexibility to adjust the security model (the
> > meaning of tenant ids and ways to validate them) without compromising the
> > URL structure. This will help Hawkular Metrics as it gets integrated into
> > more and more projects and products.
> >
> > Here are the links to the JIRA and the PR for this change:
> > https://github.com/hawkular/hawkular-metrics/pull/202
> > https://issues.jboss.org/browse/HWKMETRICS-68
> >
> >
> >
> > Thank you,
> > Stefan Negrea
> >
> > Software Engineer
> >
> > _______________________________________________
> > hawkular-dev mailing list
> > hawkular-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hawkular-dev
> >
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
_______________________________________________
hawkular-dev mailing list
hawkular-dev at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hawkular-dev
From jpkroehling at redhat.com Thu Apr 30 02:58:04 2015
From: jpkroehling at redhat.com (=?windows-1252?Q?Juraci_Paix=E3o_Kr=F6hling?=)
Date: Thu, 30 Apr 2015 08:58:04 +0200
Subject: [Hawkular-dev] Tenant Id - Not Part of URL
In-Reply-To: <724166753.10695424.1430374989776.JavaMail.zimbra@redhat.com>
References: <1799616218.8541357.1430235896155.JavaMail.zimbra@redhat.com> <555395784.9520692.1430251127156.JavaMail.zimbra@redhat.com> <396872469.9554315.1430349124044.JavaMail.zimbra@redhat.com>
<724166753.10695424.1430374989776.JavaMail.zimbra@redhat.com>
Message-ID: <5541D27C.7000005@redhat.com>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
On 04/30/2015 08:23 AM, Thomas Heute wrote:
> Just a note to say that Account integration needs to happen sooner
> rather than later, this is blocker for the MVP due ... last week
>
> Also let's make sure this is consistent. - All components need to
> support the same multitenancy model. We may also need to adapt it
> to various places where Hawkular will be used (with OpenShift,
> "standalone", with FeedHenry...) so would help if we can keep each
> service relatively dumb about the model and keep the logic in
> Account. - URL vs Header, I kinda lean toward header, but more
> importantly we need consistency so component leads need to agree on
> 1 way.
With that in mind, the individual components need not to worry on
whether the tenant information is coming from path or header, as
accounts is able to inject a Persona instance into your REST
service/managed bean via CDI.
As it is right now, Accounts decides on the Persona (tenant) based on
the data from the request already, and this might either be the
currently logged in user (from Keycloak) or an information from HTTP
header (for instance, if the user selected an "organization" on the
account switcher).
- - Juca.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBCAAGBQJVQdJ8AAoJECKM1e+fkPrXioIH+wSAGUIkykiIBaDY2Jxl1bQI
imVdRe/51g4ie+/t2bfMTdA5tV3SghNdXYiAG8vxUw8y0iZIwOh4/ZpXm2PdHyMo
FbTwfkGrl6YpVMFlcFV3xEJig4QQa3bVRykkbDNXawPIA3VLDkA70e6xx+ji/xfO
BO7++So1pfwMzTT5QCZOoBiAoETX7n1fMIK/Q/ZYuFb42mQGHvMwm3lXH5CZQIAN
18bk2KYIa4gB30YddB5JxY0wbj1Z3WpGRPTT6MWluMJ9+A2DtM7weN2bMqJKOfz8
0wYlewpzzoxB9Udubf5Hwl6ThwqF2VkgZgyfpsdGi5Me3s+KXx8ZqmlF5AysVEk=
=yLC/
-----END PGP SIGNATURE-----
From ppalaga at redhat.com Thu Apr 30 03:27:58 2015
From: ppalaga at redhat.com (Peter Palaga)
Date: Thu, 30 Apr 2015 09:27:58 +0200
Subject: [Hawkular-dev] Coming to Parent: publishing JavaDoc and sources
via Maven
In-Reply-To: <5519A810.6000901@redhat.com>
References: <5519518D.7030308@redhat.com>
<55196003.9090202@redhat.com> <5519A53D.2020005@redhat.com>
<5519A810.6000901@redhat.com>
Message-ID: <5541D97E.50308@redhat.com>
Hi *,
I have checked the impact of
https://github.com/hawkular/hawkular-parent-pom/pull/20
in Alerts, Inventory, Agent, Accounts and Metrics. It works everywhere,
producing just a few warnings that can be fixed later. Therefore, I
merged the above PR.
-- P
On 2015-03-30 21:46, Peter Palaga wrote:
> On 03/30/2015 09:34 PM, Peter Palaga wrote:
>> Hi Jay, there is just a couple of them in Bus - see the attached file. -- P
>
> There is no single warning about missing JavaDoc. All the warnings are
> about inconsistencies and broken syntax inside JavaDoc which indeed is
> worth fixing. -- P
>
>> On 03/30/2015 04:38 PM, Jay Shaughnessy wrote:
>>>
>>> Hi Peter, to get an idea of the type and volume of issues this will
>>> report, can you list the current bus warnings you're seeing?
>>>
>>>
>>> On 3/30/2015 9:37 AM, Peter Palaga wrote:
>>>> Hi *, there is a question about handling JavaDoc checks violations at
>>>> the bottom.
>>>>
>>>> I have added maven-javadoc-plugin and maven-source-plugin to the new
>>>> "release" profile in Hawkular Parent.
>>>> https://github.com/hawkular/hawkular-parent-pom/pull/20
>>>>
>>>> I have tested the above only with Hawkular Bus. Therefore, please test
>>>> the setup with your Hawkular component:
>>>> * Make whatever is appropriate to make your component use the pom from
>>>> https://github.com/hawkular/hawkular-parent-pom/pull/20
>>>> * Invoke
>>>>
>>>> mvn clean install -Prelease
>>>>
>>>> * Figure out, how many "[WARNING] Javadoc Warnings" are there.
>>>> * Look into target folders if *-javadoc.jar and *-sources.jar files were
>>>> generated
>>>>
>>>>
>>>> == Handling JavaDoc checks violations
>>>>
>>>> The present setup turns all javadoc violations into warnings using
>>>> -Xdoclint:none [1]. I can only say that there *are* violations in Bus.
>>>>
>>>> I think that we should aim at having no violations at all - i.e. that
>>>> the components should be given a week or two to fix and that we should
>>>> switch to -Xdoclint:all after that. WDYT?
>>>>
>>>> More about -Xdoclint can be found in [2].
>>>>
>>>> Thanks,
>>>>
>>>> Peter
>>>>
>>>> [1]
>>>> https://github.com/hawkular/hawkular-parent-pom/commit/d54a8d03b4ef251d594f1cc4ff3fadfa4a1d4dd3#diff-600376dffeb79835ede4a0b285078036R110
>>>>
>>>>
>>>> [2]http://docs.oracle.com/javase/8/docs/technotes/tools/unix/javac.html
>>>> _______________________________________________
>>>> hawkular-dev mailing list
>>>> hawkular-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>>>
>>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> hawkular-dev mailing list
>>> hawkular-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>>
>>
>>
>>
>> _______________________________________________
>> hawkular-dev mailing list
>> hawkular-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>>
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From lkrejci at redhat.com Thu Apr 30 05:17:12 2015
From: lkrejci at redhat.com (Lukas Krejci)
Date: Thu, 30 Apr 2015 11:17:12 +0200
Subject: [Hawkular-dev] Tenant Id - Not Part of URL
In-Reply-To: <724166753.10695424.1430374989776.JavaMail.zimbra@redhat.com>
References: <1799616218.8541357.1430235896155.JavaMail.zimbra@redhat.com>
<396872469.9554315.1430349124044.JavaMail.zimbra@redhat.com>
<724166753.10695424.1430374989776.JavaMail.zimbra@redhat.com>
Message-ID: <5203459.ly8QEiXKIM@localhost.localdomain>
>From what I understood from the discussions, we essentially hand over all the
"multitenancy" decisions to accounts which can emulate the tenant separation
based on orgs (and at the same time support visibility across tenants for SaaS
operator type of personas).
As such, inventory basically gave up on supporting multitenancy in and of
itself and rather leaves multitenancy only as an authorization concept.
I can't comment on metrics' need for having a "tenant" if it is not used for
addressing individual metrics.
On Thursday, April 30, 2015 02:23:09 Thomas Heute wrote:
> Just a note to say that Account integration needs to happen sooner rather
> than later, this is blocker for the MVP due ... last week
>
> Also let's make sure this is consistent.
> - All components need to support the same multitenancy model. We may also
> need to adapt it to various places where Hawkular will be used (with
> OpenShift, "standalone", with FeedHenry...) so would help if we can keep
> each service relatively dumb about the model and keep the logic in Account.
> - URL vs Header, I kinda lean toward header, but more importantly we need
> consistency so component leads need to agree on 1 way.
>
> Thomas
>
>
> ----- Original Message -----
> From: "Stefan Negrea"
> To: "Discussions around Hawkular development"
> Sent: Thursday, April 30, 2015 1:12:04 AM
> Subject: Re: [Hawkular-dev] Tenant Id - Not Part of URL
>
>
>
> ----- Original Message -----
>
> > From: "Lukas Krejci"
> > To: "Discussions around Hawkular development"
> > Sent: Tuesday, April 28, 2015 2:58:47 PM
> > Subject: Re: [Hawkular-dev] Tenant Id - Not Part of URL
> >
> > How do metrics' tenants fit into the hawkular accounts and its persona
> > concept?
>
> This change will get Hawkular Metrics in a position to answer that hard
> question later; no decision needs to be made before the actual integration.
> Hawkular Metrics will never drop the idea of a tenant internally. It is
> essential to the way metrics are partitioned and uniquely identified.
> However, the mapping between external services and internal tenant ids
> should not leak in the URL of a resource. That kind of leak would be
> limiting the design choices for integration. This is a general answer, not
> just for the Hawkular Accounts integration.
>
> Now, specifically to your question, I see personas to be mapped directly to
> tenant ids. Hawkular Metrics does not need a very complex authorization
> model. Anybody with the right credentials for a tenant id gets access to
> all the metrics for that tenant id. When the integration with Hawkular
> Accounts happens, Metrics would just need to write code to delegate the
> authentication to Hawkular Accounts, obtain the personas details, and then
> map personas to internal tenant ids. And this is done without affecting
> URLs (completely outside of resource addressing).
>
>
> Thank you,
> Stefan
>
> > ----- Original Message -----
> >
> > > From: "Stefan Negrea"
> > > To: "Discussions"
> > > Sent: Tuesday, 28 April, 2015 5:44:56 PM
> > > Subject: [Hawkular-dev] Tenant Id - Not Part of URL
> > >
> > > Hello Everybody,
> > >
> > > I've been working on a PR for the upcoming Hawkular Metrics release that
> > > will
> > > remove the tenant id from the end-point URLs. The tenant id will be
> > > moved
> > > to
> > > either a header parameter or a query parameter. The query parameter is
> > > in
> > > place for cases (such as curl) where setting a header is not possible,
> > > difficult, or inconvenient.
> > >
> > > 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.
> > >
> > >
> > > Now, to the merits of this change. The tenant id is volatile, can change
> > > any
> > > time, and changes to it should be expected; but the rest of the URL is
> > > fixed. The second issue is that the tenant id is a security concern. So
> > > we
> > > were limited in design choices since a security concern was leaking as
> > > part
> > > of the URL.
> > >
> > > So removing the tenant id from the URL will give us permanent &
> > > consistent
> > > addresses for resources (metrics and metric data points). And we 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 to be used on the request. If the same user later
> > > decides
> > > to use a tenant id to pass along the request, the URL of the resources
> > > 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).
> > >
> > > This change will give us the flexibility to adjust the security model
> > > (the
> > > meaning of tenant ids and ways to validate them) without compromising
> > > the
> > > URL structure. This will help Hawkular Metrics as it gets integrated
> > > into
> > > more and more projects and products.
> > >
> > > Here are the links to the JIRA and the PR for this change:
> > > https://github.com/hawkular/hawkular-metrics/pull/202
> > > https://issues.jboss.org/browse/HWKMETRICS-68
> > >
> > >
> > >
> > > Thank you,
> > > Stefan Negrea
> > >
> > > Software Engineer
> > >
> > > _______________________________________________
> > > hawkular-dev mailing list
> > > hawkular-dev at lists.jboss.org
> > > https://lists.jboss.org/mailman/listinfo/hawkular-dev
> >
> > _______________________________________________
> > hawkular-dev mailing list
> > hawkular-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
From gbrown at redhat.com Thu Apr 30 09:17:34 2015
From: gbrown at redhat.com (Gary Brown)
Date: Thu, 30 Apr 2015 09:17:34 -0400 (EDT)
Subject: [Hawkular-dev] Maven swagger plugin
In-Reply-To: <21645870.9571433.1430399376140.JavaMail.zimbra@redhat.com>
Message-ID: <1728625498.9575594.1430399854829.JavaMail.zimbra@redhat.com>
Hi
The current version of the maven-swagger-plugin used by hawkular doesn't include derived types in the generated docs.
I've tried updating to 2.3.4 and it still does not work. From some basic tests with 3.0.0, it seems to produce the correct content in the json schema - but has slightly different attributes to the plugin configuration, which when updated does not seem to run the template correctly.
The other issue is some API changes when updating the com.wordnik:swagger-* dependencies in line with this maven plugin, as there have been some GAV and API changes.
Its not an urgent issue, but it looks like we will be impacted by changes when we need to upgrade, so thought I would raise the issue.
Regards
Gary
From lponce at redhat.com Thu Apr 30 10:36:05 2015
From: lponce at redhat.com (Lucas Ponce)
Date: Thu, 30 Apr 2015 10:36:05 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular Alerts - 0.0.1-Snapshot pushed to master
In-Reply-To: <553E96E5.2060803@redhat.com>
References: <553E96E5.2060803@redhat.com>
Message-ID: <1324367531.9126076.1430404565233.JavaMail.zimbra@redhat.com>
Hello,
We have moved the Cassandra persitence backend into master for Hawkular Alerts in v0.0.1.
Thanks,
Lucas
----- Original Message -----
> From: "Jay Shaughnessy"
> To: hawkular-dev at lists.jboss.org
> Sent: Monday, April 27, 2015 10:07:01 PM
> Subject: [Hawkular-dev] Hawkular Alerts - 0.0.1-Snapshot pushed to master
>
>
> Hawkular Alerts has been updated in master.
>
> Given our latest Hawkular convention for versioning, the versioning has gone
> backwards. We pushed Version 0.0.1-SNAPSHOT, changed from Version
> 1.0.0-SNAPSHOT. We maintain snapshot releases for use with Kettle. But the
> version has changed to reflect API changes. Going forward we'll maintain the
> version of 0.0.1 unless we have an API change, at which point we'll up the
> micro-version. Eventually this will settle down and we can move to versioned
> components, and avoid breaking API changes.
>
> We've begun supplying developer documentation, here:
>
> http://www.hawkular.org/docs/dev/alerts.html
>
> What's NEW!
>
>
> * Alert life-cycle support
>
>
> * Alerts now support Open, Ack and Resolved states.
> * This gives us the ability to store and display full start and end
> times for an alerting "event".
> * Trigger AutoResolve
>
> * This replaces and builds on the former "trigger safety" feature.
> * Optionally provide AutoResolve conditions and dampening to toggle
> the Trigger from Firing mode to AutoResolve mode.
> * Optionally have a Trigger's alerts set Resolved automatically, when
> the trigger's AutoResolve conditions are satisfied.
> * Trigger AutoDisable
>
> * Optionally have a Trigger disable itself after firing.
> * Mutes a trigger without the need to define AutoResolve.
> * Rest Api control of the new features.
> * Twilio SMS sender action
> * Aerogear sender action
> * Performance testing infrastructure
> * Improved Rest API documentation
>
>
> And for Hawkular Kettle!
>
>
> * Data Filtering
>
>
> * Only forward relevant metric and availability data for alert
> processing.
> * Remove the metrics and availability not used in any trigger.
>
> And of course several fixes and improvements.
>
> Coming Up:
>
>
> * Moving the persistence back-end to Cassandra to leverage the Metrics
> cluster (soon).
> * PagerDuty action integration.
> * Integration of the new 0.0.1 features into Hawkular.
>
>
>
>
>
> Hawkular Alerts Team
> Jay Shaughnessy
> Lucas Ponce
> Thomas Segismont
>
> _______________________________________________
> hawkular-dev mailing list
> hawkular-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hawkular-dev
>
From mmahoney at redhat.com Thu Apr 30 16:33:29 2015
From: mmahoney at redhat.com (Matthew Mahoney)
Date: Thu, 30 Apr 2015 16:33:29 -0400 (EDT)
Subject: [Hawkular-dev] Public Hawkular Instances - Feedback Please
In-Reply-To: <2041921250.10664134.1430425335461.JavaMail.zimbra@redhat.com>
Message-ID: <739646864.10670849.1430426009913.JavaMail.zimbra@redhat.com>
Hawkular Community,
The JON QE team is querying feedback regarding the availability & usefulness of the Public Hawkular Instances:
http://209.132.178.218:18080 (Try it out - " kick the tires ")
http://209.132.178.218:18090 (On-demand build for Development / Integration usage)
* Are either of these instances being used, and if so for what purpose?
* What can we do to make these instances more usable / useful?
Thanks!
Matt
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150430/e74b3107/attachment.html
From snegrea at redhat.com Thu Apr 30 18:28:14 2015
From: snegrea at redhat.com (Stefan Negrea)
Date: Thu, 30 Apr 2015 18:28:14 -0400 (EDT)
Subject: [Hawkular-dev] Hawkular Metrics 0.3.3 - Release & Beyond
In-Reply-To: <1345058757.10138787.1430432449139.JavaMail.zimbra@redhat.com>
Message-ID: <563346197.10140584.1430432894081.JavaMail.zimbra@redhat.com>
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/hawkular/metrics/
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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Metrics REST API - 0.3.1 vs 0.3.3.pdf
Type: application/pdf
Size: 68765 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150430/fb9a72c9/attachment-0001.pdf