diff --git a/stuff/logging.hh b/stuff/logging.hh
index a1bf4b0220c6382ece95ea669fb87699c980d373..11e4acf4a068ee865edeffaab6976acedbbd1f6c 100644
--- a/stuff/logging.hh
+++ b/stuff/logging.hh
@@ -14,6 +14,8 @@
 #include <assert.h>
 #include "misc.hh"
 
+class Logging;
+Logging& Logger();
 
 /** \brief handles all logging
 **/
@@ -483,6 +485,34 @@ public:
     }
   }
 
+  struct SuspendLocal
+  {
+    LogStream::PriorityType prio_;
+    SuspendLocal(LogStream::PriorityType prio = LogStream::default_suspend_priority)
+      : prio_(prio)
+    {
+      Logger().Suspend(prio_);
+    }
+    ~SuspendLocal()
+    {
+      Logger().Resume(prio_);
+    }
+  };
+
+  struct ResumeLocal
+  {
+    LogStream::PriorityType prio_;
+    ResumeLocal(LogStream::PriorityType prio = LogStream::default_suspend_priority)
+      : prio_(prio)
+    {
+      Logger().Resume(prio_);
+    }
+    ~ResumeLocal()
+    {
+      Logger().Suspend(prio_);
+    }
+  };
+
 private:
   std::string filename_;
   std::string filenameWoTime_;