Commit Graph

128 Commits

Author SHA1 Message Date
J. Nick Koston
5114a1400f Ensure logbook still responds if describe event throws (#91961)
* Ensure logbook still responds if describe event throws

If describe fails, the logbook stream should not collapse

* Ensure logbook still responds if describe event throws

If describe fails, the logbook stream should not collapse
2023-04-24 22:22:53 -04:00
J. Nick Koston
b76551cf35 Reduce number of columns selected for logbook (#91718) 2023-04-22 14:25:22 +02:00
J. Nick Koston
56a6244d90 Remove legacy context lookup implementation from logbook (#91710)
* Remove legacy context lookup implemention from logbook

This object can now be replaced with a simple dict

* Remove legacy context lookup implemention from logbook

This object can now be replaced with a simple dict

* scope

* fix order issue
2023-04-19 21:54:34 -04:00
J. Nick Koston
4080d68489 Fix logbook tests failing because time was not url encoded correctly (#89770) 2023-03-15 15:29:41 -10:00
J. Nick Koston
01e1221443 Refactor logbook data to use a dataclass (#89534) 2023-03-11 12:45:27 +01:00
J. Nick Koston
170a13302c Reduce overhead to store context ids in the database (#88942) 2023-03-08 14:51:45 -10:00
epenet
d65dff3f9e Adjust entity registry access in tests (2) (#88960) 2023-03-01 16:23:36 +01:00
J. Nick Koston
93e37243f6 Fix logbook test that failed to exclude EVENT_HOMEASSISTANT_FINAL_WRITE (#88568) 2023-02-21 16:22:44 -06:00
Franck Nijhof
f67ebcade1 Enable Ruff SIM201 (#88171) 2023-02-15 14:43:02 +01:00
Erik Montnemery
4ca0a24f87 Increase test scope of MariaDB + PostgreSQL tests (#87019)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-02-13 15:58:13 -06:00
epenet
ea11a30a35 Add type hints to integration tests (part 13) (#87998) 2023-02-13 14:38:37 +01:00
J. Nick Koston
00118a6f96 Speed up live history setup if there is no pending data to commit (#86942) 2023-01-30 19:00:34 +01:00
Franck Nijhof
62dcbe5258 Enable Ruff PT001 (#86730) 2023-01-26 18:05:05 +01:00
Franck Nijhof
e50a531cd9 Code styling tweaks to the tests - Part 2 (#86662)
Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2023-01-26 01:23:53 +01:00
epenet
b4dd1b8cb2 Rename logbook constant (#86464) 2023-01-23 18:00:25 +02:00
Marc Mueller
d7dda6bee5 Update python version used for pylint [Py310] (#86414)
* Update python version used for pylint linting [Py310]

* Import Callable from collections.abc [Py310]

* Use builtin anext [Py310]
2023-01-23 07:56:15 +01:00
epenet
30bf0634fe Add per-file-ignore to pylint (#86289) 2023-01-22 17:26:24 +01:00
J. Nick Koston
5279535046 Fix live logbook stalling when there are no historical events with a high commit interval (#86110)
* Force live logbook to send an empty message to indicate no results

Since the sync task can take a while if the recorder is
busy, the logbook will appear to hang if we do not send
the first partial message even if its empty.

This work is in preparation for a higher database
commit interval where this issue is most obvious.

The historical only path did not have this issue because
it never had to wait for the db sync.

* update tests
2023-01-17 21:06:37 -05:00
J. Nick Koston
b8a1537b58 Improve performance of fetching and storing history and events with the database (#84870) 2023-01-02 13:26:08 -10:00
Marc Mueller
63d519c1a8 Spelling updates (#82867) 2022-11-28 16:51:43 +01:00
J. Nick Koston
43745dbc6c Pass explict time in logbook tests (#81725)
The CI sets the timezone to US/Pacific and the logbook
uses start_of_local_day when called without a time.

We now call the logbook api with a specific time to
avoid them being out of sync since the test would
fail at CET 8:55am on Mon Nov 7th 2022 (and probably
other dates)
2022-11-07 16:26:38 +01:00
J. Nick Koston
11a55d6d4c Fix flapping logbook tests (#81695) 2022-11-07 11:41:02 +01:00
Erik Montnemery
31a787558f Ensure recorder test fixture is setup before hass fixture (#80528)
* Ensure recorder test fixture is setup before hass fixture

* Adjust more tests
2022-10-19 07:58:47 +02:00
Erik Montnemery
e852c9b012 Fix logbook tests (#80264)
* Fix logbook tests

* Correct tests

* Improve tests
2022-10-13 17:34:45 +02:00
J. Nick Koston
14611f9b5c Fix race in logbook websocket test (#78390) 2022-09-13 16:40:08 -04:00
J. Nick Koston
fcb6888f87 Start logbook stream faster (#77921)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-09-09 17:16:02 -05:00
Martin Hjelmare
c05905ebda Remove callback decorator from coroutine functions (#75626)
* Remove callback decorator from coroutine functions

* Remove some more callback decorators
2022-07-22 19:09:02 +02:00
J. Nick Koston
a8349a4866 Adjust entity filters to make includes stronger than excludes (#74080)
* Adjust entity filters to make includes stronger than excludes

Fixes #59080

* adjust test for stronger entity glob includes

* sync with docs
2022-06-28 11:42:51 -05:00
J. Nick Koston
720768560d Fix devices missing in logbook when all requested entities are filtered (#74073) 2022-06-28 08:44:06 +02:00
J. Nick Koston
f29cc33fa0 Fix selecting entity_ids and device_ids in events with MySQL and PostgreSQL with logbook (#73918)
* Fix selecting entity_ids and device_ids in events with MySQL and PostgreSQL

Fixes #73818

* add cover
2022-06-24 15:43:35 +02:00
J. Nick Koston
e4f354998d Filter out forced updates in live logbook when the state has not changed (#73335) 2022-06-10 14:04:43 -07:00
J. Nick Koston
0b62944148 Mark counter domain as continuous to exclude it from logbook (#73101) 2022-06-05 21:25:26 -10:00
J. Nick Koston
457c7a4ddc Fix incompatiblity with live logbook and google_assistant (#73063) 2022-06-05 19:06:49 -10:00
J. Nick Koston
6b2e5858b3 Send an empty logbook response when all requested entity_ids are filtered away (#73046) 2022-06-05 21:14:47 -07:00
J. Nick Koston
5b31414225 Fix misalignments between sql based filtering with the entityfilter based filtering (#72936) 2022-06-02 20:52:53 -07:00
J. Nick Koston
c6e56c26b3 Fix logbook not setting up with an recorder filter that has empty fields (#72869) 2022-06-01 22:12:00 -07:00
J. Nick Koston
5d2326386d Fix logbook spinner never disappearing when all entities are filtered (#72816) 2022-06-01 12:33:46 +02:00
J. Nick Koston
35ee4ad55b Prevent live logbook from sending state changed events when we only want device ids (#72780) 2022-05-31 13:08:04 -07:00
J. Nick Koston
587fd05603 Make logbook inherit the recorder filter (#72728) 2022-05-30 17:34:32 -07:00
J. Nick Koston
a43d47fa0b Escape % and _ in history/logbook entity_globs, and use ? as _ (#72623)
Co-authored-by: pyos <pyos100500@gmail.com>
2022-05-27 14:38:29 -07:00
J. Nick Koston
bfa7693d18 Fixes for logbook filtering and add it to the live stream (#72501) 2022-05-25 15:17:08 -10:00
J. Nick Koston
1c25e1d7b1 Add metadata to logbook live stream websocket endpoint (#72394) 2022-05-23 22:37:47 -07:00
J. Nick Koston
9d95b9ab05 Chunk large logbook queries and add an end_time to the api so we stop sending events (#72351) 2022-05-23 15:40:00 -07:00
J. Nick Koston
0248a8710f Always pass the source of the trigger for logbook context messages (#72333) 2022-05-23 13:35:45 -05:00
J. Nick Koston
9c3f949165 Add live streaming logbook websocket endpoint (#72258)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-05-22 14:57:54 -05:00
J. Nick Koston
d459a5c66e Include context state in logbook responses to improve localization (#72222)
* Include context state in logbook responses to improve localization

* reduce payload, dont send context_event_type if sending context_state
2022-05-20 07:46:01 -07:00
J. Nick Koston
f06f94ea85 Add coverage to ensure we reject 0 length logbook filters (#72124) 2022-05-19 08:59:06 -07:00
J. Nick Koston
272e65f56d Fix device_ids being filtered when entities also specified in the logbook (#72122) 2022-05-18 23:27:31 -05:00
J. Nick Koston
c4fc84ec1e Add support for selecting device_ids from the logbook (#72039)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-05-18 01:58:30 -05:00
Paulus Schoutsen
5433c0a535 Make sure empty get_events results is always a list (#72021) 2022-05-17 10:43:58 -07:00