Erik Montnemery
8c5efafdd8
Add 5-minute statistics for sensors ( #56006 )
...
* Add 5-minute statistics for sensors
* Address pylint issues
* Black
* Apply suggestion from code review
* Apply suggestions from code review
* Improve tests
2021-09-16 10:57:15 +02:00
Erik Montnemery
d899d15a1e
Add statistics validation ( #56020 )
...
* Add statistics validation
* Remove redundant None-check
* Move validate_statistics WS API to recorder
* Apply suggestion from code review
2021-09-13 13:44:22 +02:00
Erik Montnemery
d2a9f7904a
Include end time of statistics data points in API response ( #56063 )
...
* Include end time of statistics data points in API response
* Correct typing
* Update tests
2021-09-13 10:02:24 +02:00
Erik Montnemery
2a8121bdcd
Really change character set of statistics_meta table to utf8 ( #56029 )
2021-09-09 22:55:51 +02:00
Erik Montnemery
88dbc6373f
Make sure character set of events, states tables is utf8 ( #56012 )
...
* Make sure character set of events, states tables is utf8
* Pylint
* Apply suggestions from code review
2021-09-09 19:26:28 +02:00
Erik Montnemery
a47532c69b
Change character set of statistics_meta table to utf8 ( #56011 )
2021-09-09 17:24:20 +02:00
Erik Montnemery
80fd330479
Add sum_decrease and sum_increase statistics ( #55850 )
2021-09-08 23:35:53 -07:00
Erik Montnemery
27764e9985
Fix handling of imperial units in long term statistics ( #55959 )
2021-09-08 08:08:48 -07:00
Erik Montnemery
22e6ddf8df
Do not let one bad statistic spoil the bunch ( #55942 )
2021-09-08 07:55:40 -07:00
Erik Montnemery
7e70252de5
Handle statistics for sensor with changing state class ( #55316 )
2021-08-27 16:18:49 +02:00
Erik Montnemery
6d4a47a53d
Fix double precision float for postgresql ( #55249 )
2021-08-26 10:06:53 +02:00
Erik Montnemery
ffbd2d79c8
Generate statistics for all sensors with a supported state_class ( #54882 )
...
* Generate statistics for all sensors
* Fix bugs, add tests
* Address review comments
* Cleanup warnings
* Simplify tests
* Simplify selection of statistics
* Fix tests
2021-08-25 13:00:35 +02:00
Erik Montnemery
8877f37da0
Fix statistics for sensors setting last_reset ( #55136 )
...
* Re-add state_class total to sensor
* Make energy cost sensor enforce state_class total_increasing
* Drop state_class total
* Only report energy sensor issues once
2021-08-24 17:02:34 +02:00
Erik Montnemery
0624859bf4
Set statistics columns to double precision ( #55053 )
2021-08-24 11:18:59 +02:00
J. Nick Koston
8d69475d71
Fix recorder shutdown race and i/o in event loop ( #54979 )
2021-08-21 21:38:02 +02:00
J. Nick Koston
aa7c72a8b5
Bump sqlalchemy to 1.4.23 ( #54980 )
...
- Changelog: https://docs.sqlalchemy.org/en/14/changelog/changelog_14.html#change-1.4.23
2021-08-21 13:00:39 -04:00
Erik Montnemery
32e297f4a0
Compile missing statistics ( #54690 )
2021-08-19 22:10:45 -07:00
Paulus Schoutsen
2f77b5025c
Add energy validation ( #54567 )
2021-08-18 11:21:51 -07:00
Erik Montnemery
e1926caeb9
Remove STATE_CLASS_TOTAL and last_reset from sensor ( #54755 )
...
* Remove STATE_CLASS_TOTAL
* Update mill sensor
* Update tests
* Kill last_reset
* Return ATTR_LAST_RESET to utility_meter
* Update energy cost sensor
* Restore last_reset for backwards compatibility
* Re-add and update deprecation warning
* Update tests
* Fix utility_meter
* Update EnergyCostSensor
* Tweak
* Fix rebase mistake
* Fix test
2021-08-18 10:03:27 +02:00
Bram Kragten
e23750b2a4
Add device class `gas` and enable statistics for it ( #54110 )
...
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-08-11 09:58:19 -07:00
Paulus Schoutsen
557cc792e9
Fix SQLAlchemy test warnings ( #54116 )
2021-08-08 20:33:47 -07:00
Franck Nijhof
c875ff8648
Store JSON in database in compact format ( #53364 )
...
* Store JSON in database in compact format
* Fix logbook
2021-07-22 12:05:59 -10:00
Ville Skyttä
470f2dd73f
Upgrade pyupgrade to 2.21.2, apply its changes ( #52987 )
2021-07-19 10:46:09 +02:00
Erik Montnemery
e541bcd54d
Update statistics meta data on entity_id change ( #52755 )
2021-07-14 13:23:11 +02:00
Erik Montnemery
ddc788bf8e
Include future statistics in history/list_statistic_ids ( #52942 )
...
* Include future statistics in history/list_statistic_ids
* Improve tests
2021-07-14 11:54:55 +02:00
Erik Montnemery
19d3aa71ad
Enable basic type checking for recorder ( #52440 )
...
* Enable basic type checking for recorder
* Tweak
2021-07-13 21:21:45 +02:00
Erik Montnemery
c5556a091e
Return empty when listing statistic_ids for unsupported statistic ( #52954 )
2021-07-13 10:35:55 +02:00
J. Nick Koston
0099b54489
Fix recorder purge with sqlite3 < 3.32.0 ( #52929 )
2021-07-12 22:03:13 +02:00
Franck Nijhof
74029a0948
Fix Statistics recorder migration path by dropping in pairs ( #52453 )
2021-07-05 13:34:40 +02:00
Franck Nijhof
5e9127ef7a
Remove problematic/redudant db migration happning schema 15 ( #52541 )
2021-07-05 13:28:01 +02:00
Franck Nijhof
7f3f6757ea
Fix Statistics recorder migration order ( #52449 )
2021-07-02 20:55:40 +02:00
Erik Montnemery
ed25e6fada
Correct recorder table arguments ( #52436 )
2021-07-02 16:28:16 +02:00
Erik Montnemery
11fd9d9525
Avoid duplicated database queries when fetching statistics ( #52433 )
2021-07-02 15:40:54 +02:00
Erik Montnemery
24ae05b734
Drop statistic_id and source columns from statistics table ( #52417 )
...
* Drop statistic_id and source columns from statistics table
* Remove useless double drop of statistics table
* Update homeassistant/components/recorder/models.py
Co-authored-by: Franck Nijhof <git@frenck.dev>
* black
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-07-02 13:17:00 +02:00
Erik Montnemery
16d2dcbfb2
Improve sensor statistics tests ( #52386 )
2021-07-02 09:51:47 +02:00
Erik Montnemery
d450cda385
Report target unit in statistics meta data ( #52341 )
2021-06-30 16:53:51 +02:00
Erik Montnemery
9d0c4c168e
Convert units when fetching statistics ( #52338 )
2021-06-30 14:53:42 +02:00
Erik Montnemery
0ab999738b
Add statistics meta data table ( #52331 )
...
* Add statistics meta data table
* Tweak meta data generation
2021-06-30 13:32:17 +02:00
PeteBa
42c4317628
Avoid drift in recorder purge cut-off ( #52135 )
2021-06-25 11:29:38 -10:00
Erik Montnemery
0ca199d8d0
Add WS API for listing available statistic ids ( #51984 )
...
* Add WS API for listing available statistic ids
* Update homeassistant/components/history/__init__.py
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2021-06-18 21:32:30 +02:00
Paulus Schoutsen
805ef3f90b
Allow fetching multiple statistics ( #51996 )
2021-06-18 21:03:13 +02:00
J. Nick Koston
b3a67a2dd7
Bump sqlalchemy to 1.4.17 ( #51593 )
2021-06-08 16:53:51 +02:00
J. Nick Koston
06c9a50869
Handle missing options in foreign_key for MSSQL ( #51503 )
2021-06-05 12:13:12 +02:00
Raman Gupta
58e37435b3
Make more max lengths constants and add additional MaxLengthExceeded checks ( #50337 )
...
* Add more MaxLengthExceeded checks
* remove some validations to reduce performance impact
* check length of generated entity ID
* dont check entity ID twice and use single context id length constant
* fix test
* add missing test
2021-05-25 19:58:01 +02:00
tkdrob
028a07d86f
Wrap up selectors ( #50794 )
...
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-05-25 14:45:17 +02:00
Marcin Ciupak
caad125b44
Add support for Oracle DB in recorder ( #50090 )
2021-05-22 21:10:27 -05:00
PeteBa
aa9b99713c
Add purge_entities service call to recorder ( #48069 )
2021-05-22 10:30:05 -05:00
Erik Montnemery
e16a8063a5
Compile statistics for energy sensors ( #50829 )
...
* Compile statistics for energy sensors
* Update tests
* Rename abs_value to state
* Tweak
* Recreate statistics table
* Pylint
* Try to fix test
* Fix statistics for multiple energy sensors
* Fix energy statistics when last_reset is not set
2021-05-20 13:05:15 +02:00
J. Nick Koston
e7f7e61e88
Ensure a wal checkpoint is scheduled nightly ( #50746 )
2021-05-17 16:27:51 -05:00
J. Nick Koston
72288710ca
Increase the sqlite cache size from ~2MiB to 8MiB ( #50747 )
2021-05-17 19:42:12 +02:00