mirror of
https://github.com/home-assistant/core.git
synced 2025-07-15 09:17:10 +00:00
Add entity id to template error logging (#71107)
* Add entity id to template error logging * Increase coverage
This commit is contained in:
parent
3ce531e2f1
commit
6a110e5a77
@ -207,8 +207,9 @@ class AlarmControlPanelTemplate(TemplateEntity, AlarmControlPanelEntity):
|
||||
return
|
||||
|
||||
_LOGGER.error(
|
||||
"Received invalid alarm panel state: %s. Expected: %s",
|
||||
"Received invalid alarm panel state: %s for entity %s. Expected: %s",
|
||||
result,
|
||||
self.entity_id,
|
||||
", ".join(_VALID_STATES),
|
||||
)
|
||||
self._state = None
|
||||
|
@ -222,8 +222,9 @@ class CoverTemplate(TemplateEntity, CoverEntity):
|
||||
self._is_closing = state == STATE_CLOSING
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid cover is_on state: %s. Expected: %s",
|
||||
"Received invalid cover is_on state: %s for entity %s. Expected: %s",
|
||||
state,
|
||||
self.entity_id,
|
||||
", ".join(_VALID_STATES),
|
||||
)
|
||||
if not self._position_template:
|
||||
|
@ -285,8 +285,9 @@ class TemplateFan(TemplateEntity, FanEntity):
|
||||
"""Set the preset_mode of the fan."""
|
||||
if self.preset_modes and preset_mode not in self.preset_modes:
|
||||
_LOGGER.error(
|
||||
"Received invalid preset_mode: %s. Expected: %s",
|
||||
"Received invalid preset_mode: %s for entity %s. Expected: %s",
|
||||
preset_mode,
|
||||
self.entity_id,
|
||||
self.preset_modes,
|
||||
)
|
||||
return
|
||||
@ -322,8 +323,9 @@ class TemplateFan(TemplateEntity, FanEntity):
|
||||
)
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid direction: %s. Expected: %s",
|
||||
"Received invalid direction: %s for entity %s. Expected: %s",
|
||||
direction,
|
||||
self.entity_id,
|
||||
", ".join(_VALID_DIRECTIONS),
|
||||
)
|
||||
|
||||
@ -341,8 +343,9 @@ class TemplateFan(TemplateEntity, FanEntity):
|
||||
self._state = None
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid fan is_on state: %s. Expected: %s",
|
||||
"Received invalid fan is_on state: %s for entity %s. Expected: %s",
|
||||
result,
|
||||
self.entity_id,
|
||||
", ".join(_VALID_STATES),
|
||||
)
|
||||
self._state = None
|
||||
@ -390,7 +393,11 @@ class TemplateFan(TemplateEntity, FanEntity):
|
||||
try:
|
||||
percentage = int(float(percentage))
|
||||
except ValueError:
|
||||
_LOGGER.error("Received invalid percentage: %s", percentage)
|
||||
_LOGGER.error(
|
||||
"Received invalid percentage: %s for entity %s",
|
||||
percentage,
|
||||
self.entity_id,
|
||||
)
|
||||
self._percentage = 0
|
||||
self._preset_mode = None
|
||||
return
|
||||
@ -399,7 +406,11 @@ class TemplateFan(TemplateEntity, FanEntity):
|
||||
self._percentage = percentage
|
||||
self._preset_mode = None
|
||||
else:
|
||||
_LOGGER.error("Received invalid percentage: %s", percentage)
|
||||
_LOGGER.error(
|
||||
"Received invalid percentage: %s for entity %s",
|
||||
percentage,
|
||||
self.entity_id,
|
||||
)
|
||||
self._percentage = 0
|
||||
self._preset_mode = None
|
||||
|
||||
@ -416,8 +427,9 @@ class TemplateFan(TemplateEntity, FanEntity):
|
||||
self._preset_mode = None
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid preset_mode: %s. Expected: %s",
|
||||
"Received invalid preset_mode: %s for entity %s. Expected: %s",
|
||||
preset_mode,
|
||||
self.entity_id,
|
||||
self.preset_mode,
|
||||
)
|
||||
self._percentage = None
|
||||
@ -434,8 +446,9 @@ class TemplateFan(TemplateEntity, FanEntity):
|
||||
self._oscillating = None
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid oscillating: %s. Expected: True/False",
|
||||
"Received invalid oscillating: %s for entity %s. Expected: True/False",
|
||||
oscillating,
|
||||
self.entity_id,
|
||||
)
|
||||
self._oscillating = None
|
||||
|
||||
@ -448,8 +461,9 @@ class TemplateFan(TemplateEntity, FanEntity):
|
||||
self._direction = None
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid direction: %s. Expected: %s",
|
||||
"Received invalid direction: %s for entity %s. Expected: %s",
|
||||
direction,
|
||||
self.entity_id,
|
||||
", ".join(_VALID_DIRECTIONS),
|
||||
)
|
||||
self._direction = None
|
||||
|
@ -393,8 +393,9 @@ class LightTemplate(TemplateEntity, LightEntity):
|
||||
effect = kwargs[ATTR_EFFECT]
|
||||
if effect not in self._effect_list:
|
||||
_LOGGER.error(
|
||||
"Received invalid effect: %s. Expected one of: %s",
|
||||
"Received invalid effect: %s for entity %s. Expected one of: %s",
|
||||
effect,
|
||||
self.entity_id,
|
||||
self._effect_list,
|
||||
exc_info=True,
|
||||
)
|
||||
@ -443,7 +444,9 @@ class LightTemplate(TemplateEntity, LightEntity):
|
||||
self._brightness = int(brightness)
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid brightness : %s. Expected: 0-255", brightness
|
||||
"Received invalid brightness : %s for entity %s. Expected: 0-255",
|
||||
brightness,
|
||||
self.entity_id,
|
||||
)
|
||||
self._brightness = None
|
||||
except ValueError:
|
||||
@ -464,7 +467,9 @@ class LightTemplate(TemplateEntity, LightEntity):
|
||||
self._white_value = int(white_value)
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid white value: %s. Expected: 0-255", white_value
|
||||
"Received invalid white value: %s for entity %s. Expected: 0-255",
|
||||
white_value,
|
||||
self.entity_id,
|
||||
)
|
||||
self._white_value = None
|
||||
except ValueError:
|
||||
@ -483,8 +488,9 @@ class LightTemplate(TemplateEntity, LightEntity):
|
||||
|
||||
if not isinstance(effect_list, list):
|
||||
_LOGGER.error(
|
||||
"Received invalid effect list: %s. Expected list of strings",
|
||||
"Received invalid effect list: %s for entity %s. Expected list of strings",
|
||||
effect_list,
|
||||
self.entity_id,
|
||||
)
|
||||
self._effect_list = None
|
||||
return
|
||||
@ -504,8 +510,9 @@ class LightTemplate(TemplateEntity, LightEntity):
|
||||
|
||||
if effect not in self._effect_list:
|
||||
_LOGGER.error(
|
||||
"Received invalid effect: %s. Expected one of: %s",
|
||||
"Received invalid effect: %s for entity %s. Expected one of: %s",
|
||||
effect,
|
||||
self.entity_id,
|
||||
self._effect_list,
|
||||
)
|
||||
self._effect = None
|
||||
@ -533,8 +540,9 @@ class LightTemplate(TemplateEntity, LightEntity):
|
||||
return
|
||||
|
||||
_LOGGER.error(
|
||||
"Received invalid light is_on state: %s. Expected: %s",
|
||||
"Received invalid light is_on state: %s for entity %s. Expected: %s",
|
||||
state,
|
||||
self.entity_id,
|
||||
", ".join(_VALID_STATES),
|
||||
)
|
||||
self._state = None
|
||||
@ -551,8 +559,9 @@ class LightTemplate(TemplateEntity, LightEntity):
|
||||
self._temperature = temperature
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid color temperature : %s. Expected: %s-%s",
|
||||
"Received invalid color temperature : %s for entity %s. Expected: %s-%s",
|
||||
temperature,
|
||||
self.entity_id,
|
||||
self.min_mireds,
|
||||
self.max_mireds,
|
||||
)
|
||||
@ -591,13 +600,16 @@ class LightTemplate(TemplateEntity, LightEntity):
|
||||
self._color = (h_str, s_str)
|
||||
elif h_str is not None and s_str is not None:
|
||||
_LOGGER.error(
|
||||
"Received invalid hs_color : (%s, %s). Expected: (0-360, 0-100)",
|
||||
"Received invalid hs_color : (%s, %s) for entity %s. Expected: (0-360, 0-100)",
|
||||
h_str,
|
||||
s_str,
|
||||
self.entity_id,
|
||||
)
|
||||
self._color = None
|
||||
else:
|
||||
_LOGGER.error("Received invalid hs_color : (%s)", render)
|
||||
_LOGGER.error(
|
||||
"Received invalid hs_color : (%s) for entity %s", render, self.entity_id
|
||||
)
|
||||
self._color = None
|
||||
|
||||
@callback
|
||||
|
@ -253,8 +253,9 @@ class TemplateVacuum(TemplateEntity, StateVacuumEntity):
|
||||
)
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid fan speed: %s. Expected: %s",
|
||||
"Received invalid fan speed: %s for entity %s. Expected: %s",
|
||||
fan_speed,
|
||||
self.entity_id,
|
||||
self._attr_fan_speed_list,
|
||||
)
|
||||
|
||||
@ -298,8 +299,9 @@ class TemplateVacuum(TemplateEntity, StateVacuumEntity):
|
||||
self._state = None
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid vacuum state: %s. Expected: %s",
|
||||
"Received invalid vacuum state: %s for entity %s. Expected: %s",
|
||||
result,
|
||||
self.entity_id,
|
||||
", ".join(_VALID_STATES),
|
||||
)
|
||||
self._state = None
|
||||
@ -312,7 +314,9 @@ class TemplateVacuum(TemplateEntity, StateVacuumEntity):
|
||||
raise ValueError
|
||||
except ValueError:
|
||||
_LOGGER.error(
|
||||
"Received invalid battery level: %s. Expected: 0-100", battery_level
|
||||
"Received invalid battery level: %s for entity %s. Expected: 0-100",
|
||||
battery_level,
|
||||
self.entity_id,
|
||||
)
|
||||
self._attr_battery_level = None
|
||||
return
|
||||
@ -333,8 +337,9 @@ class TemplateVacuum(TemplateEntity, StateVacuumEntity):
|
||||
self._attr_fan_speed = None
|
||||
else:
|
||||
_LOGGER.error(
|
||||
"Received invalid fan speed: %s. Expected: %s",
|
||||
"Received invalid fan speed: %s for entity %s. Expected: %s",
|
||||
fan_speed,
|
||||
self.entity_id,
|
||||
self._attr_fan_speed_list,
|
||||
)
|
||||
self._attr_fan_speed = None
|
||||
|
@ -1025,6 +1025,7 @@ async def test_color_action_no_template(hass, start_ha, calls):
|
||||
((359.9, 99.9), {"replace6": '"{{(359.9, 99.9)}}"'}),
|
||||
(None, {"replace6": '"{{(361, 100)}}"'}),
|
||||
(None, {"replace6": '"{{(360, 101)}}"'}),
|
||||
(None, {"replace6": '"[{{(360)}},{{null}}]"'}),
|
||||
(None, {"replace6": '"{{x - 12}}"'}),
|
||||
(None, {"replace6": '""'}),
|
||||
(None, {"replace6": '"{{ none }}"'}),
|
||||
|
Loading…
x
Reference in New Issue
Block a user