diff --git a/sphinx/files/salt/source/services/monitoring.rst b/sphinx/files/salt/source/services/monitoring.rst
index f52a974..237bf54 100644
--- a/sphinx/files/salt/source/services/monitoring.rst
+++ b/sphinx/files/salt/source/services/monitoring.rst
@@ -9,26 +9,56 @@
 Log Parsing Definitions
 =======================
 
-TODO: Include heka.log_collector inputs
+
+TODO: Include Heka log collector inputs
+
 
 Metric Collection Definitions
 =============================
 
-TODO: Include collectd metric defintions
+TODO: Include collectd metric definitions
+
 
 Functional Alarms Definitions
 =============================
 
+The explanation of columns.
+
+**Node**
+    Node where the alarm is defined
+
+**Alarm**
+    Alarm aggregating the triggers
+
+**Trigger**
+    Individual alarm trigger
+
+**Metric**
+    Metric being evaluated
+
+**Operator**
+    Conditional operator for the metric
+
+**Threshold**
+    The defined metric threshold
+
+**Function**
+    The aggregation functions for the given duration (avg, max, min, etc.)
+
+**Duration**
+    Duration for the aggregation
+
 .. list-table::
    :header-rows: 1
 
    *  - **Node**
       - **Alarm**
       - **Trigger**
+      - **Metric**
       - **Operator**
       - **Threshold**
       - **Function**
-      - **Window**
+      - **Duration**
 {%- for node_name, node_grains in salt['mine.get']('*', 'grains.items')|dictsort %}
 {%- if node_grains.get('heka', {}).get('metric_collector', {}).get('alarm', {}) is mapping %}
 {%- for alarm_name, alarm in node_grains.get('heka', {}).get('metric_collector', {}).get('alarm', {})|dictsort %}
@@ -38,6 +68,7 @@
    *  - {{ node_name }}
       - {{ alarm_name }}
       - {{ trigger_name }}
+      - {{ rule.metric }}
       - {{ rule.relational_operator }}
       - {{ rule.threshold }}
       - {{ rule.function }}
