本帖最后由 ruike007 于 2018-11-13 17:24 编辑
不得不说N1真的是一个高性价比的盒子,很多人都用它来搭hass,论坛里也是各种方案教程都有,这里就不赘述了。
不过。盆友们使用几天后就会发现一个比较严重的问题,hass的历史数据太大,很快就能占满设备本来就不多的空间(3-5G),导致N1无法启动或服务卡死。
特别是多设备的时候,一天能有1G+的日志,5天内妥妥的占满100%。(当然 有外置弄外置磁盘的除外 哈哈)
其实这个问题,官方也是有解决方案,一个是本地储存,然后抛弃历史数据,一个是远程储存。本地储存可以配置 configuration.yaml
vim vi nano xftp 看你喜欢。。。
然后找到recoder,配置如下:
recorder:
# 可选项,以下配置表示每2天进行一次数据库“事件表”和“状态表”的清理动作;缺省值为永不清理。
purge_interval: 1
# 当配置了purge_interval后配置,以下配置表示在清理数据库历史记录时保留最近5天的记录。
purge_keep_days: 5
确认配置没错,重启就生效了、
同时,你也可以根据你的空间配置更短的时间,也可以直接配置不记录:像下面的配置:
# 通过配置exclude,排除一些域与实体相关的信息,不记录到数据库(除此之外都记录)
recorder:
exclude:
domains:
- automation
- weblink
- updater
entities:
- sun.sun # Don't record sun data
- sensor.last_boot # Comes from 'systemmonitor' sensor platform
- sensor.date
或者 你也可以配置保存到自己的外部数据库里,这里以mysql为例:
(系统默认是使用SQLite,基本支持各种数据库)
安装数据库支持:
(这部分论坛也有,不过之前的教程都不是基于arrch64的环境,所有这里有点不一样)
sudo apt-get install default-libmysqlclient-dev
pip3 install --upgrade mysqlclient
然后在 configuration.yaml中加入
recorder:
db_url: mysql://用户:密码@地址/数据库名?charset=utf8
重启生效
数据库清理、包含、排查与方案一一致
|