Sensori conta entità, conta errori e log level con Home Assistant

Sensori conta entità, conta errori e log level con Home Assistant

log level

Aggiornamento del 03/04/2021

Argomento: Configurazioni
Livello: Novizio (Novizio,Esperto, Pro)
Difficoltà: Bassa (Bassa, Media, Alta)

Introduzione

L’articolo presenta alcune configurazioni che risutano molo comode nella nostra configurazione di Home Assistant:

  1. il sensore conta entità come dice il nome tiene il conto di tutte le entità configurate in Home Assistant esponendo sia il totale complessivo che la numerosità delle entità per singolo dominio.
  2. Il conteggio degli errori invece tiene traccia degli errori presenti nel log file di Home Assistant, dando quindi una immediata visualizzazione del numero di errori presenti e permettendo di capire eventuli anomalie dovure ad un numero anomalo di errori.
  3. automazione per variare il default log level di Home Assistant, cioè un’automazione che permette di variare le informazioni che sono raccolte nel file di log di HA.

Sensore conta entità

Il sensore conta entità è un template sensore che espone nel suo stato il conteggio di tutte le entità presenti in Home Assistant e come attributi ha la numerosità dei singoli domini di interesse. Espone anche il valore delle luci e delle automazioni nello stato ON.

 

Aggiornamento 03/04/2021: il custom-component browser_mod introduce i sensori di tipo light e media_player che volendo si possono disabilitare nella conigurazione del custom. E’ possibile anche non considerare queste entità nel conteggio modificando la configurazione come di seguito:

Card Lovelace

La parte più complicata è la gestione grafica in Lovelace realizzata con due custom component button-card e card-mod per la gestione avanzata dei  CSS (per evitare bordi e spaziature non desiderate). Il risultato  è il seguente:

conteggio entità

Conteggio Entità



 

Conteggio errori

La realizzazione di questa misurazione è effettuata tramite un’entità counter e un’automazione basata sulla rilevazione tramite “trigger” dell’evento system_log_event con parametro “ERROR”, l’“action” invece incrementa una entità di tipo counter; il risultato è quindi il conteggio degli eventi di errore di Home Assistant appena si verificano.

 

 

Se lo si desidera si può aggiungere una notifica per ogni errore rilevato, ma lo sconsiglio fortemente 🙂

Per la visualizzazione Lovelace basta una semplice entities card oppure una entity card:


Default Log Level

Il file di log raccoglie tutta una serie di eventi che accadono durante il funzionamento di Home Assistant, il logging level rappresenta la tipologia di evento suddivisa in un certo numero di livelli. Home Assistant prevede 8 livelli possibili, mentre in letteratura di solito ne sono indicati 7, che ho rassunto di seguito (escludendo il livello ALL) in ordine crescente di importanza o “severità”:

  • FATAL. rappresenta situazioni veramente catastrofiche per quanto riguarda il funzionamento dell’applicazione.
  • ERROR. Un errore è un problema serio e rappresenta il fallimento di qualcosa di importante nella tua applicazione. Un errore per esempio è una interruzione di  connessioni al database o l’impossibilità di accedere a un file o servizio. In generale qualsiasi errore fatale per l’operazione, ma non per il servizio o l’applicazione.
  • WARN. Si utilizza il livello  WARN per indicare che si potrebbe avere un problema o che è stata rilevata una situazione insolita, ma non è stato fatto alcun danno reale.
  • INFO. I messaggi INFO corrispondono al normale comportamento dell’applicazione. Sono informazioni utili per la registrazione (avvio / arresto) di un servizio, ecc.. In generale sono informazioni che voglio avere disponibili ma di solito non mi interessano in circostanze normali.
  • DEBUG. Con DEBUG, si raccolgono informazioni diagnostiche dettagliate.
  • NOT-SET (off). Non registra nulla.

Home assistant mette a disposizione due servizi per variare il livello di logging:

  1. set_default_level: permette d configurare il livello generale di logging
  2. set_level: permette di configurare il livello di logging di ogni singola integrazione

Il codice proposto permette di selezionare il default_level traimite un input_select che elenca gli 8 livelli possibili di log; scegliendo il livello si innesca l’automazione che cambia il log level e invia un messaggio Telegram (ovviamente occorre personalizzare il servizio di notifica con il proprio servizio).

 

 

Una risposta.

  1. Giancarlo Agostino ha detto:

    Ciao io avrei necessità di visualizzare il numero di volte che viene invocata l’apertura di un cancello (switch.esp_citofono_1). Mi sapresti aiutare nella creazione del sensore apposito?
    Ho creato questo:

    – platform: history_stats
    name: CARRAIO number
    entity_id: switch.esp_citofono_1
    state: “on”
    type: count
    start: “{{ 0 }}”
    end: “{{ now() }}”

    ma non si incrementa

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Advertisment ad adsense adlogger