Synapse prometheus rules
1 files changed, 74 insertions, 0 deletions
diff --git a/modules/monitoring/rules/synapse.rules b/modules/monitoring/rules/synapse.rules
new file mode 100644
index 0000000..dde3113
--- /dev/null
+++ b/modules/monitoring/rules/synapse.rules
@@ -0,0 +1,74 @@
+groups:
+- name: synapse
+ rules:
+
+ ###
+ ### Prometheus Console Only
+ ### The following rules are only needed if you use the Prometheus Console
+ ### in contrib/prometheus/consoles/synapse.html
+ ###
+ - record: 'synapse_federation_client_sent'
+ labels:
+ type: "EDU"
+ expr: 'synapse_federation_client_sent_edus_total + 0'
+ - record: 'synapse_federation_client_sent'
+ labels:
+ type: "PDU"
+ expr: 'synapse_federation_client_sent_pdu_destinations_count_total + 0'
+ - record: 'synapse_federation_client_sent'
+ labels:
+ type: "Query"
+ expr: 'sum(synapse_federation_client_sent_queries) by (job)'
+
+ - record: 'synapse_federation_server_received'
+ labels:
+ type: "EDU"
+ expr: 'synapse_federation_server_received_edus_total + 0'
+ - record: 'synapse_federation_server_received'
+ labels:
+ type: "PDU"
+ expr: 'synapse_federation_server_received_pdus_total + 0'
+ - record: 'synapse_federation_server_received'
+ labels:
+ type: "Query"
+ expr: 'sum(synapse_federation_server_received_queries) by (job)'
+
+ - record: 'synapse_federation_transaction_queue_pending'
+ labels:
+ type: "EDU"
+ expr: 'synapse_federation_transaction_queue_pending_edus + 0'
+ - record: 'synapse_federation_transaction_queue_pending'
+ labels:
+ type: "PDU"
+ expr: 'synapse_federation_transaction_queue_pending_pdus + 0'
+ ###
+ ### End of 'Prometheus Console Only' rules block
+ ###
+
+
+ ###
+ ### Grafana Only
+ ### The following rules are only needed if you use the Grafana dashboard
+ ### in contrib/grafana/synapse.json
+ ###
+ - record: synapse_storage_events_persisted_by_source_type
+ expr: sum without(type, origin_type, origin_entity) (synapse_storage_events_persisted_events_sep_total{origin_type="remote"})
+ labels:
+ type: remote
+ - record: synapse_storage_events_persisted_by_source_type
+ expr: sum without(type, origin_type, origin_entity) (synapse_storage_events_persisted_events_sep_total{origin_entity="*client*",origin_type="local"})
+ labels:
+ type: local
+ - record: synapse_storage_events_persisted_by_source_type
+ expr: sum without(type, origin_type, origin_entity) (synapse_storage_events_persisted_events_sep_total{origin_entity!="*client*",origin_type="local"})
+ labels:
+ type: bridges
+
+ - record: synapse_storage_events_persisted_by_event_type
+ expr: sum without(origin_entity, origin_type) (synapse_storage_events_persisted_events_sep_total)
+
+ - record: synapse_storage_events_persisted_by_origin
+ expr: sum without(type) (synapse_storage_events_persisted_events_sep_total)
+ ###
+ ### End of 'Grafana Only' rules block
+ ###
|