Guard for bad last reset (#57344)
This commit is contained in:
parent
7e34860615
commit
eba1d7d16a
1 changed files with 6 additions and 4 deletions
|
@ -7,6 +7,7 @@ import datetime
|
||||||
import itertools
|
import itertools
|
||||||
import logging
|
import logging
|
||||||
import math
|
import math
|
||||||
|
from typing import Any
|
||||||
|
|
||||||
from sqlalchemy.orm.session import Session
|
from sqlalchemy.orm.session import Session
|
||||||
|
|
||||||
|
@ -362,13 +363,14 @@ def _wanted_statistics(sensor_states: list[State]) -> dict[str, set[str]]:
|
||||||
return wanted_statistics
|
return wanted_statistics
|
||||||
|
|
||||||
|
|
||||||
def _last_reset_as_utc_isoformat(
|
def _last_reset_as_utc_isoformat(last_reset_s: Any, entity_id: str) -> str | None:
|
||||||
last_reset_s: str | None, entity_id: str
|
|
||||||
) -> str | None:
|
|
||||||
"""Parse last_reset and convert it to UTC."""
|
"""Parse last_reset and convert it to UTC."""
|
||||||
if last_reset_s is None:
|
if last_reset_s is None:
|
||||||
return None
|
return None
|
||||||
last_reset = dt_util.parse_datetime(last_reset_s)
|
if isinstance(last_reset_s, str):
|
||||||
|
last_reset = dt_util.parse_datetime(last_reset_s)
|
||||||
|
else:
|
||||||
|
last_reset = None
|
||||||
if last_reset is None:
|
if last_reset is None:
|
||||||
_LOGGER.warning(
|
_LOGGER.warning(
|
||||||
"Ignoring invalid last reset '%s' for %s", last_reset_s, entity_id
|
"Ignoring invalid last reset '%s' for %s", last_reset_s, entity_id
|
||||||
|
|
Loading…
Add table
Reference in a new issue