diff --git a/changelog.d/10183.misc b/changelog.d/10183.misc
new file mode 100644
index 0000000000000000000000000000000000000000..c0e01ad3db6427493d3573bdc6b65ff3f0cb062d
--- /dev/null
+++ b/changelog.d/10183.misc
@@ -0,0 +1 @@
+Add debug logging for when we enter and exit `Measure` blocks.
diff --git a/synapse/util/metrics.py b/synapse/util/metrics.py
index 6d14351bd262c6739b5d7b5cf9e7f9fe89cf1af6..45353d41c55e5625a5e3934e5a09d1594edd5c10 100644
--- a/synapse/util/metrics.py
+++ b/synapse/util/metrics.py
@@ -133,12 +133,17 @@ class Measure:
         self.start = self.clock.time()
         self._logging_context.__enter__()
         in_flight.register((self.name,), self._update_in_flight)
+
+        logger.debug("Entering block %s", self.name)
+
         return self
 
     def __exit__(self, exc_type, exc_val, exc_tb):
         if self.start is None:
             raise RuntimeError("Measure() block exited without being entered")
 
+        logger.debug("Exiting block %s", self.name)
+
         duration = self.clock.time() - self.start
         usage = self.get_resource_usage()