feat: recorder exclude config to reduce ~2500 state changes/hr
This commit is contained in:
@@ -0,0 +1,137 @@
|
||||
# =====================================================================
|
||||
# Home Assistant Recorder Exclude Configuration
|
||||
# =====================================================================
|
||||
# Add this to your configuration.yaml (merge with existing recorder: if any)
|
||||
#
|
||||
# This config excludes high-churn, low-value entities from the recorder
|
||||
# database. These entities will still work in automations, dashboards,
|
||||
# and templates — they just won't have historical data stored.
|
||||
#
|
||||
# Estimated impact: ~2,500+ fewer state changes recorded per hour
|
||||
# =====================================================================
|
||||
|
||||
recorder:
|
||||
# Keep 5 days of history (down from default 10) - reduces DB size significantly
|
||||
purge_keep_days: 5
|
||||
# Commit every 3 seconds instead of 1 - reduces disk I/O
|
||||
commit_interval: 3
|
||||
|
||||
exclude:
|
||||
# -----------------------------------------------------------------
|
||||
# DOMAINS: Exclude entire domains that don't need history
|
||||
# -----------------------------------------------------------------
|
||||
domains:
|
||||
- update # 82 update entities - we don't need a history of available updates
|
||||
- input_button # Momentary buttons - no useful history
|
||||
|
||||
# -----------------------------------------------------------------
|
||||
# ENTITY GLOBS: Pattern-based exclusions for bulk noisy entities
|
||||
# -----------------------------------------------------------------
|
||||
entity_globs:
|
||||
# -- browser_mod: 228 entities, 200 unavailable (stale sessions) --
|
||||
- sensor.browser_mod_*
|
||||
- media_player.browser_mod_*
|
||||
- light.browser_mod_*
|
||||
- binary_sensor.browser_mod_*
|
||||
|
||||
# -- iCloud3: Generates 1000+ state changes per 4 hours --
|
||||
- sensor.icloud3_*
|
||||
- sensor.jess_iphone_15_next_update
|
||||
- sensor.jess_iphone_15_last_update
|
||||
- sensor.jess_iphone_15_last_located
|
||||
- sensor.jess_iphone_15_info
|
||||
- sensor.jess_iphone_15_interval
|
||||
- sensor.jess_iphone_15_moved_distance
|
||||
- sensor.jess_iphone_15_travel_time
|
||||
- sensor.jess_iphone_15_travel_time_min
|
||||
- sensor.jess_iphone_15_zone_distance
|
||||
- sensor.jess_iphone_15_zone_name
|
||||
- sensor.jess_iphone_15_badge
|
||||
- sensor.jess_iphone_15_dir_of_travel
|
||||
- sensor.jess_apple_watch_5_next_update
|
||||
- sensor.jess_apple_watch_5_last_update
|
||||
- sensor.jess_apple_watch_5_last_located
|
||||
- sensor.jess_apple_watch_5_info
|
||||
- sensor.jess_apple_watch_5_interval
|
||||
- sensor.jess_apple_watch_5_moved_distance
|
||||
- sensor.jess_apple_watch_5_travel_time
|
||||
- sensor.jess_apple_watch_5_travel_time_min
|
||||
- sensor.jess_apple_watch_5_zone_distance
|
||||
- sensor.jess_apple_watch_5_zone_name
|
||||
- sensor.jess_apple_watch_5_badge
|
||||
- sensor.jess_apple_watch_5_dir_of_travel
|
||||
|
||||
# -- Frigate: Count sensors that are almost always 0 --
|
||||
- sensor.*_all_count
|
||||
- sensor.*_all_active_count
|
||||
- sensor.*_car_count
|
||||
- sensor.*_car_active_count
|
||||
- sensor.*_cat_count
|
||||
- sensor.*_cat_active_count
|
||||
- sensor.*_dog_count
|
||||
- sensor.*_dog_active_count
|
||||
- sensor.*_person_count
|
||||
- sensor.*_person_active_count
|
||||
- sensor.*_review_status
|
||||
- sensor.*_last_recognized_plate
|
||||
|
||||
# -- Frigate: Occupancy binary sensors that flap constantly --
|
||||
- binary_sensor.*_cat_occupancy
|
||||
- binary_sensor.*_dog_occupancy
|
||||
- binary_sensor.*_all_occupancy
|
||||
|
||||
# -- Plex: All those unavailable client media players --
|
||||
- media_player.plex_*
|
||||
|
||||
# -- Pioneer VSX-832 duplicates (keep only vsx_832 and pioneer_vsx_832_6) --
|
||||
- media_player.pioneer_vsx_8326352
|
||||
- media_player.pioneer_vsx_832_2
|
||||
- media_player.pioneer_vsx_832_25
|
||||
- media_player.pioneer_vsx_832_3
|
||||
- media_player.pioneer_vsx_832_4
|
||||
- media_player.pioneer_vsx_832_5
|
||||
|
||||
# -- VSX-832 mute switches (all unavailable) --
|
||||
- switch.vsx_832_mute_*
|
||||
|
||||
# -- Proxmox last_boot sensors (static values, change once per reboot) --
|
||||
- sensor.*_last_boot
|
||||
|
||||
# -- F1 Sensor (76 entities, most unavailable off-season) --
|
||||
- sensor.f1_*
|
||||
- select.f1_*
|
||||
|
||||
# -- Misc hash-ID entities (likely orphaned browser_mod/plex sessions) --
|
||||
- media_player.*_????????
|
||||
|
||||
# -- qBittorrent status (high churn, low value for history) --
|
||||
- sensor.qbittorrent_status
|
||||
- sensor.qbittorrent_active_torrents
|
||||
- sensor.qbittorrent_inactive_torrents
|
||||
- sensor.qbittorrent_errored_torrents
|
||||
- sensor.qbittorrent_connection_status
|
||||
|
||||
# -----------------------------------------------------------------
|
||||
# SPECIFIC ENTITIES: Individual high-churn entities
|
||||
# -----------------------------------------------------------------
|
||||
entities:
|
||||
# Time sensors - 720 state changes per hour combined, pointless to record
|
||||
- sensor.date_time
|
||||
- sensor.time
|
||||
- sensor.time_2
|
||||
|
||||
# Frigate motion (useful for automations, but constant flapping doesn't need history)
|
||||
- binary_sensor.backyard_motion
|
||||
- binary_sensor.driveway_motion
|
||||
|
||||
# Mobile app sensors that update constantly
|
||||
- sensor.jess_iphone_audio_output
|
||||
- sensor.jess_iphone_app_version
|
||||
- sensor.jess_iphone_location_permission
|
||||
- sensor.jess_iphone_watch_battery
|
||||
- sensor.jess_iphone_watch_battery_state
|
||||
- sensor.jess_phone_last_update_trigger
|
||||
|
||||
# Frigate internal sensor
|
||||
- sensor.frigate_coral_inference_speed
|
||||
- sensor.frigate_uptime
|
||||
Reference in New Issue
Block a user