diff --git a/_modules/runtest/tempest_sections/__init__.py b/_modules/runtest/tempest_sections/__init__.py
index 91b79ac..56b3238 100644
--- a/_modules/runtest/tempest_sections/__init__.py
+++ b/_modules/runtest/tempest_sections/__init__.py
@@ -24,6 +24,7 @@
 import scenario
 import service_clients
 import service_available
+import telemetry
 import validation
 import volume
 import volume_feature_enabled
@@ -53,6 +54,7 @@
     scenario.Scenario,
     service_clients.ServiceClients,
     service_available.ServiceAvailable,
+    telemetry.Telemetry,
     validation.Validation,
     volume.Volume,
     volume_feature_enabled.VolumeFeatureEnabled,
diff --git a/_modules/runtest/tempest_sections/telemetry.py b/_modules/runtest/tempest_sections/telemetry.py
new file mode 100644
index 0000000..5488ba3
--- /dev/null
+++ b/_modules/runtest/tempest_sections/telemetry.py
@@ -0,0 +1,26 @@
+from runtest import conditions
+import base_section
+
+
+class Telemetry(base_section.BaseSection):
+
+    name = "telemetry"
+    options = [
+        'alarm_granularity',
+    ]
+
+    @property
+    def alarm_granularity(self):
+        archive_policy_values = {
+            'low': 300,
+            'medium': 60,
+            'high': 10}
+
+        gnocchi_enable = conditions.BaseRule(
+            'ceilometer.server.publisher.gnocchi.enabled', 'eq', True)
+
+        if gnocchi_enable:
+            archive_policy = self.get_item_when_condition_match(
+                'ceilometer.server.publisher.gnocchi.archive_policy',
+                gnocchi_enable) or 'medium'
+            return archive_policy_values[archive_policy]
