[Hawkular-dev] availability and metric endpoints
John Sanda
jsanda at redhat.com
Fri Mar 20 20:22:32 EDT 2015
> On Mar 20, 2015, at 12:47 PM, John Sanda <jsanda at redhat.com> wrote:
>
>>
>> On Mar 20, 2015, at 12:23 PM, Lukas Krejci <lkrejci at redhat.com <mailto:lkrejci at redhat.com>> wrote:
>>
>> On Friday, March 20, 2015 09:03:19 mike thompson wrote:
>>>> On 20 Mar 2015, at 08:19, Lukas Krejci <lkrejci at redhat.com <mailto:lkrejci at redhat.com>> wrote:
>>>>
>>>> I think the "metrics" should actually be dropped instead of "numeric”.
>>>
>>> The only thing about ‘numeric’ is that it is not very specific. Numeric just
>>> means number — every metric is a number so its really not adding anything.
>>> Even availability data is numeric.
>>
>> Isn't metrics going to store "events" eventually, too? Those would be textual,
>> wouldn't they?
>>
>> Also, IMHO, even config could be stored in metrics. Even though that is a bit
>> of a stretch, configuration is after all a time series of structured data...
>>
>> You're right that at the moment numeric doesn't add much information. So maybe
>> instead of that, the type would specify what should be done with the metric?
>>
>> Something along the lines of dropwizard-metrics' distinction between a meter,
>> counter, gauge, histogram, etc?
>>
>> So like:
>>
>> http://asdf.com/hawkular/metrics/tenant1/histogram/{id} <http://asdf.com/hawkular/metrics/tenant1/histogram/{id}>
>> http://asdf.com/hawkular/metrics/tenant1/counter/{id}
>>
>
> My aggregate metrics design doc[1] talks about formally introducing gauges and counters. The question I have about endpoints like this is what about pushing a batch of metrics? Do we need to make a separate request for each type? That seems cumbersome and inefficient.
>
> [1] http://bit.ly/1BAfF8d <http://bit.ly/1BAfF8d>
>
I spent time today thinking about how we might implement counters. There is likely going to be different write paths and schema involved for counters and gauges; consquently, I think that the last suggestion from Lukas makes the most sense. We might have,
POST /hawkular/metrics/tenant1/gauages
GET /hawkular/metrics/tenant1/gauges
GET /hawkular/metrics/tenant1/gauges/{id}
POST /hawkular/metrics/tenant1/counters
GET /hawkular/metrics/tenant1/counters
GET /hawkular/metrics/tenant1/counters/{id}
And to put my REST education to the test here, If I want to find out about the types of metrics that are supported, I would do a GET /hawkular/metrics/tenant1 and the response should tell me about gauges, counters, tags, etc.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hawkular-dev/attachments/20150320/a45e9f2f/attachment.html
More information about the hawkular-dev
mailing list