You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by bm...@apache.org on 2014/05/28 00:41:15 UTC

[3/3] git commit: Added metrics for acknowledgement messages in the master.

Added metrics for acknowledgement messages in the master.

Review: https://reviews.apache.org/r/21839


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/ac5059bb
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/ac5059bb
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/ac5059bb

Branch: refs/heads/master
Commit: ac5059bbec6d07e5e9091b49f84bf5a3b875634f
Parents: e8d6781
Author: Benjamin Mahler <bm...@twitter.com>
Authored: Thu May 22 14:53:15 2014 -0700
Committer: Benjamin Mahler <bm...@twitter.com>
Committed: Tue May 27 15:41:04 2014 -0700

----------------------------------------------------------------------
 src/master/master.cpp      | 26 ++++++++++++++++++++------
 src/master/master.hpp      |  4 ++++
 src/tests/master_tests.cpp | 17 +++++++++++------
 3 files changed, 35 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/ac5059bb/src/master/master.cpp
----------------------------------------------------------------------
diff --git a/src/master/master.cpp b/src/master/master.cpp
index 98647e5..efb4de1 100644
--- a/src/master/master.cpp
+++ b/src/master/master.cpp
@@ -2094,7 +2094,7 @@ void Master::statusUpdateAcknowledgement(
     const TaskID& taskId,
     const string& uuid)
 {
-  // TODO(bmahler): Add message counter.
+  metrics.messages_status_update_acknowledgement++;
 
   // TODO(bmahler): Consider adding a message validator abstraction
   // for the master that takes care of all this boilerplate. Ideally
@@ -2110,7 +2110,7 @@ void Master::statusUpdateAcknowledgement(
       << "Ignoring status update acknowledgement message for task " << taskId
       << " of framework " << frameworkId << " on slave " << slaveId
       << " because the framework cannot be found";
-    // TODO(bmahler): Add dropped counter.
+    metrics.invalid_status_update_acknowledgements++;
     return;
   }
 
@@ -2120,7 +2120,7 @@ void Master::statusUpdateAcknowledgement(
       << " of framework " << frameworkId << " on slave " << slaveId
       << " from " << from << " because it is not from the registered framework "
       << framework->pid;
-    // TODO(bmahler): Add dropped counter.
+    metrics.invalid_status_update_acknowledgements++;
     return;
   }
 
@@ -2131,7 +2131,7 @@ void Master::statusUpdateAcknowledgement(
       << "Cannot send status update acknowledgement message for task " << taskId
       << " of framework " << frameworkId << " to slave " << slaveId
       << " because slave is not activated";
-    // TODO(bmahler): Add dropped counter.
+    metrics.invalid_status_update_acknowledgements++;
     return;
   }
 
@@ -2140,7 +2140,7 @@ void Master::statusUpdateAcknowledgement(
       << "Cannot send status update acknowledgement message for task " << taskId
       << " of framework " << frameworkId << " to slave " << *slave
       << " because slave is disconnected";
-    // TODO(bmahler): Add dropped counter.
+    metrics.invalid_status_update_acknowledgements++;
     return;
   }
 
@@ -2161,7 +2161,7 @@ void Master::statusUpdateAcknowledgement(
 
   send(slave->pid, message);
 
-  // TODO(bmahler): Add valid acknowledgement counter.
+  metrics.valid_status_update_acknowledgements++;
 }
 
 
@@ -3983,6 +3983,8 @@ Master::Metrics::Metrics(const Master& master)
         "master/messages_deactivate_framework"),
     messages_kill_task(
         "master/messages_kill_task"),
+    messages_status_update_acknowledgement(
+        "master/messages_status_update_acknowledgement"),
     messages_resource_request(
         "master/messages_resource_request"),
     messages_launch_tasks(
@@ -4013,6 +4015,10 @@ Master::Metrics::Metrics(const Master& master)
         "master/valid_status_updates"),
     invalid_status_updates(
         "master/invalid_status_updates"),
+    valid_status_update_acknowledgements(
+        "master/valid_status_update_acknowledgements"),
+    invalid_status_update_acknowledgements(
+        "master/invalid_status_update_acknowledgements"),
     recovery_slave_removals(
         "master/recovery_slave_removals"),
     event_queue_size(
@@ -4053,6 +4059,7 @@ Master::Metrics::Metrics(const Master& master)
   process::metrics::add(messages_unregister_framework);
   process::metrics::add(messages_deactivate_framework);
   process::metrics::add(messages_kill_task);
+  process::metrics::add(messages_status_update_acknowledgement);
   process::metrics::add(messages_resource_request);
   process::metrics::add(messages_launch_tasks);
   process::metrics::add(messages_revive_offers);
@@ -4075,6 +4082,9 @@ Master::Metrics::Metrics(const Master& master)
   process::metrics::add(valid_status_updates);
   process::metrics::add(invalid_status_updates);
 
+  process::metrics::add(valid_status_update_acknowledgements);
+  process::metrics::add(invalid_status_update_acknowledgements);
+
   process::metrics::add(recovery_slave_removals);
 
   process::metrics::add(event_queue_size);
@@ -4140,6 +4150,7 @@ Master::Metrics::~Metrics()
   process::metrics::remove(messages_unregister_framework);
   process::metrics::remove(messages_deactivate_framework);
   process::metrics::remove(messages_kill_task);
+  process::metrics::remove(messages_status_update_acknowledgement);
   process::metrics::remove(messages_resource_request);
   process::metrics::remove(messages_launch_tasks);
   process::metrics::remove(messages_revive_offers);
@@ -4162,6 +4173,9 @@ Master::Metrics::~Metrics()
   process::metrics::remove(valid_status_updates);
   process::metrics::remove(invalid_status_updates);
 
+  process::metrics::remove(valid_status_update_acknowledgements);
+  process::metrics::remove(invalid_status_update_acknowledgements);
+
   process::metrics::remove(recovery_slave_removals);
 
   process::metrics::remove(event_queue_size);

http://git-wip-us.apache.org/repos/asf/mesos/blob/ac5059bb/src/master/master.hpp
----------------------------------------------------------------------
diff --git a/src/master/master.hpp b/src/master/master.hpp
index 45d868d..4c21d9e 100644
--- a/src/master/master.hpp
+++ b/src/master/master.hpp
@@ -522,6 +522,7 @@ private:
     process::metrics::Counter messages_unregister_framework;
     process::metrics::Counter messages_deactivate_framework;
     process::metrics::Counter messages_kill_task;
+    process::metrics::Counter messages_status_update_acknowledgement;
     process::metrics::Counter messages_resource_request;
     process::metrics::Counter messages_launch_tasks;
     process::metrics::Counter messages_revive_offers;
@@ -544,6 +545,9 @@ private:
     process::metrics::Counter valid_status_updates;
     process::metrics::Counter invalid_status_updates;
 
+    process::metrics::Counter valid_status_update_acknowledgements;
+    process::metrics::Counter invalid_status_update_acknowledgements;
+
     // Recovery counters.
     process::metrics::Counter recovery_slave_removals;
 

http://git-wip-us.apache.org/repos/asf/mesos/blob/ac5059bb/src/tests/master_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/master_tests.cpp b/src/tests/master_tests.cpp
index 56557a5..b0ff627 100644
--- a/src/tests/master_tests.cpp
+++ b/src/tests/master_tests.cpp
@@ -1535,6 +1535,8 @@ TEST_F(MasterTest, MetricsInStatsEndpoint)
   EXPECT_EQ(1u, stats.values.count("master/messages_unregister_framework"));
   EXPECT_EQ(1u, stats.values.count("master/messages_deactivate_framework"));
   EXPECT_EQ(1u, stats.values.count("master/messages_kill_task"));
+  EXPECT_EQ(1u, stats.values.count(
+      "master/messages_status_update_acknowledgement"));
   EXPECT_EQ(1u, stats.values.count("master/messages_resource_request"));
   EXPECT_EQ(1u, stats.values.count("master/messages_launch_tasks"));
   EXPECT_EQ(1u, stats.values.count("master/messages_revive_offers"));
@@ -1551,16 +1553,19 @@ TEST_F(MasterTest, MetricsInStatsEndpoint)
   // Messages from both schedulers and slaves.
   EXPECT_EQ(1u, stats.values.count("master/messages_authenticate"));
 
-  EXPECT_EQ(
-      1u,
-      stats.values.count("master/valid_framework_to_executor_messages"));
-  EXPECT_EQ(
-      1u,
-      stats.values.count("master/invalid_framework_to_executor_messages"));
+  EXPECT_EQ(1u, stats.values.count(
+      "master/valid_framework_to_executor_messages"));
+  EXPECT_EQ(1u, stats.values.count(
+      "master/invalid_framework_to_executor_messages"));
 
   EXPECT_EQ(1u, stats.values.count("master/valid_status_updates"));
   EXPECT_EQ(1u, stats.values.count("master/invalid_status_updates"));
 
+  EXPECT_EQ(1u, stats.values.count(
+      "master/valid_status_update_acknowledgements"));
+  EXPECT_EQ(1u, stats.values.count(
+      "master/invalid_status_update_acknowledgements"));
+
   EXPECT_EQ(1u, stats.values.count("master/recovery_slave_removals"));
 
   EXPECT_EQ(1u, stats.values.count("master/event_queue_size"));