You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@mesos.apache.org by Joseph Wu <jo...@mesosphere.io> on 2016/04/06 00:33:15 UTC

Re: Review Request 45440: Added some metrics to the long-lived-framework example.

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/
-----------------------------------------------------------

(Updated April 5, 2016, 3:33 p.m.)


Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.


Changes
-------

Rebased on previous patch (interleaved changes).


Bugs: MESOS-5062
    https://issues.apache.org/jira/browse/MESOS-5062


Repository: mesos


Description
-------

Adds metrics to gauge the health of the framework.  This includes:

* uptime_secs     = How long the framework has been running.
* registered      = If the framework is registered.
* offers_received = A counter used to determine if the framework is starved or not.
* tasks_launched  = Number of tasks launched.
* abnormal_terminations = Number of terminal status updates which were not `TASK_FINISHED`.

Also adds an endpoint `/framework/counters` which returns the list of metrics which are "counters".


Diffs (updated)
-----

  src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 

Diff: https://reviews.apache.org/r/45440/diff/


Testing
-------

make check

Also deployed this version on a test cluster.  See the previous review.


Thanks,

Joseph Wu


Re: Review Request 45440: Added some metrics to the long-lived-framework example.

Posted by Vinod Kone <vi...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/#review127897
-----------------------------------------------------------


Ship it!




Ship It!

- Vinod Kone


On April 6, 2016, 11:19 p.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/45440/
> -----------------------------------------------------------
> 
> (Updated April 6, 2016, 11:19 p.m.)
> 
> 
> Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.
> 
> 
> Bugs: MESOS-5062
>     https://issues.apache.org/jira/browse/MESOS-5062
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds metrics to gauge the health of the framework.  This includes:
> 
> * uptime_secs = How long the framework has been running.
> * registered = If the framework is registered.
> * offers_received = A counter used to determine if the framework is 
>   starved or not.
> * tasks_launched = Number of tasks launched.
> * abnormal_terminations = Number of terminal status updates which 
>   were not `TASK_FINISHED`.
> 
> Also adds an endpoint `/framework/counters` which returns the list of 
> metrics which are "counters".
> 
> 
> Diffs
> -----
> 
>   src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 
> 
> Diff: https://reviews.apache.org/r/45440/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> Also deployed this version on a test cluster.  See the previous review.
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>


Re: Review Request 45440: Added some metrics to the long-lived-framework example.

Posted by Joseph Wu <jo...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/
-----------------------------------------------------------

(Updated April 6, 2016, 4:19 p.m.)


Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.


Changes
-------

Update description to fit under 72 characters per line.


Bugs: MESOS-5062
    https://issues.apache.org/jira/browse/MESOS-5062


Repository: mesos


Description (updated)
-------

Adds metrics to gauge the health of the framework.  This includes:

* uptime_secs = How long the framework has been running.
* registered = If the framework is registered.
* offers_received = A counter used to determine if the framework is 
  starved or not.
* tasks_launched = Number of tasks launched.
* abnormal_terminations = Number of terminal status updates which 
  were not `TASK_FINISHED`.

Also adds an endpoint `/framework/counters` which returns the list of 
metrics which are "counters".


Diffs
-----

  src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 

Diff: https://reviews.apache.org/r/45440/diff/


Testing
-------

make check

Also deployed this version on a test cluster.  See the previous review.


Thanks,

Joseph Wu


Re: Review Request 45440: Added some metrics to the long-lived-framework example.

Posted by Joseph Wu <jo...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/
-----------------------------------------------------------

(Updated April 6, 2016, 3:34 p.m.)


Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.


Changes
-------

Accidentally reset my .reviewboardrc.  Restored description.


Bugs: MESOS-5062
    https://issues.apache.org/jira/browse/MESOS-5062


Repository: mesos


Description (updated)
-------

Adds metrics to gauge the health of the framework.  This includes:

* uptime_secs = How long the framework has been running.
* registered = If the framework is registered.
* offers_received = A counter used to determine if the framework is starved or not.
* tasks_launched = Number of tasks launched.
* abnormal_terminations = Number of terminal status updates which were not `TASK_FINISHED`.

Also adds an endpoint `/framework/counters` which returns the list of metrics which are "counters".


Diffs
-----

  src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 

Diff: https://reviews.apache.org/r/45440/diff/


Testing
-------

make check

Also deployed this version on a test cluster.  See the previous review.


Thanks,

Joseph Wu


Re: Review Request 45440: Added some metrics to the long-lived-framework example.

Posted by Joseph Wu <jo...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/
-----------------------------------------------------------

(Updated April 6, 2016, 3:16 p.m.)


Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.


Changes
-------

Addressed a subset of the comments.


Bugs: MESOS-5062
    https://issues.apache.org/jira/browse/MESOS-5062


Repository: mesos


Description (updated)
-------

Added some metrics to the long-lived-framework example.


Diffs (updated)
-----

  src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 

Diff: https://reviews.apache.org/r/45440/diff/


Testing
-------

make check

Also deployed this version on a test cluster.  See the previous review.


Thanks,

Joseph Wu


Re: Review Request 45440: Added some metrics to the long-lived-framework example.

Posted by Vinod Kone <vi...@gmail.com>.

> On April 6, 2016, 6:55 p.m., Vinod Kone wrote:
> >

As discussed offline, lets add TODOs for metrics to defer the gauges to scheduler process.


- Vinod


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/#review127404
-----------------------------------------------------------


On April 6, 2016, 11:19 p.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/45440/
> -----------------------------------------------------------
> 
> (Updated April 6, 2016, 11:19 p.m.)
> 
> 
> Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.
> 
> 
> Bugs: MESOS-5062
>     https://issues.apache.org/jira/browse/MESOS-5062
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds metrics to gauge the health of the framework.  This includes:
> 
> * uptime_secs = How long the framework has been running.
> * registered = If the framework is registered.
> * offers_received = A counter used to determine if the framework is 
>   starved or not.
> * tasks_launched = Number of tasks launched.
> * abnormal_terminations = Number of terminal status updates which 
>   were not `TASK_FINISHED`.
> 
> Also adds an endpoint `/framework/counters` which returns the list of 
> metrics which are "counters".
> 
> 
> Diffs
> -----
> 
>   src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 
> 
> Diff: https://reviews.apache.org/r/45440/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> Also deployed this version on a test cluster.  See the previous review.
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>


Re: Review Request 45440: Added some metrics to the long-lived-framework example.

Posted by Joseph Wu <jo...@mesosphere.io>.

> On April 6, 2016, 11:55 a.m., Vinod Kone wrote:
> > src/examples/long_lived_framework.cpp, line 241
> > <https://reviews.apache.org/r/45440/diff/2/?file=1326914#file1326914line241>
> >
> >     Looking at the code below I think it makes more sense to make LongLivedScheduler an instance of process instead of making Metrics a process? That is consistent with how we did it elsewhere in the code base (e.g., Master and Slave).

I added the sub-class because the `LongLivedScheduler` already inherits from `Scheduler`, which does not expect a libprocess process.  And multiple inheritance seemed like a bad idea.


> On April 6, 2016, 11:55 a.m., Vinod Kone wrote:
> > src/examples/long_lived_framework.cpp, line 244
> > <https://reviews.apache.org/r/45440/diff/2/?file=1326914#file1326914line244>
> >
> >     why is the process based call "framework" here?

I wanted a proper name for the special metadata endpoint `/framework/counters`.  If I didn't add this, the endpoint would be `/(1)/counters`.


> On April 6, 2016, 11:55 a.m., Vinod Kone wrote:
> > src/examples/long_lived_framework.cpp, line 272
> > <https://reviews.apache.org/r/45440/diff/2/?file=1326914#file1326914line272>
> >
> >     s/counter/metrics/
> >     
> >     I'm assuming you might want to add gauge type metrics to this endpoint in the future?
> >     
> >     More importantly, I didn't understand why you need to add a special endpoint for these 2 counters. Why can't they just be part of the "/metrics/snapshot" endpoint like the other metrics?

This endpoint's sole purpose is to specify which metrics are `Counters`.  We still get the metric values from `/metrics/snapshot`, but it can also call this endpoint to decide which metrics to treat as counters.


> On April 6, 2016, 11:55 a.m., Vinod Kone wrote:
> > src/examples/long_lived_framework.cpp, lines 298-313
> > <https://reviews.apache.org/r/45440/diff/2/?file=1326914#file1326914line298>
> >
> >     seems a bit weird that these are part of the metrics class. In Master and Slave, we made these gauges part of the Master and Slave class instead.

I can't put these methods in a non-libprocess-process class since they are called via `defer` by the gauges.


- Joseph


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/#review127404
-----------------------------------------------------------


On April 5, 2016, 3:33 p.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/45440/
> -----------------------------------------------------------
> 
> (Updated April 5, 2016, 3:33 p.m.)
> 
> 
> Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.
> 
> 
> Bugs: MESOS-5062
>     https://issues.apache.org/jira/browse/MESOS-5062
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds metrics to gauge the health of the framework.  This includes:
> 
> * uptime_secs     = How long the framework has been running.
> * registered      = If the framework is registered.
> * offers_received = A counter used to determine if the framework is starved or not.
> * tasks_launched  = Number of tasks launched.
> * abnormal_terminations = Number of terminal status updates which were not `TASK_FINISHED`.
> 
> Also adds an endpoint `/framework/counters` which returns the list of metrics which are "counters".
> 
> 
> Diffs
> -----
> 
>   src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 
> 
> Diff: https://reviews.apache.org/r/45440/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> Also deployed this version on a test cluster.  See the previous review.
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>


Re: Review Request 45440: Added some metrics to the long-lived-framework example.

Posted by Vinod Kone <vi...@gmail.com>.

> On April 6, 2016, 6:55 p.m., Vinod Kone wrote:
> > src/examples/long_lived_framework.cpp, line 272
> > <https://reviews.apache.org/r/45440/diff/2/?file=1326914#file1326914line272>
> >
> >     s/counter/metrics/
> >     
> >     I'm assuming you might want to add gauge type metrics to this endpoint in the future?
> >     
> >     More importantly, I didn't understand why you need to add a special endpoint for these 2 counters. Why can't they just be part of the "/metrics/snapshot" endpoint like the other metrics?
> 
> Joseph Wu wrote:
>     This endpoint's sole purpose is to specify which metrics are `Counters`.  We still get the metric values from `/metrics/snapshot`, but it can also call this endpoint to decide which metrics to treat as counters.

but why a special endpoint for counters? this is not how we did metrics for master or slave or allocator for example.


- Vinod


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/#review127404
-----------------------------------------------------------


On April 6, 2016, 11:19 p.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/45440/
> -----------------------------------------------------------
> 
> (Updated April 6, 2016, 11:19 p.m.)
> 
> 
> Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.
> 
> 
> Bugs: MESOS-5062
>     https://issues.apache.org/jira/browse/MESOS-5062
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds metrics to gauge the health of the framework.  This includes:
> 
> * uptime_secs = How long the framework has been running.
> * registered = If the framework is registered.
> * offers_received = A counter used to determine if the framework is 
>   starved or not.
> * tasks_launched = Number of tasks launched.
> * abnormal_terminations = Number of terminal status updates which 
>   were not `TASK_FINISHED`.
> 
> Also adds an endpoint `/framework/counters` which returns the list of 
> metrics which are "counters".
> 
> 
> Diffs
> -----
> 
>   src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 
> 
> Diff: https://reviews.apache.org/r/45440/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> Also deployed this version on a test cluster.  See the previous review.
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>


Re: Review Request 45440: Added some metrics to the long-lived-framework example.

Posted by Joseph Wu <jo...@mesosphere.io>.

> On April 6, 2016, 11:55 a.m., Vinod Kone wrote:
> > src/examples/long_lived_framework.cpp, line 272
> > <https://reviews.apache.org/r/45440/diff/2/?file=1326914#file1326914line272>
> >
> >     s/counter/metrics/
> >     
> >     I'm assuming you might want to add gauge type metrics to this endpoint in the future?
> >     
> >     More importantly, I didn't understand why you need to add a special endpoint for these 2 counters. Why can't they just be part of the "/metrics/snapshot" endpoint like the other metrics?
> 
> Joseph Wu wrote:
>     This endpoint's sole purpose is to specify which metrics are `Counters`.  We still get the metric values from `/metrics/snapshot`, but it can also call this endpoint to decide which metrics to treat as counters.
> 
> Vinod Kone wrote:
>     but why a special endpoint for counters? this is not how we did metrics for master or slave or allocator for example.

For master/agent metrics, we can hard-code a list of counters.  This is how we differentiate metrics on our test clusters.

It would be ideal if there were, say, another `/metrics/<snapshot + metadata>` endpoint which told us which metrics were counters.


- Joseph


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/#review127404
-----------------------------------------------------------


On April 6, 2016, 4:19 p.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/45440/
> -----------------------------------------------------------
> 
> (Updated April 6, 2016, 4:19 p.m.)
> 
> 
> Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.
> 
> 
> Bugs: MESOS-5062
>     https://issues.apache.org/jira/browse/MESOS-5062
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds metrics to gauge the health of the framework.  This includes:
> 
> * uptime_secs = How long the framework has been running.
> * registered = If the framework is registered.
> * offers_received = A counter used to determine if the framework is 
>   starved or not.
> * tasks_launched = Number of tasks launched.
> * abnormal_terminations = Number of terminal status updates which 
>   were not `TASK_FINISHED`.
> 
> Also adds an endpoint `/framework/counters` which returns the list of 
> metrics which are "counters".
> 
> 
> Diffs
> -----
> 
>   src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 
> 
> Diff: https://reviews.apache.org/r/45440/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> Also deployed this version on a test cluster.  See the previous review.
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>


Re: Review Request 45440: Added some metrics to the long-lived-framework example.

Posted by Vinod Kone <vi...@gmail.com>.

> On April 6, 2016, 6:55 p.m., Vinod Kone wrote:
> >
> 
> Vinod Kone wrote:
>     As discussed offline, lets add TODOs for metrics to defer the gauges to scheduler process.

Mark the issues as fixed here, so that we can focus the discussion on the last review in the chain.


- Vinod


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/#review127404
-----------------------------------------------------------


On April 6, 2016, 11:19 p.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/45440/
> -----------------------------------------------------------
> 
> (Updated April 6, 2016, 11:19 p.m.)
> 
> 
> Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.
> 
> 
> Bugs: MESOS-5062
>     https://issues.apache.org/jira/browse/MESOS-5062
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds metrics to gauge the health of the framework.  This includes:
> 
> * uptime_secs = How long the framework has been running.
> * registered = If the framework is registered.
> * offers_received = A counter used to determine if the framework is 
>   starved or not.
> * tasks_launched = Number of tasks launched.
> * abnormal_terminations = Number of terminal status updates which 
>   were not `TASK_FINISHED`.
> 
> Also adds an endpoint `/framework/counters` which returns the list of 
> metrics which are "counters".
> 
> 
> Diffs
> -----
> 
>   src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 
> 
> Diff: https://reviews.apache.org/r/45440/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> Also deployed this version on a test cluster.  See the previous review.
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>


Re: Review Request 45440: Added some metrics to the long-lived-framework example.

Posted by Vinod Kone <vi...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/#review127404
-----------------------------------------------------------




src/examples/long_lived_framework.cpp (line 92)
<https://reviews.apache.org/r/45440/#comment190700>

    do a `process::wait()` here as well?



src/examples/long_lived_framework.cpp (line 241)
<https://reviews.apache.org/r/45440/#comment190709>

    Looking at the code below I think it makes more sense to make LongLivedScheduler an instance of process instead of making Metrics a process? That is consistent with how we did it elsewhere in the code base (e.g., Master and Slave).



src/examples/long_lived_framework.cpp (line 244)
<https://reviews.apache.org/r/45440/#comment190704>

    why is the process based call "framework" here?



src/examples/long_lived_framework.cpp (line 272)
<https://reviews.apache.org/r/45440/#comment190701>

    s/counter/metrics/
    
    I'm assuming you might want to add gauge type metrics to this endpoint in the future?
    
    More importantly, I didn't understand why you need to add a special endpoint for these 2 counters. Why can't they just be part of the "/metrics/snapshot" endpoint like the other metrics?



src/examples/long_lived_framework.cpp (line 274)
<https://reviews.apache.org/r/45440/#comment190702>

    s/counter-type//



src/examples/long_lived_framework.cpp (line 275)
<https://reviews.apache.org/r/45440/#comment190703>

    Why does this return 202 instead of 200? Looks like it is returning a 200 below btw.



src/examples/long_lived_framework.cpp (lines 298 - 313)
<https://reviews.apache.org/r/45440/#comment190707>

    seems a bit weird that these are part of the metrics class. In Master and Slave, we made these gauges part of the Master and Slave class instead.



src/examples/long_lived_framework.cpp (line 312)
<https://reviews.apache.org/r/45440/#comment190708>

    shouldn't this be synchronized? ideally this would be just deferred to the scheduler process.


- Vinod Kone


On April 5, 2016, 10:33 p.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/45440/
> -----------------------------------------------------------
> 
> (Updated April 5, 2016, 10:33 p.m.)
> 
> 
> Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.
> 
> 
> Bugs: MESOS-5062
>     https://issues.apache.org/jira/browse/MESOS-5062
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds metrics to gauge the health of the framework.  This includes:
> 
> * uptime_secs     = How long the framework has been running.
> * registered      = If the framework is registered.
> * offers_received = A counter used to determine if the framework is starved or not.
> * tasks_launched  = Number of tasks launched.
> * abnormal_terminations = Number of terminal status updates which were not `TASK_FINISHED`.
> 
> Also adds an endpoint `/framework/counters` which returns the list of metrics which are "counters".
> 
> 
> Diffs
> -----
> 
>   src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 
> 
> Diff: https://reviews.apache.org/r/45440/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> Also deployed this version on a test cluster.  See the previous review.
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>


Re: Review Request 45440: Added some metrics to the long-lived-framework example.

Posted by Mesos ReviewBot <re...@mesos.apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45440/#review127262
-----------------------------------------------------------



Patch looks great!

Reviews applied: [45067, 45440]

Passed command: export OS='ubuntu:14.04' CONFIGURATION='--verbose' COMPILER='gcc' ENVIRONMENT='GLOG_v=1 MESOS_VERBOSE=1'; ./support/docker_build.sh

- Mesos ReviewBot


On April 5, 2016, 10:33 p.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/45440/
> -----------------------------------------------------------
> 
> (Updated April 5, 2016, 10:33 p.m.)
> 
> 
> Review request for mesos, Greg Mann, Artem Harutyunyan, Kevin Klues, and Vinod Kone.
> 
> 
> Bugs: MESOS-5062
>     https://issues.apache.org/jira/browse/MESOS-5062
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds metrics to gauge the health of the framework.  This includes:
> 
> * uptime_secs     = How long the framework has been running.
> * registered      = If the framework is registered.
> * offers_received = A counter used to determine if the framework is starved or not.
> * tasks_launched  = Number of tasks launched.
> * abnormal_terminations = Number of terminal status updates which were not `TASK_FINISHED`.
> 
> Also adds an endpoint `/framework/counters` which returns the list of metrics which are "counters".
> 
> 
> Diffs
> -----
> 
>   src/examples/long_lived_framework.cpp ef498d63bc5f0a8deb46d71edd85a76a1d38fdd0 
> 
> Diff: https://reviews.apache.org/r/45440/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> Also deployed this version on a test cluster.  See the previous review.
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>