]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
common/perf_counters: replace suppress_nicks with prio adjustment
authorSage Weil <sage@redhat.com>
Tue, 4 Apr 2017 21:33:17 +0000 (17:33 -0400)
committerDan Mick <dan.mick@redhat.com>
Tue, 25 Apr 2017 23:19:02 +0000 (16:19 -0700)
Signed-off-by: Sage Weil <sage@redhat.com>
src/common/perf_counters.cc
src/common/perf_counters.h
src/osd/OSD.cc

index 404b39810e1872ef896e7be21eccaa4f1795a323..8602e2b8ab244bc67d60d04b6c5f7e55c14e5d1d 100644 (file)
@@ -378,13 +378,16 @@ void PerfCounters::dump_formatted_generic(Formatter *f, bool schema,
         f->dump_string("description", "");
       }
 
-      if (d->nick != NULL && !suppress_nicks) {
+      if (d->nick != NULL) {
         f->dump_string("nick", d->nick);
       } else {
         f->dump_string("nick", "");
       }
       if (d->prio) {
-       f->dump_int("priority", d->prio);
+       int p = std::max(std::min(d->prio + prio_adjust,
+                                 (int)PerfCountersBuilder::PRIO_CRITICAL),
+                        0);
+       f->dump_int("priority", p);
       }
       f->close_section();
     } else {
index 516667d188746c2cbdd32ccb93255e143cd8042c..19c01e3d08b6c29e9e3577111842452f97cb941f 100644 (file)
@@ -182,8 +182,9 @@ public:
     m_name = s;
   }
 
-  void set_suppress_nicks(bool b) {
-    suppress_nicks = b;
+  /// adjust priority values by some value
+  void set_prio_adjust(int p) {
+    prio_adjust = p;
   }
 
 private:
@@ -202,7 +203,7 @@ private:
   std::string m_name;
   const std::string m_lock_name;
 
-  bool suppress_nicks = false;
+  int prio_adjust = 0;
 
   /** Protects m_data */
   mutable Mutex m_lock;
index ead8f35b13d9893c967476dae646f1d19a9549a0..baf0939b18ab8d0f02aa83e75b633f8ddb876e5d 100644 (file)
@@ -514,8 +514,8 @@ void OSDService::init()
   objecter_finisher.start();
   objecter->set_client_incarnation(0);
 
-  // exclude objecter from daemonperf output
-  objecter->get_logger()->set_suppress_nicks(true);
+  // deprioritize objecter in daemonperf output
+  objecter->get_logger()->set_prio_adjust(-3);
 
   watch_timer.init();
   agent_timer.init();