Home Assistant Unofficial Reference 2024.12.1
diagnostics.py
Go to the documentation of this file.
1 """Support for the AEMET OpenData diagnostics."""
2 
3 from __future__ import annotations
4 
5 from typing import Any
6 
7 from aemet_opendata.const import AOD_COORDS
8 
9 from homeassistant.components.diagnostics import async_redact_data
10 from homeassistant.const import (
11  CONF_API_KEY,
12  CONF_LATITUDE,
13  CONF_LONGITUDE,
14  CONF_UNIQUE_ID,
15 )
16 from homeassistant.core import HomeAssistant
17 
18 from .coordinator import AemetConfigEntry
19 
20 TO_REDACT_CONFIG = [
21  CONF_API_KEY,
22  CONF_LATITUDE,
23  CONF_LONGITUDE,
24  CONF_UNIQUE_ID,
25 ]
26 
27 TO_REDACT_COORD = [
28  AOD_COORDS,
29 ]
30 
31 
33  hass: HomeAssistant, config_entry: AemetConfigEntry
34 ) -> dict[str, Any]:
35  """Return diagnostics for a config entry."""
36  coordinator = config_entry.runtime_data.coordinator
37 
38  return {
39  "api_data": coordinator.aemet.raw_data(),
40  "config_entry": async_redact_data(config_entry.as_dict(), TO_REDACT_CONFIG),
41  "coord_data": async_redact_data(coordinator.data, TO_REDACT_COORD),
42  }
dict[str, Any] async_get_config_entry_diagnostics(HomeAssistant hass, AemetConfigEntry config_entry)
Definition: diagnostics.py:34
dict async_redact_data(Mapping data, Iterable[Any] to_redact)
Definition: util.py:14