You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by gi...@apache.org on 2018/04/27 23:46:31 UTC
[06/25] mesos-site git commit: Updated the website built from mesos
SHA: ed83065.
http://git-wip-us.apache.org/repos/asf/mesos-site/blob/32a8ab49/content/api/latest/c++/src_2master_2metrics_8hpp_source.html
----------------------------------------------------------------------
diff --git a/content/api/latest/c++/src_2master_2metrics_8hpp_source.html b/content/api/latest/c++/src_2master_2metrics_8hpp_source.html
index 89cc865..4ecbfff 100644
--- a/content/api/latest/c++/src_2master_2metrics_8hpp_source.html
+++ b/content/api/latest/c++/src_2master_2metrics_8hpp_source.html
@@ -52,42 +52,36 @@
<div class="title">metrics.hpp</div> </div>
</div><!--header-->
<div class="contents">
-<a href="src_2master_2metrics_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// or more contributor license agreements. See the NOTICE file</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// distributed with this work for additional information</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">// regarding copyright ownership. The ASF licenses this file</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">// to you under the Apache License, Version 2.0 (the</span></div><div class="line"><a name="l00006">
</a><span class="lineno"> 6</span> <span class="comment">// "License"); you may not use this file except in compliance</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">// with the License. You may obtain a copy of the License at</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">//</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">// http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">//</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">// Unless required by applicable law or agreed to in writing, software</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"
>// distributed under the License is distributed on an "AS IS" BASIS,</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">// See the License for the specific language governing permissions and</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">// limitations under the License.</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> </div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#ifndef __MASTER_METRICS_HPP__</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#define __MASTER_METRICS_HPP__</span></div><div cla
ss="line"><a name="l00019"></a><span class="lineno"> 19</span> </div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <string></span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <vector></span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <<a class="code" href="counter_8hpp.html">process/metrics/counter.hpp</a>></span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <<a class="code" href="gauge_8hpp.html">process/metrics/gauge.hpp</a>></span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <<a class="code" href="3rdpa
rty_2libprocess_2include_2process_2metrics_2metrics_8hpp.html">process/metrics/metrics.hpp</a>></span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include <<a class="code" href="hashmap_8hpp.html">stout/hashmap.hpp</a>></span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="include_2mesos_2mesos_8hpp.html">mesos/mesos.hpp</a>"</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="type__utils_8hpp.html">mesos/type_utils.hpp</a>"</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div><div class="line
"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keyword">namespace </span><a class="code" href="namespacemesos.html">mesos</a> {</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keyword">namespace </span><a class="code" href="namespaceinternal.html">internal</a> {</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">namespace </span><a class="code" href="namespacemesos_1_1v1_1_1master.html">master</a> {</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keyword">class </span>Master;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div><div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html"> 38</a></span> <span clas
s="keyword">struct </span><a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html">Metrics</a></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> {</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  <span class="keyword">explicit</span> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a39a2bce993350772570e273bb0df46f7">Metrics</a>(<span class="keyword">const</span> <a class="code" href="classmesos_1_1internal_1_1master_1_1Master.html">Master</a>& <a class="code" href="namespacemesos_1_1v1_1_1master.html">master</a>);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aaae431bf7f7d919b70f3783f20421462">~Metrics</a>();</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</s
pan> </div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6c8a491b0c5ff5344214a884cc1b9d5c"> 44</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6c8a491b0c5ff5344214a884cc1b9d5c">uptime_secs</a>;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af37e9769965a0b11b68c1d713cabea40"> 45</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af37e9769965a0b11b68c1d713cabea40">elected</a>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="s
tructmesos_1_1internal_1_1master_1_1Metrics.html#a3ec007356077c50f26a5983952ed9b25"> 47</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a3ec007356077c50f26a5983952ed9b25">slaves_connected</a>;</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ab648cfd9d5ca1214af032002b5e21495"> 48</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ab648cfd9d5ca1214af032002b5e21495">slaves_disconnected</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ae771533b9259f215da82e166cbf64823"> 49</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.htm
l">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ae771533b9259f215da82e166cbf64823">slaves_active</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a7165c65f6da325c6e73bb7aa2ad73b2c"> 50</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a7165c65f6da325c6e73bb7aa2ad73b2c">slaves_inactive</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aef4b7d73cc614ae86b9510c80dc39c42"> 51</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aef4b7d73cc614ae86b9510c80dc39c42">slaves_unreachable</a>;</div><div c
lass="line"><a name="l00052"></a><span class="lineno"> 52</span> </div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a26e19539d8ee1993581d5d890f246e98"> 53</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a26e19539d8ee1993581d5d890f246e98">frameworks_connected</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a782cfa93eb37cf3a2c87717188079343"> 54</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a782cfa93eb37cf3a2c87717188079343">frameworks_disconnected</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href
="structmesos_1_1internal_1_1master_1_1Metrics.html#a933856393925f3007c0ed28731f2a70f"> 55</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a933856393925f3007c0ed28731f2a70f">frameworks_active</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#abf4b221447980cdae6fea0eca97bb0a5"> 56</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#abf4b221447980cdae6fea0eca97bb0a5">frameworks_inactive</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a8455de6a2bd5235878e337d93910
5d2f"> 58</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a8455de6a2bd5235878e337d939105d2f">outstanding_offers</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="comment">// Task state metrics.</span></div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a4c0c9f8614cfa53de3d13fcec8cfe12b"> 61</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a4c0c9f8614cfa53de3d13fcec8cfe12b">tasks_staging</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1m
aster_1_1Metrics.html#a58ceab898f302e83651f310149fd0533"> 62</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a58ceab898f302e83651f310149fd0533">tasks_starting</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a056b2af4883801c2adb83738a95dc3d7"> 63</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a056b2af4883801c2adb83738a95dc3d7">tasks_running</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af5c3290edf31246c0ddbc91f7bb7ac09"> 64</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a c
lass="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af5c3290edf31246c0ddbc91f7bb7ac09">tasks_unreachable</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6be2ecde2979fe4b41394474c6446c0d"> 65</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6be2ecde2979fe4b41394474c6446c0d">tasks_killing</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a39526e59149777e9bdec597f564117bd"> 66</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a39526e59149777e9bdec597f564117bd">tasks_finished</a>;</div><div class="line"><a name="l00067"></a>
<span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a7a931b6abea7aca55a1683d87a8e3f28"> 67</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a7a931b6abea7aca55a1683d87a8e3f28">tasks_failed</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a85c14ac3a539831dca77ce178002de67"> 68</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a85c14ac3a539831dca77ce178002de67">tasks_killed</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad7dd4926771fc52212d66ef2a15becb3"> 69</a></span>  <a class="code" h
ref="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad7dd4926771fc52212d66ef2a15becb3">tasks_lost</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a690683e4e4acf58df927021113c151e6"> 70</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a690683e4e4acf58df927021113c151e6">tasks_error</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aa1142a9799f1f5f5c2cf8c51f5bebe02"> 71</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aa1142a9799f1f5f5c2cf8c5
1f5bebe02">tasks_dropped</a>;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6a3171cad662ad2e98fdb5238507539e"> 72</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6a3171cad662ad2e98fdb5238507539e">tasks_gone</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aa28367941aefe4e80158ffbcf48e1cb1"> 73</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aa28367941aefe4e80158ffbcf48e1cb1">tasks_gone_by_operator</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div><div class="line"><a name="l00075"></a><sp
an class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a48d3a800e6f17792bc314e271a7486d0"> 75</a></span>  <span class="keyword">typedef</span> <a class="code" href="classhashmap.html">hashmap<TaskStatus::Reason, process::metrics::Counter></a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a48d3a800e6f17792bc314e271a7486d0">Reasons</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a372c76312efe294b401075271f570df2"> 76</a></span>  <span class="keyword">typedef</span> <a class="code" href="classhashmap.html">hashmap<TaskStatus::Source, Reasons></a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a372c76312efe294b401075271f570df2">SourcesReasons</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div><div class="line"><a name="l00078"></a><span cla
ss="lineno"> 78</span>  <span class="comment">// NOTE: We only track metrics sources and reasons for terminal states.</span></div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#abe77ce337a937a776194f1b7a977c3d6"> 79</a></span>  <a class="code" href="classhashmap.html">hashmap<TaskState, SourcesReasons></a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#abe77ce337a937a776194f1b7a977c3d6">tasks_states</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="comment">// Message counters.</span></div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a8e91f7067a99d1e4855042ac5353b30f"> 82</a></span>  <a class="code" href="classprocess_1_1metr
ics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a8e91f7067a99d1e4855042ac5353b30f">dropped_messages</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="comment">// Metrics specific to frameworks of a common principal.</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="comment">// These metrics have names prefixed by "frameworks/<principal>/".</span></div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html"> 86</a></span>  <span class="keyword">struct </span><a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html">Frameworks</a></div><div class="line"><a name="l00087"></a><span c
lass="lineno"> 87</span>  {</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="comment">// Counters for messages from all frameworks of this principal.</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="comment">// Note: We only count messages from active scheduler</span></div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="comment">// *instances* while they are *registered*. i.e., messages</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="comment">// prior to the completion of (re)registration</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="comment">// (AuthenticateMessage and (Re)RegisterFrameworkMessage) and</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span cl
ass="comment">// messages from an inactive scheduler instance (after the</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="comment">// framework has failed over) are not counted.</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  <span class="comment">// Framework messages received (before processing).</span></div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#ad38765ccc3a6abfb508be53447f59636"> 97</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#ad38765ccc3a6abfb508be53447f59636">messages_received</a>;</div><div class="line"><a name="l00098"></a><span cla
ss="lineno"> 98</span> </div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  <span class="comment">// Framework messages processed.</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <span class="comment">// NOTE: This doesn't include dropped messages. Processing of</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="comment">// a message may be throttled by a RateLimiter if one is</span></div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="comment">// configured for this principal. Also due to Master's</span></div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="comment">// asynchronous nature, this doesn't necessarily mean the work</span></div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="comm
ent">// requested by this message has finished.</span></div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a3bd4a8dc61299c8ca04a5ae892714567"> 105</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a3bd4a8dc61299c8ca04a5ae892714567">messages_processed</a>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a3d370893d1a6aad7943e7bc8428901db"> 107</a></span>  <span class="keyword">explicit</span> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a3d370893d1a6aad7943e7bc8428901db">Frameworks</a>(<span class="keyword">
const</span> std::string& principal)</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  : messages_received(<span class="stringliteral">"frameworks/"</span> + principal + <span class="stringliteral">"/messages_received"</span>),</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  messages_processed(<span class="stringliteral">"frameworks/"</span> + principal + <span class="stringliteral">"/messages_processed"</span>)</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <a class="code" href="namespaceprocess_1_1metrics.html#a15af50f3f4dbcca2f7c619ccfbaa70b2">process::metrics::add</a>(messages_received);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <a class="code" href="namespaceprocess_1_1metrics.ht
ml#a15af50f3f4dbcca2f7c619ccfbaa70b2">process::metrics::add</a>(messages_processed);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  }</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a9fe6067077658ff959c270bf876ac05d"> 115</a></span>  <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a9fe6067077658ff959c270bf876ac05d">~Frameworks</a>()</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  {</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <a class="code" href="namespaceprocess_1_1metrics.html#ad561ce447753dc2edad5d52a8776a141">process::metrics::remove</a>(messages_received);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118<
/span>  <a class="code" href="namespaceprocess_1_1metrics.html#ad561ce447753dc2edad5d52a8776a141">process::metrics::remove</a>(messages_processed);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  }</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  };</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="comment">// Per-framework-principal metrics keyed by the framework</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="comment">// principal.</span></div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af5ccc6bfff9f9302fcdcdc5317f07f60"> 124</a></span>  <a class="code" href="classhashmap.html">hashmap<std::string, process::Owned<
;Frameworks></a>> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af5ccc6bfff9f9302fcdcdc5317f07f60">frameworks</a>;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  <span class="comment">// Messages from schedulers.</span></div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a612cad8b9660e1ae52f7092d5aa568d0"> 127</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a612cad8b9660e1ae52f7092d5aa568d0">messages_register_framework</a>;</div><div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a44bbd93586ba17a01d31829c72ab4fb2"> 128</a></span> 
<a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a44bbd93586ba17a01d31829c72ab4fb2">messages_reregister_framework</a>;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ac8383c6c7f9d124186fdb07932ffc219"> 129</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ac8383c6c7f9d124186fdb07932ffc219">messages_unregister_framework</a>;</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a559904bbd317f2a1ae58268f4890d8df"> 130</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1int
ernal_1_1master_1_1Metrics.html#a559904bbd317f2a1ae58268f4890d8df">messages_deactivate_framework</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a666173576f6f7520c68112c36b19ae3c"> 131</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a666173576f6f7520c68112c36b19ae3c">messages_kill_task</a>;</div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a58de8e2be417fde18aa2a8d99d5abc82"> 132</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a58de8e2be417fde18aa2a8d99d5abc82">messages_status_update_acknowledgement</a>;</div><div class="line"><a name="l00
133"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a3d2af6d350ca9d82711aee564e7966f0"> 133</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a3d2af6d350ca9d82711aee564e7966f0">messages_resource_request</a>;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a9261f5527ee16f141ea8308ed9f98423"> 134</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a9261f5527ee16f141ea8308ed9f98423">messages_launch_tasks</a>;</div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a1a63cbea6230628470eff6819734bef8"> 135</a><
/span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a1a63cbea6230628470eff6819734bef8">messages_decline_offers</a>;</div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af7d865f7470c4fd7ddca98338c17b0ae"> 136</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af7d865f7470c4fd7ddca98338c17b0ae">messages_revive_offers</a>;</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af10a7222b2cb0fba6f092c14b9fe0325"> 137</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1inte
rnal_1_1master_1_1Metrics.html#af10a7222b2cb0fba6f092c14b9fe0325">messages_suppress_offers</a>;</div><div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a8d524a122b22e0aad92a8752aee2c774"> 138</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a8d524a122b22e0aad92a8752aee2c774">messages_reconcile_operations</a>;</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#addd4feb9c3774a06d72dbc8f3251c99c"> 139</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#addd4feb9c3774a06d72dbc8f3251c99c">messages_reconcile_tasks</a>;</div><div class="line"><a name="l00140"></a>
<span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ae82f47176d6b9adaf37fa46740ce9e79"> 140</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ae82f47176d6b9adaf37fa46740ce9e79">messages_framework_to_executor</a>;</div><div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aed5f4b217e4831e61453f3e315ac295d"> 141</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aed5f4b217e4831e61453f3e315ac295d">messages_operation_status_update_acknowledgement</a>;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span> </div><div class="line"><a name="l00143"></a><span class="lineno"> 143</spa
n>  <span class="comment">// Messages from executors.</span></div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a2eb4869f2bb00cf613a9553562cbbbdf"> 144</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a2eb4869f2bb00cf613a9553562cbbbdf">messages_executor_to_framework</a>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <span class="comment">// Messages from slaves.</span></div><div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a46309749d4ffa9c670140867e3cf36fc"> 147</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics
::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a46309749d4ffa9c670140867e3cf36fc">messages_register_slave</a>;</div><div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad1dd95dd3de0d869e6d70d420b60f0f3"> 148</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad1dd95dd3de0d869e6d70d420b60f0f3">messages_reregister_slave</a>;</div><div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a29ab181056a4cfb0a78f085dbbb491ab"> 149</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a29ab181056a4cfb0a78f085dbbb491ab">messages_unregister_slav
e</a>;</div><div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a58fdaf13c929f36f4099200ac8e3f9bd"> 150</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a58fdaf13c929f36f4099200ac8e3f9bd">messages_status_update</a>;</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad26f22fc61439f4b56514d2f77c97d42"> 151</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad26f22fc61439f4b56514d2f77c97d42">messages_exited_executor</a>;</div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#acc
3540a7106f4470af2fb319ee857451"> 152</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#acc3540a7106f4470af2fb319ee857451">messages_update_slave</a>;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  <span class="comment">// Messages from both schedulers and slaves.</span></div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#afc3e520363a30f0510895ad3aee46d16"> 155</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#afc3e520363a30f0510895ad3aee46d16">messages_authenticate</a>;</div><div class="line"><a name="l00156"></a><spa
n class="lineno"> 156</span> </div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a16ce19fe4ad22156b689916522a7d69f"> 157</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a16ce19fe4ad22156b689916522a7d69f">valid_framework_to_executor_messages</a>;</div><div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ae19878a2b0ecc4753d505625077263af"> 158</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ae19878a2b0ecc4753d505625077263af">invalid_framework_to_executor_messages</a>;</div><div class="line"><a name="l00159"></a><span class="lineno"><a class="line" hr
ef="structmesos_1_1internal_1_1master_1_1Metrics.html#a61b65651a7b84e160c9aa37a14ef93b6"> 159</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a61b65651a7b84e160c9aa37a14ef93b6">valid_executor_to_framework_messages</a>;</div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aa8b3fe4a1a106ce0f1660884d0f8d9bd"> 160</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aa8b3fe4a1a106ce0f1660884d0f8d9bd">invalid_executor_to_framework_messages</a>;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span> </div><div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1mast
er_1_1Metrics.html#a2b972adc75ee7a0ba75d20ebb8540db4"> 162</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a2b972adc75ee7a0ba75d20ebb8540db4">valid_status_updates</a>;</div><div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a1fe6b1e4082d0248423d5c274e4496f7"> 163</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a1fe6b1e4082d0248423d5c274e4496f7">invalid_status_updates</a>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span> </div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a29d92c02e6ea0e2a1c5ece906baae065"> 165</a></sp
an>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a29d92c02e6ea0e2a1c5ece906baae065">valid_status_update_acknowledgements</a>;</div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6299e75c71aecf7cef2dd4c8d1b06baa"> 166</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6299e75c71aecf7cef2dd4c8d1b06baa">invalid_status_update_acknowledgements</a>;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div><div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aadad0739da3f29af08a5f5104ee52162"> 168</a></span>  <a class="code" href="cl
assprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aadad0739da3f29af08a5f5104ee52162">valid_operation_status_update_acknowledgements</a>;</div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a78f4e3737d2bf9be3a9f59ef0ac01d9f"> 169</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a78f4e3737d2bf9be3a9f59ef0ac01d9f">invalid_operation_status_update_acknowledgements</a>;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span> </div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <span class="comment">// Recovery counters.</span></div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="structmesos_
1_1internal_1_1master_1_1Metrics.html#af5adca0d3192a283af9494257f966d09"> 172</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af5adca0d3192a283af9494257f966d09">recovery_slave_removals</a>;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span> </div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  <span class="comment">// Process metrics.</span></div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a62946dc2252729edcb3a6dfdad492ccc"> 175</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a62946dc2252729edcb3a6dfdad492ccc">event_queue_messages</a>;</div><div class="line"><a name="l00
176"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a00105fa031f0fddc70f2c66a9cb3fe25"> 176</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a00105fa031f0fddc70f2c66a9cb3fe25">event_queue_dispatches</a>;</div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a8afe906dad633640648d240bc5c1090a"> 177</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Gauge.html">process::metrics::Gauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a8afe906dad633640648d240bc5c1090a">event_queue_http_requests</a>;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <span class="comment
">// Successful registry operations.</span></div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#afd6c16298eaa2f63250c5ce9a023210f"> 180</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#afd6c16298eaa2f63250c5ce9a023210f">slave_registrations</a>;</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a834e98f4a98d2270562c87497250160c"> 181</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a834e98f4a98d2270562c87497250160c">slave_reregistrations</a>;</div><div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="structmesos_1_1interna
l_1_1master_1_1Metrics.html#a5dcfe22f0645a2fe6f3fd475ef2f69fc"> 182</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a5dcfe22f0645a2fe6f3fd475ef2f69fc">slave_removals</a>;</div><div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a65a34c2b5e3002473104af3d2fc6f46c"> 183</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a65a34c2b5e3002473104af3d2fc6f46c">slave_removals_reason_unhealthy</a>;</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a7d7082c14a0e36636b719007a631cc7d"> 184</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html
">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a7d7082c14a0e36636b719007a631cc7d">slave_removals_reason_unregistered</a>;</div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a55228bc0e63de4823cbd444074a6fa42"> 185</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a55228bc0e63de4823cbd444074a6fa42">slave_removals_reason_registered</a>;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span> </div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <span class="comment">// Slave observer metrics.</span></div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="comment">//</span></div><div class="line"><a name="l00189"></
a><span class="lineno"> 189</span>  <span class="comment">// TODO(neilc): The `slave_shutdowns_xxx` metrics are deprecated and</span></div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <span class="comment">// will always be zero. Remove in Mesos 2.0.</span></div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a347ac93b5ead08496b21616e24ec9917"> 191</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a347ac93b5ead08496b21616e24ec9917">slave_shutdowns_scheduled</a>;</div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a16a3260f2643981ea50504dd02f80017"> 192</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::me
trics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a16a3260f2643981ea50504dd02f80017">slave_shutdowns_completed</a>;</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ab91ff312b213a7c8ea40c66ae13b325a"> 193</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ab91ff312b213a7c8ea40c66ae13b325a">slave_shutdowns_canceled</a>;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div><div class="line"><a name="l00195"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a48b54c3f8bd8c4023b8f247b9b8a967e"> 195</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1inte
rnal_1_1master_1_1Metrics.html#a48b54c3f8bd8c4023b8f247b9b8a967e">slave_unreachable_scheduled</a>;</div><div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad7ba3bebe9911c01a2c9a8dc333f2d71"> 196</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad7ba3bebe9911c01a2c9a8dc333f2d71">slave_unreachable_completed</a>;</div><div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ab2b6bd2a69f9f1e35f0644b51e6683ed"> 197</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ab2b6bd2a69f9f1e35f0644b51e6683ed">slave_unreachable_canceled</a>;</div><div class="line"><a name="l00198"><
/a><span class="lineno"> 198</span> </div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  <span class="comment">// Non-revocable resources.</span></div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad676430ff53421907501f1672ca60c66"> 200</a></span>  std::vector<process::metrics::Gauge> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad676430ff53421907501f1672ca60c66">resources_total</a>;</div><div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a2f60c37bc6ed8673e3ad0e91b2436290"> 201</a></span>  std::vector<process::metrics::Gauge> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a2f60c37bc6ed8673e3ad0e91b2436290">resources_used</a>;</div><div class="line"><a name="l00202"></a><span class="lineno"><a class="line
" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a9a72d1ccfdd4e3212d40147344414098"> 202</a></span>  std::vector<process::metrics::Gauge> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a9a72d1ccfdd4e3212d40147344414098">resources_percent</a>;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  <span class="comment">// Revocable resources.</span></div><div class="line"><a name="l00205"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad3a0a5608c89b86b6ff7eb2bc6528514"> 205</a></span>  std::vector<process::metrics::Gauge> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad3a0a5608c89b86b6ff7eb2bc6528514">resources_revocable_total</a>;</div><div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="structmesos_1_1intern
al_1_1master_1_1Metrics.html#a74b2a8992dffbfa7eebcd5d146356e51"> 206</a></span>  std::vector<process::metrics::Gauge> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a74b2a8992dffbfa7eebcd5d146356e51">resources_revocable_used</a>;</div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a2a7efeaeca2a0adcd713ad9084aef62c"> 207</a></span>  std::vector<process::metrics::Gauge> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a2a7efeaeca2a0adcd713ad9084aef62c">resources_revocable_percent</a>;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span> </div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  <span class="keywordtype">void</span> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ac506f96b11b8090140a74ee55efe4121">incrementInvalidSchedulerCalls</a>(<
span class="keyword">const</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acb18ceaa5f6f2338f2a9727af398eb79">scheduler::Call</a>& call);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  <span class="keywordtype">void</span> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ab1cbee967e10c55507537367df2e5122">incrementTasksStates</a>(</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  <span class="keyword">const</span> TaskState& state,</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  <span class="keyword">const</span> TaskStatus::Source& source,</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  <span class="keyword">const</span> TaskStatus::Reason& reason);</div><div class
="line"><a name="l00215"></a><span class="lineno"> 215</span> };</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span> </div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span> } <span class="comment">// namespace master {</span></div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span> } <span class="comment">// namespace internal {</span></div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span> } <span class="comment">// namespace mesos {</span></div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span> </div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="preprocessor">#endif // __MASTER_METRICS_HPP__</span></div><div class="ttc" id="structmesos_1_1internal_1_1master_1_1Metrics_html_a2eb4869f2bb00cf613a9553562cbbbdf"><div class="ttname"><a href="structmesos_1_1internal_1_1master_1_1Metrics.html#a2eb4869f
2bb00cf613a9553562cbbbdf">mesos::internal::master::Metrics::messages_executor_to_framework</a></div><div class="ttdeci">process::metrics::Counter messages_executor_to_framework</div><div class="ttdef"><b>Definition:</b> metrics.hpp:144</div></div>
+<a href="src_2master_2metrics_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// or more contributor license agreements. See the NOTICE file</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// distributed with this work for additional information</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">// regarding copyright ownership. The ASF licenses this file</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">// to you under the Apache License, Version 2.0 (the</span></div><div class="line"><a name="l00006">
</a><span class="lineno"> 6</span> <span class="comment">// "License"); you may not use this file except in compliance</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">// with the License. You may obtain a copy of the License at</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">//</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">// http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">//</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">// Unless required by applicable law or agreed to in writing, software</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"
>// distributed under the License is distributed on an "AS IS" BASIS,</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">// See the License for the specific language governing permissions and</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">// limitations under the License.</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> </div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#ifndef __MASTER_METRICS_HPP__</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#define __MASTER_METRICS_HPP__</span></div><div cla
ss="line"><a name="l00019"></a><span class="lineno"> 19</span> </div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <string></span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <vector></span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <<a class="code" href="counter_8hpp.html">process/metrics/counter.hpp</a>></span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <<a class="code" href="pull__gauge_8hpp.html">process/metrics/pull_gauge.hpp</a>></span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <<a class="code"
href="3rdparty_2libprocess_2include_2process_2metrics_2metrics_8hpp.html">process/metrics/metrics.hpp</a>></span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include <<a class="code" href="hashmap_8hpp.html">stout/hashmap.hpp</a>></span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="include_2mesos_2mesos_8hpp.html">mesos/mesos.hpp</a>"</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="type__utils_8hpp.html">mesos/type_utils.hpp</a>"</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div><div
class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keyword">namespace </span><a class="code" href="namespacemesos.html">mesos</a> {</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keyword">namespace </span><a class="code" href="namespaceinternal.html">internal</a> {</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">namespace </span><a class="code" href="namespacemesos_1_1v1_1_1master.html">master</a> {</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keyword">class </span>Master;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div><div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html"> 38</a></span> 
;<span class="keyword">struct </span><a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html">Metrics</a></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> {</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  <span class="keyword">explicit</span> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a39a2bce993350772570e273bb0df46f7">Metrics</a>(<span class="keyword">const</span> <a class="code" href="classmesos_1_1internal_1_1master_1_1Master.html">Master</a>& <a class="code" href="namespacemesos_1_1v1_1_1master.html">master</a>);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aaae431bf7f7d919b70f3783f20421462">~Metrics</a>();</div><div class="line"><a name="l00043"></a><span class="linen
o"> 43</span> </div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a70ec4516c97f6bddec39318e2b30f2d8"> 44</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a70ec4516c97f6bddec39318e2b30f2d8">uptime_secs</a>;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a1e62bc8b22770abf563ee99b376c581c"> 45</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a1e62bc8b22770abf563ee99b376c581c">elected</a>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00047"></a><span class="line
no"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a26e08c586a5e159e9c6382f5544cbef1"> 47</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a26e08c586a5e159e9c6382f5544cbef1">slaves_connected</a>;</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6262502a21991140cb66ff084c396425"> 48</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6262502a21991140cb66ff084c396425">slaves_disconnected</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aec3ccb995a3d635181bab91e67f49dfa"> 49</a></span>  <a class="code"
href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aec3ccb995a3d635181bab91e67f49dfa">slaves_active</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a1e44cfcc264b4db3963571e3c3cadb65"> 50</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a1e44cfcc264b4db3963571e3c3cadb65">slaves_inactive</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ac9e2406eb45ccd88d2c2cb1d0901d80d"> 51</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ac9
e2406eb45ccd88d2c2cb1d0901d80d">slaves_unreachable</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a08aca5b5b6743884d3b879c959c711f6"> 53</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a08aca5b5b6743884d3b879c959c711f6">frameworks_connected</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ac498f4ca881aac966bf1036ffffc7c6a"> 54</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ac498f4ca881aac966bf1036ffffc7c6a">frameworks_disconnected</a>;</d
iv><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a8c0778cbb787f824bcc97a58bbf78100"> 55</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a8c0778cbb787f824bcc97a58bbf78100">frameworks_active</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a099297f921a515d45e6297cf85218fb6"> 56</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a099297f921a515d45e6297cf85218fb6">frameworks_inactive</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div><div class="line"><a name="l00058"></a><span class="lineno"><a
class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6481c3e2a31f2fac641d7426b4486671"> 58</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6481c3e2a31f2fac641d7426b4486671">outstanding_offers</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="comment">// Task state metrics.</span></div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a70889b3e10dbd6236a4e57e72fa670e0"> 61</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a70889b3e10dbd6236a4e57e72fa670e0">tasks_staging</a>;<
/div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af14a269bf807062d14567c9cbed665d3"> 62</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af14a269bf807062d14567c9cbed665d3">tasks_starting</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a647bfd6dc999c12ad28674434ccaaf2c"> 63</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a647bfd6dc999c12ad28674434ccaaf2c">tasks_running</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6b4faba22b0456b30019
fefeed73731f"> 64</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6b4faba22b0456b30019fefeed73731f">tasks_unreachable</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a0112ad545f894777bfed17bb37bf8874"> 65</a></span>  <a class="code" href="classprocess_1_1metrics_1_1PullGauge.html">process::metrics::PullGauge</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a0112ad545f894777bfed17bb37bf8874">tasks_killing</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a39526e59149777e9bdec597f564117bd"> 66</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="st
ructmesos_1_1internal_1_1master_1_1Metrics.html#a39526e59149777e9bdec597f564117bd">tasks_finished</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a7a931b6abea7aca55a1683d87a8e3f28"> 67</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a7a931b6abea7aca55a1683d87a8e3f28">tasks_failed</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a85c14ac3a539831dca77ce178002de67"> 68</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a85c14ac3a539831dca77ce178002de67">tasks_killed</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><
a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad7dd4926771fc52212d66ef2a15becb3"> 69</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ad7dd4926771fc52212d66ef2a15becb3">tasks_lost</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a690683e4e4acf58df927021113c151e6"> 70</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a690683e4e4acf58df927021113c151e6">tasks_error</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aa1142a9799f1f5f5c2cf8c51f5bebe02"> 71</a></span>  <a class="code" href="classprocess_1_1metr
ics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aa1142a9799f1f5f5c2cf8c51f5bebe02">tasks_dropped</a>;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6a3171cad662ad2e98fdb5238507539e"> 72</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a6a3171cad662ad2e98fdb5238507539e">tasks_gone</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aa28367941aefe4e80158ffbcf48e1cb1"> 73</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#aa28367941aefe4e80158ffbcf48e1cb1">tasks_gone_b
y_operator</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a48d3a800e6f17792bc314e271a7486d0"> 75</a></span>  <span class="keyword">typedef</span> <a class="code" href="classhashmap.html">hashmap<TaskStatus::Reason, process::metrics::Counter></a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a48d3a800e6f17792bc314e271a7486d0">Reasons</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a372c76312efe294b401075271f570df2"> 76</a></span>  <span class="keyword">typedef</span> <a class="code" href="classhashmap.html">hashmap<TaskStatus::Source, Reasons></a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a372c76312efe294b401075271f570df2">SourcesRea
sons</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="comment">// NOTE: We only track metrics sources and reasons for terminal states.</span></div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#abe77ce337a937a776194f1b7a977c3d6"> 79</a></span>  <a class="code" href="classhashmap.html">hashmap<TaskState, SourcesReasons></a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#abe77ce337a937a776194f1b7a977c3d6">tasks_states</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="comment">// Message counters.</span></div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="stru
ctmesos_1_1internal_1_1master_1_1Metrics.html#a8e91f7067a99d1e4855042ac5353b30f"> 82</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a8e91f7067a99d1e4855042ac5353b30f">dropped_messages</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="comment">// Metrics specific to frameworks of a common principal.</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="comment">// These metrics have names prefixed by "frameworks/<principal>/".</span></div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html"> 86</a></span>  <span class="keyword">struct </span><a cla
ss="code" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html">Frameworks</a></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  {</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="comment">// Counters for messages from all frameworks of this principal.</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="comment">// Note: We only count messages from active scheduler</span></div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="comment">// *instances* while they are *registered*. i.e., messages</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="comment">// prior to the completion of (re)registration</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="comment">// (AuthenticateM
essage and (Re)RegisterFrameworkMessage) and</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="comment">// messages from an inactive scheduler instance (after the</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="comment">// framework has failed over) are not counted.</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  <span class="comment">// Framework messages received (before processing).</span></div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#ad38765ccc3a6abfb508be53447f59636"> 97</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1m
aster_1_1Metrics_1_1Frameworks.html#ad38765ccc3a6abfb508be53447f59636">messages_received</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  <span class="comment">// Framework messages processed.</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <span class="comment">// NOTE: This doesn't include dropped messages. Processing of</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="comment">// a message may be throttled by a RateLimiter if one is</span></div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="comment">// configured for this principal. Also due to Master's</span></div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="comment">// asynchronous nature, this do
esn't necessarily mean the work</span></div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="comment">// requested by this message has finished.</span></div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a3bd4a8dc61299c8ca04a5ae892714567"> 105</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a3bd4a8dc61299c8ca04a5ae892714567">messages_processed</a>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a3d370893d1a6aad7943e7bc8428901db"> 107</a></span>  <span class="keyword">explicit</span> <a class="c
ode" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a3d370893d1a6aad7943e7bc8428901db">Frameworks</a>(<span class="keyword">const</span> std::string& principal)</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  : messages_received(<span class="stringliteral">"frameworks/"</span> + principal + <span class="stringliteral">"/messages_received"</span>),</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  messages_processed(<span class="stringliteral">"frameworks/"</span> + principal + <span class="stringliteral">"/messages_processed"</span>)</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <a class="code" href="namespaceprocess_1_1metrics.html#a15af50f3f4dbcca2f7c619ccfbaa70b2">process::metrics::add</a>(messages_recei
ved);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <a class="code" href="namespaceprocess_1_1metrics.html#a15af50f3f4dbcca2f7c619ccfbaa70b2">process::metrics::add</a>(messages_processed);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  }</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a9fe6067077658ff959c270bf876ac05d"> 115</a></span>  <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics_1_1Frameworks.html#a9fe6067077658ff959c270bf876ac05d">~Frameworks</a>()</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  {</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <a class="code" href="namespaceprocess_1_1metrics.html#ad561ce4
47753dc2edad5d52a8776a141">process::metrics::remove</a>(messages_received);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  <a class="code" href="namespaceprocess_1_1metrics.html#ad561ce447753dc2edad5d52a8776a141">process::metrics::remove</a>(messages_processed);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  }</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  };</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="comment">// Per-framework-principal metrics keyed by the framework</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="comment">// principal.</span></div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics
.html#af5ccc6bfff9f9302fcdcdc5317f07f60"> 124</a></span>  <a class="code" href="classhashmap.html">hashmap<std::string, process::Owned<Frameworks></a>> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#af5ccc6bfff9f9302fcdcdc5317f07f60">frameworks</a>;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  <span class="comment">// Messages from schedulers.</span></div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a612cad8b9660e1ae52f7092d5aa568d0"> 127</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a612cad8b9660e1ae52f7092d5aa568d0">messages_register_framework</a>;</div><div class="line"><a name="l00128"></a><sp
an class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a44bbd93586ba17a01d31829c72ab4fb2"> 128</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a44bbd93586ba17a01d31829c72ab4fb2">messages_reregister_framework</a>;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ac8383c6c7f9d124186fdb07932ffc219"> 129</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#ac8383c6c7f9d124186fdb07932ffc219">messages_unregister_framework</a>;</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a559904bbd317f2a1ae58268f4890d8df"> 130</a><
/span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a559904bbd317f2a1ae58268f4890d8df">messages_deactivate_framework</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a666173576f6f7520c68112c36b19ae3c"> 131</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a666173576f6f7520c68112c36b19ae3c">messages_kill_task</a>;</div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a58de8e2be417fde18aa2a8d99d5abc82"> 132</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1in
ternal_1_1master_1_1Metrics.html#a58de8e2be417fde18aa2a8d99d5abc82">messages_status_update_acknowledgement</a>;</div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a3d2af6d350ca9d82711aee564e7966f0"> 133</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a3d2af6d350ca9d82711aee564e7966f0">messages_resource_request</a>;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1master_1_1Metrics.html#a9261f5527ee16f141ea8308ed9f98423"> 134</a></span>  <a class="code" href="classprocess_1_1metrics_1_1Counter.html">process::metrics::Counter</a> <a class="code" href="structmesos_1_1internal_1_1master_1_1Metrics
<TRUNCATED>