Skip to content

Instantly share code, notes, and snippets.

@petersem
Last active May 7, 2022 23:42
Show Gist options
  • Save petersem/efb8d5e2bbfdf88dfd73b81635b785f5 to your computer and use it in GitHub Desktop.
Save petersem/efb8d5e2bbfdf88dfd73b81635b785f5 to your computer and use it in GitHub Desktop.
Home Assistant - MQTT Stats Sensors
#
# MQTT Version
#
- platform: mqtt
name: "mqtt_version"
state_topic: "$SYS/broker/version"
#
# MQTT Load Messages Received 15m
#
- platform: mqtt
name: "mqtt_load_messages_received_15m"
state_topic: "$SYS/broker/load/messages/received/15min"
unit_of_measurement: "(Msg/Min)"
#
# MQTT Load Messages Received 5m
#
- platform: mqtt
name: "mqtt_load_messages_received_5m"
state_topic: "$SYS/broker/load/messages/received/5min"
unit_of_measurement: "(Msg/Min)"
#
# MQTT Load Messages Received 1m
#
- platform: mqtt
name: "mqtt_load_messages_received_1m"
state_topic: "$SYS/broker/load/messages/received/1min"
unit_of_measurement: "(Msg/Min)"
#
# MQTT Load Messages Sent 15m
#
- platform: mqtt
name: "mqtt_load_messages_sent_15m"
state_topic: "$SYS/broker/load/messages/sent/15min"
unit_of_measurement: "(Msg/Min)"
#
# MQTT Load Messages Sent 15m
#
- platform: mqtt
name: "mqtt_load_messages_sent_5m"
state_topic: "$SYS/broker/load/messages/sent/5min"
unit_of_measurement: "(Msg/Min)"
#
# MQTT Load Messages Sent 1m
#
- platform: mqtt
name: "mqtt_load_messages_sent_1m"
state_topic: "$SYS/broker/load/messages/sent/1min"
unit_of_measurement: "(Msg/Min)"
#
# MQTT Total Messages Received
#
- platform: mqtt
name: "mqtt_total_messages_received"
state_topic: "$SYS/broker/messages/received"
unit_of_measurement: "Msg"
value_template: >-
{{"{:,}".format(value|int)}}
#
# MQTT Total Messages Sent
#
- platform: mqtt
name: "mqtt_total_messages_sent"
state_topic: "$SYS/broker/messages/sent"
unit_of_measurement: "Msg"
value_template: >-
{{"{:,}".format(value|int)}}
#
# MQTT Total Messages Stored
#
- platform: mqtt
name: "mqtt_total_messages_stored"
state_topic: "$SYS/broker/messages/stored"
unit_of_measurement: "Msg"
value_template: >-
{{"{:,}".format(value|int)}}
#
# MQTT Total Subscription Count
#
- platform: mqtt
name: "mqtt_subscription_count"
state_topic: "$SYS/broker/subscriptions/count"
unit_of_measurement: "Subs"
value_template: >-
{{"{:,}".format(value|int)}}
#
# MQTT Total Mibibytes Received
#
- platform: mqtt
name: "mqtt_total_mib_received"
state_topic: "$SYS/broker/bytes/received"
unit_of_measurement: MiB
value_template: >-
{{(((value | int)/1024)/1024) | round(1)}}
#
# MQTT Total Mibibytes Sent
#
- platform: mqtt
name: "mqtt_total_mib_sent"
state_topic: "$SYS/broker/bytes/sent"
unit_of_measurement: MiB
value_template: >-
{{(((value | int)/1024)/1024) | round(1)}}
#
# MQTT uptime
#
- platform: mqtt
name: "mqtt_uptime"
state_topic: "$SYS/broker/uptime"
unit_of_measurement: Days
value_template: >-
{{((value| regex_replace(find=' seconds',replace="")|int )//86400) }}
#
# MQTT uptime seconds
#
- platform: mqtt
name: "mqtt_uptime_seconds"
state_topic: "$SYS/broker/uptime"
value_template: >-
{{"{:,}".format(value|regex_replace(find=' seconds',replace="")|int)}}
#
# MQTT Total Clients
#
- platform: mqtt
name: "mqtt_total_clients"
state_topic: "$SYS/broker/clients/total"
unit_of_measurement: "Clients"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment