Checkmk
to checkmk.com
Important

This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved.

1. Introduzione

In Checkmk si configurano i parametri per host e servizi utilizzando delle regole. Questa funzionalità rende Checkmk molto efficace in ambienti complessi, e offre anche una serie di vantaggi alle installazioni più piccole. Per chiarire il principio della configurazione rule-based, la confronteremo con il metodo classico.

1.1. L'approccio classico

Prendiamo ad esempio la configurazione delle soglie per WARN e CRIT nel monitoraggio dei file system. Con una configurazione orientata al database, per ogni file system si inserirebbe una riga in una tabella:

Host File system Avviso Critico

myserver001

/var

90 %

95 %

myserver001

/sapdata

90 %

95 %

myserver001

/var/log

90 %

95 %

myserver002

/var

85 %

90 %

myserver002

/opt

85 %

90 %

myserver002

/sapdata

85 %

95 %

myserver002

/var/trans

100 %

100 %

È relativamente semplice, ma solo perché la tabella in questo esempio è breve. In pratica, di solito ci sono centinaia o migliaia di file system. Strumenti come copia e incolla e le azioni massive possono semplificare il lavoro, ma il problema di fondo rimane: come puoi identificare e implementare una policy standard? Qual è la regola generale? Come dovrebbero essere preimpostate le soglie per i futuri host?

1.2. Meglio basarsi su regole!

Una configurazione rule-based, tuttavia, consiste proprio nella policy! Sostituiremo la logica della tabella sopra riportata con un insieme di quattro regole. Se supponiamo che myserver001 sia un sistema di test, e che in ogni caso la prima regola pertinente si applichi a ogni file system, il risultato saranno le stesse soglie della tabella sopra:

  1. I file system con mount point /var/trans hanno una threshold del 100/100 %.

  2. Il file system /sapdata su myserver002 ha una threshold dell'85/95%.

  3. I file system sui sistemi di test hanno una threshold del 90/95 %.

  4. Tutti i file system (non specificati) hanno una threshold dell'85/90%.

Certo, con solo due host non si ottiene granché, ma con pochi host in più può fare rapidamente una bella differenza. I vantaggi della configurazione rule-based sono evidenti:

  • The policy is clearly recognizable and can be implemented in an affidabile manner.

  • Puoi modificare la policy in qualsiasi momento senza dover handle migliaia di set di dati.

  • Le eccezioni sono sempre possibili, ma sono documentate sotto forma di regole.

  • L'integrazione di nuovi host è semplice e meno soggetta a errori.

In sintesi, quindi: meno lavoro — più qualità! Per questo motivo, con Checkmk troverai una grande quantità di regole per personalizzare host e servizi — come soglie, impostazioni di monitoraggio, responsabilità, notifiche, configurazione degli agenti e molto altro.

1.3. Tipi di set di regole

All’interno di Setup, Checkmk organizza le regole in set di regole. Ogni set di regole ha il compito di definire un parametro specifico per host o servizi. Checkmk contiene più di 700 set di regole! Ecco alcuni esempi:

  • Host check command — definisce come determinare se gli host sono in stato "UP".

  • Alternative display name for services — definisce nomi alternativi per la visualizzazione dei servizi.

  • JVM memory levels — imposta soglie e altri parametri per il monitoraggio dell'utilizzo della memoria delle macchine virtuali Java (VM).

Ogni set di regole è responsabile o degli host o dei servizi — mai di entrambi. Se un parametro può essere definito sia per gli host che per i servizi, c'è una coppia di regole applicabili — ad esempio, Normal check interval for host checks e Normal check interval for services checks.

Alcuni set di regole, a rigor di termini, non definiscono effettivamente dei parametri, ma creano piuttosto dei servizi. Un esempio sono le regole per gli active checks, che si trovano all’indirizzo Setup > Services > HTTP, TCP, Email, …​. Con queste puoi, ad esempio, impostare un controllo HTTP per host specifici. Queste regole sono classificate come regole host — poiché se un controllo di questo tipo esiste su un host, viene considerato una proprietà dell’host.

Inoltre, ci sono set di regole che controllano la scoperta del servizio. Con questi puoi, ad esempio, tramite Windows service discovery definire per quali servizi Windows devono essere creati controlli automatici se vengono trovati su un sistema. Anche queste sono regole host.

La maggior parte dei set di regole determina i parametri per specifici plug-in di controllo. Un esempio è Network interfaces and switch ports. Le impostazioni in queste regole sono adattate in modo molto specifico al loro plug-in corrispondente. Tali set di regole trovano fondamentalmente impiego solo con quei servizi che si basano su questo plug-in. Nel caso in cui tu non sia sicuro di quale set di regole sia responsabile per quali servizi, puoi scoprirlo al meglio navigando direttamente tramite il servizio fino alla regola pertinente. Come farlo verrà spiegato più avanti.

1.4. Tag host

Una cosa che finora non abbiamo menzionato: nell'esempio sopra c'è una regola per tutti i sistemi di test. Dove è effettivamente definito che un host è un sistema di test?

In Checkmk, qualcosa come "sistema di test" è noto come tag host. Puoi vedere quali tag sono disponibili all'indirizzo Setup > Hosts > Tags. Alcuni tag sono già predefiniti, ad esempio per un "Test system" definito nel gruppo "Criticality".

L'applicazione dei tag agli host avviene in modo esplicito nelle proprietà dell'host oppure tramite ereditarietà nella gerarchia delle cartelle. Come farlo è spiegato nell'articolo sugli host. Come creare i propri tag e a cosa servono i tag predefiniti sarà spiegato nell'articolo sui tag host.

2. Individuare i set di regole corretti

2.1. Set di regole per host

Se vuoi creare una nuova regola che definisca un parametro per uno o più host, ci sono diversi modi per farlo. Il modo più diretto è tramite il gruppo corrispondente nel menu "setup", in questo caso "Setup > Hosts > Host monitoring rules":

Setup menu with focus on the 'Host monitoring rules'.

Nella visualizzazione seguente vengono visualizzati tutti i set di regole rilevanti per il monitoraggio degli host. I numeri che seguono i nomi di questi set di regole indicano il numero di regole già definite:

The 'Host monitoring rules' in the Setup menu.

Tuttavia, puoi raggiungere il tuo obiettivo un po' più velocemente tramite il campo di ricerca. Per farlo, ovviamente, devi sapere approssimativamente come si chiama il set di regole. Ecco il risultato di una ricerca per "host checks" come esempio.

Extract of the result of a search for host checks.

Un altro modo è tramite la voce di menu "Hosts > Effective parameters" nelle proprietà di un host esistente nella configurazione o tramite il simbolo "icon rulesets" nell'elenco degli host di una cartella.

Host list in the Setup menu, with a highlighting of the button for effective parameters.

Lì troverai non solo tutti i set di regole che riguardano l'host, ma anche il parametro attualmente attivo per questo host. Nell'esempio di "Host check command", nessuna regola si applica all'host mostrato, e quindi è impostato sul valore predefinito "Smart PING (only with Checkmk Micro Core)" delle edizioni commerciali. Nella Comunità Checkmk il valore predefinito è "PING (active check with ICMP echo request)".

Display for the 'Host check command' with the default value.

Clicca su Host check command per visualizzare il set completo di regole.

Se esiste già una regola, al posto di Default value compare il numero della regola che definisce questo parametro.

Display for the 'Host check command' with rule.

Cliccandoci sopra si accede direttamente alla regola.

2.2. Set di regole dei servizi

Il percorso per raggiungere i set di regole dei servizi è simile. L'accesso generale avviene tramite il menuSetup , in questo casoSetup > Services > Service monitoring rules oppure, più semplicemente, tramite il campo di ricerca.

Setup menu with focus on the 'Service monitoring rules' and the search box.

Se non hai ancora molta familiarità con i nomi dei set di regole, il percorso tramite il servizio è più semplice. Analogamente agli host, esiste anche una pagina in cui vengono mostrati tutti i parametri di un servizio e dove hai la possibilità di accedere direttamente ai set di regole applicabili. Puoi accedere a questa pagina dei parametri tramite il simbolo icon services nell'elenco dei servizi di un host nella sezione Setup. Il simbolo icon check parameters ti porta direttamente al set di regole che definisce il parametro per il plug-in di controllo di questo servizio.

Services list in the Setup with the icons to call the parameters.

A proposito: il simbolo icon rulesets per la pagina dei parametri si trova anche nel monitoraggio nel menu azione di ogni servizio:

Services list in the monitoring with opened action menu of a service.

2.3. Servizi applicati

Nel menu "Setup" troverai anche una voce per "Enforced Services". Come suggerisce il nome, puoi utilizzare questi set di regole per forzare la creazione di servizi sui tuoi host. I dettagli sono disponibili nell'articolo sui servizi. Un numero limitato di set di regole, come "Simple checks for BIOS/Hardware errors", è disponibile solo tra i servizi applicati. Si tratta di servizi che non derivano dalla scoperta del servizio, ma vengono creati manualmente da te.

2.4. Set di regole in uso

In ciascuno degli elenchi di set di regole sopra menzionati — sia nell’Host monitoring rules che nell’Service monitoring rules — puoi utilizzare l’opzione “Related > Used rulesets” nella barra del menu per visualizzare solo i set di regole in cui hai definito almeno una regola. Questo è spesso un modo pratico per iniziare se vuoi apportare modifiche alle tue regole esistenti. Per inciso, alcune delle regole saranno state generate di default durante la creazione dell'istanza Checkmk e fanno parte della configurazione di esempio. Anche queste vengono visualizzate qui.

2.5. Regole inefficaci

Il monitoraggio è una questione complessa. Può capitare che ci siano regole che non corrispondono a nessun host o servizio, sia perché hai commesso un errore, sia perché gli host e i servizi corrispondenti sono scomparsi. Tali regole inefficaci possono essere trovate negli elenchi dei set di regole sopra menzionati tramite "Related > Ineffective rulesets" nella barra del menu.

2.6. Set di regole obsoleti

Checkmk è in costante sviluppo. Occasionalmente vengono standardizzate alcune cose e può capitare che alcuni set di regole vengano sostituiti da altri. Se hai in uso tali set di regole, il modo più semplice per trovarli è eseguire una ricerca delle regole. Aprila tramite Setup > General > Rule search. Quindi clicca nella barra del menu su Rules > Refine search, seleziona Search for deprecated rulesets come opzione per Deprecated e seleziona Search for rule sets that have rules configured come opzione per Used. Dopo un ulteriore clic su Search otterrai la panoramica desiderata.

Options to search for deprecated rule sets.

3. Creazione e edizione delle regole

L'immagine seguente mostra il set di regole "Filesystems (used space and growth)" con quattro regole configurate:

rules filesystem

Le nuove regole si creano tramite il pulsante "Create rule in folder" oppure clonando una regola esistente con "icon clone". La clonazione crea una copia identica della regola che puoi poi modificare con "icon edit". Una nuova regola creata usando il pulsante "Create rule in folder" apparirà sempre alla fine dell'elenco delle regole, mentre una regola clonata verrà visualizzata come copia sotto la regola originale da cui è stata clonata.

L'ordine in cui sono elencate le regole può essere modificato con il pulsante "icon drag". L'ordine è importante perché le regole posizionate più in alto nell'elenco hanno sempre la priorità su quelle situate più in basso.

Le regole sono memorizzate nelle stesse cartelle da cui gestisci anche gli host. Le autorizzazioni delle regole sono limitate agli host presenti in questa cartella o nelle sottocartelle. In caso di regole in conflitto, ha la priorità la regola che si trova più in basso nella struttura delle cartelle. In questo modo, ad esempio, gli utenti con diritti limitati a determinate cartelle autorizzate possono creare regole per i propri host senza influire sul resto del sistema. Nelle proprietà di una regola puoi modificarne la cartella e quindi “spostarla”.

3.1. La modalità di analisi con i "semafori"

Quando accedi a un set di regole per un host o un servizio in Setup, Checkmk ti mostrerà questo set di regole in modalità analisi. Puoi accedervi cliccando sull'icona "icon rulesets" nel menu azione "icon menu" nella scheda "Setup" nell'elenco degli host o dei servizi. La seguente pagina Effective parameters of mostra l'elenco delle regole applicabili all'host/servizio. Per passare alla modalità di analisi, clicca sul nome di un set di regole per il quale esiste almeno una regola, ovvero un set che non è impostato su Default value:

The analysis mode with 'traffic lights'.

Questa modalità ha due caratteristiche. In primo luogo, appare un secondo pulsante per l'impostazione delle regole: Add rule for current host o Add rule for current host and service.

In questo modo puoi creare una nuova regola con l'host o il servizio corrente già preselezionato. Puoi creare una regola di eccezione in modo molto semplice e diretto. In secondo luogo, in ogni riga compare un simbolo a forma di "semaforo", il cui colore indica se e/o in che modo questa regola influisce sull'host o, rispettivamente, sul servizio corrente. Sono possibili le seguenti condizioni:

icon hyphen

Questa regola non ha alcun effetto sull'host o sul servizio corrente.

icon confirm

Questa regola corrisponde e definisce uno o più parametri.

icon checkmark orange

La regola corrisponde. Tuttavia, poiché un'altra regola più in alto nella gerarchia ha la priorità, questa regola è inefficace.

icon checkmark plus

Questa regola corrisponde. Un'altra regola più in alto nella gerarchia ha effettivamente la priorità, ma non definisce tutti i parametri, quindi almeno un parametro è definito da questa regola di livello inferiore.

Nell'ultima condizione — la regola è una corrispondenza parziale "icon checkmark plus" — può verificarsi solo per i set di regole in cui una regola può definire più parametri selezionando singole caselle di controllo. In teoria, anche ogni parametro di un'altra regola può essere impostato individualmente qui. Ne parleremo meglio più avanti.

4. Caratteristiche delle regole

Ogni regola è composta da tre blocchi. Il primo blocco contiene informazioni generali sulla regola, come il nome della regola. Il secondo blocco definisce cosa deve fare la regola, ovvero quali azioni deve eseguire. Il terzo blocco contiene le informazioni su cosa, ovvero su quali host o servizi, deve essere applicata la regola.

4.1. Proprietà delle regole

Tutto ciò che si trova nel primo blocco, Rule Properties , è facoltativo e serve principalmente a scopo di documentazione:

General rule options.
  • L'Descriptione verrà mostrata nella tabella di tutte le regole di un set di regole.

  • Il campo "Comment" può essere utilizzato per una descrizione più dettagliata. Appare solo nella modalità di modifica di una regola. Tramite il simbolo "icon insertdate" puoi inserire un timbro data e il tuo login nel testo.

  • Il campo "Documentation URL" è pensato per un link alla documentazione interna che gestisci in un altro sistema (ad es. un CMDB). Apparirà come simbolo cliccabile "icon url" nella tabella delle regole.

  • Con la casella di controllo "Do not apply this rule" puoi disabilitare temporaneamente questa regola. Verrà quindi contrassegnata come "icon disabled" nella tabella e risulterà quindi inattiva.

4.2. I parametri definiti

La seconda sezione è diversa per ogni regola, ma specifica sempre cosa deve essere fatto. L'illustrazione seguente mostra un tipo di regola molto diffuso (DB2 Tablespaces). Puoi usare le checkbox per determinare quali singoli parametri la regola deve definire. Come descritto sopra, Checkmk determina quale regola definisce ogni singolo parametro separatamente. La regola dell'illustrazione definisce quindi solo quel valore e lascia inalterate tutte le altre impostazioni:

Different rule values with a setting of one value.

Puoi anche controllare i valori in questa e in altre regole in base all'ora o al calendario. Ad esempio, puoi impostare valori di threshold in modo che l'utilizzo dello tablespace durante l'orario di lavoro sia diverso da quello nei fine settimana.

Clicca prima sul pulsante "Enable timespecific parameters" e poi su "Add new element", vedrai le opzioni dipendenti dall'ora:

View of rule values when time-dependent parameters are selected.

Ora seleziona un periodo di tempo nell'elenco "Match only during time period" e poi seleziona i parametri a cui deve applicarsi questo periodo di tempo.

Alcuni set di regole non impostano un parametro, ma decidono solo quali host sono inclusi e quali no. Un esempio è il set di regole "Hosts to be monitored", il cui intervallo di parametri è simile a questo:

Select positive or negative match.

Selezionando uno dei due valori disponibili, decidi cosa fare con gli host interessati. Selezionando "Positive match (Add matching hosts to the set)" (Inserisci gli host interessati nell'elenco degli host da monitorare), gli host interessati verranno aggiunti all'elenco degli host da monitorare. Selezionando "Negative match (Exclude matching hosts from the set)" (Escludi gli host interessati dal monitoraggio), gli host interessati verranno rimossi dal monitoraggio. "Positive match" (Inserisci gli host interessati nell'elenco degli host da monitorare) o "Negative match" (Escludi gli host interessati dal monitoraggio) si riferisce al contenuto della regola corrente. Non è un criterio di filtro aggiuntivo per la selezione degli host. Filtri l'insieme degli host interessati esclusivamente con i seguenti "Conditions".

4.3. Condizioni

Nella sezione precedente hai definito come devono essere elaborati tutti gli host o i servizi interessati dalla tua regola. Nella terza sezione Conditions definisci ora su quali host o servizi deve agire la regola — e quindi i suoi effetti. Esistono diversi tipi di condizioni che devono essere tutte soddisfatte affinché la regola abbia effetto. Le condizioni sono quindi collegate logicamente con AND:

The conditions for a rule.

Tipo di condizione

Qui hai la possibilità di utilizzare sia condizioni normali che condizioni predefinite. Queste vengono gestite tramite Setup > General > Predefined conditions. Qui devi semplicemente assegnare nomi fissi alle corrispondenze della regola di cui hai bisogno più volte e, da quel momento in poi, fare semplicemente riferimento a esse nelle regole. Puoi anche modificare in un secondo momento il contenuto di queste condizioni a livello centrale e tutte le regole verranno automaticamente adattate di conseguenza. Nell'esempio seguente è stata selezionata la condizione predefinita No VM:

Selecting a predefined condition for a rule.

Cartella

Con la condizione "Folder" definisci che la regola si applica solo agli host in questa cartella o in una sottocartella. Se l'impostazione è "Main", questa condizione si applica a tutti gli host. Come descritto sopra, le cartelle influiscono sulla sequenza delle regole. Le regole nelle cartelle inferiori hanno sempre la priorità su quelle superiori.

Tag host

Host tags limitano le regole agli host in base al fatto che abbiano — o non abbiano — tag host specifici. Anche in questo caso, vengono sempre utilizzati i collegamenti AND. Ogni altra condizione relativa ai tag host in una regola riduce il numero di host interessati dalla regola.

Se desideri rendere una regola applicabile a due possibili valori per un tag (ad es. per Criticality sia Productive system che Business critical)), non puoi farlo con una singola regola. Avrai bisogno di una copia della regola per ogni variante. A volte anche una negazione può essere d’aiuto in questo caso. Puoi anche definire che un tag non sia presente come condizione (ad es. non Test system). I cosiddetti tag ausiliari sono un’altra possibilità.

Poiché alcuni utenti utilizzano davvero molti tag host, abbiamo progettato questa finestra di dialogo in modo che non tutti i gruppi di tag host vengano visualizzati per impostazione predefinita. Devi selezionare specificatamente quello necessario per la regola. Funziona così:

  1. Nella casella di selezione scegli un gruppo di tag host.

  2. Clicca su Add tag condition — verrà quindi aggiunta una voce per questo gruppo.

  3. Seleziona "is" o "is not".

  4. Seleziona il tag desiderato come valore di confronto.

Specifying multiple host tags in one condition.

Etichette

Puoi anche usare le Etichette come condizioni nelle regole. Leggi la descrizione delle Condizioni nelle regole.

Host espliciti

Questo tipo di condizione è destinato alle regole di eccezione. Qui puoi creare un elenco di uno o più nomi host. La regola si applicherà solo a questi host. Tieni presente che se checki la box "Explicit hosts" ma non inserisci alcun host, la regola sarà completamente inefficace.

Tramite l'opzione "Negate" puoi definire un'eccezione inversa. In questo modo puoi escludere dagli host specificati esplicitamente quelli menzionati qui. La regola si applicherà quindi a tutti gli host tranne quelli menzionati qui.

Condition for explicitly named hosts.

Importante: tutti i nomi host inseriti qui saranno verificati per la corrispondenza esatta. Checkmk distingue fondamentalmente tra maiuscole e minuscole nei nomi host!

Puoi modificare questo comportamento passando alle espressioni regolari anteponendo una tilde (~) ai nomi host. In questo caso, come sempre nell'Setup:

  • La corrispondenza viene applicata all'inizio del nome host.

  • La corrispondenza non distingue tra maiuscole e minuscole.

Un punto-asterisco (.*) nelle espressioni regolari consente una sequenza arbitraria di caratteri dopo il punto. L'esempio seguente mostra una condizione a cui corrisponderanno tutti gli host i cui nomi contengono la sequenza di caratteri my (o My, MY, mY ecc.):

Condition for host selection with wildcards.

Servizi espliciti

Per le regole applicabili ai servizi esiste un ultimo tipo di condizione che definisce una corrispondenza sul nome del servizio, o rispettivamente — per le regole che impostano parametri del check — sul nome dell’elemento di controllo. Cosa verrà esattamente confrontato è indicato nella didascalia. Nel nostro esempio è il nome (Instance) di un tablespace:

Condition for service selection with wildcards.

Qui si applica fondamentalmente una corrispondenza con espressioni regolari. La sequenza .*temp corrisponde a tutti i tablespace contenenti temp perché la corrispondenza viene sempre applicata all'inizio del nome. Il simbolo del dollaro alla fine di transfer$ rappresenta la fine e quindi impone una corrispondenza esatta. Un tablespace con il nome transfer2 non corrisponderà quindi.

Non dimenticare: per le regole relative a Explicit services è richiesta una corrispondenza con il nome del servizio (ad es. Tablespace transfer). Per le regole dei parametri del check si applica una corrispondenza con l'elemento (ad es. transfer). L'elemento è infatti la parte variabile del nome del servizio e determina a quale tablespace si applica.

Esistono comunque servizi senza elemento. Un esempio è CPU load. Questo esiste una sola volta per ogni host, quindi non è richiesto alcun elemento. Ne consegue quindi che anche le regole per tali tipi di check sono prive di condizioni.

5. Analisi delle regole

Ora abbiamo spiegato come si creano le regole. Tuttavia, limitarsi a creare regole non basta. Come mostra l'esempio nella sezione "Il sistema rule-based è migliore!" all'inizio di questo articolo, una singola regola non è sufficiente per ottenere il risultato desiderato. Per questo è necessario un sistema più complesso di regole organizzate in sequenze logiche. Per questo motivo diventa importante anche capire come interagiscono più regole tra loro.

5.1. Tipi di analisi delle regole

Nell'introduzione al concetto di regole, hai visto che la prima regola applicata determina sempre il risultato finale. Ma non è tutta qui la verità. Esistono in totale tre diversi tipi di valutazione:

Valutazione Azione

Prima regola
(The first matching rule defines the parameter. )

La prima regola corrispondente definisce il valore. Le regole successive non vengono valutate. Questo è il caso normale per le regole che definiscono parametri semplici.

Prima regola per parametro
(Each parameter is defined by the first matching rule where that parameter is set. )

Ogni singolo parametro è definito dalla prima regola in cui quel parametro è definito (checkbox selezionata). Questo è il caso normale per tutte le regole con sottoparametri attivati tramite checkbox.

Tutte le regole
(All matching rules will add to the resulting list. )

Tutte le regole corrispondenti aggiungeranno elementi all'elenco risultante. Questo tipo viene utilizzato, ad esempio, quando si abbinano host e servizi a gruppi di host, servizi e gruppi di contatto.

Le informazioni su come viene valutata la regola vengono visualizzate per ogni set di regole direttamente sotto la barra del menu:

For each rule set the applicable rule evaluation is shown directly below the menu bar.

5.2. Spiegazione pratica della valutazione delle regole

Ora, come viene valutata concretamente se si sono create diverse regole da applicare a diversi host? Per illustrarlo, prendiamo un semplice esempio:

Supponiamo che tu abbia tre host e che voglia impostare diverse notifiche ripetute periodicamente per ciascuno di essi (e anche per tutti gli host aggiunti in futuro) con la regola "Periodic notifications during host problems":

  1. Regola A: Host-1 ogni 10 minuti

  2. Regola B: Host-2 ogni 20 minuti

  3. Regola C: tutti gli host ogni 30 minuti (regola generale che copre sia l'Host-3 che qualsiasi host aggiunto in futuro).

Se ora attivi la tua configurazione, Checkmk esegue la catena di regole dall'alto verso il basso. Ciò porta alla seguente valutazione:

  • La regola A si applica a Host-1. La notifica per Host-1 avviene ogni 10 minuti. Questo completa il processo per Host-1.

  • La regola A non si applica a Host-2. Si prosegue con la regola B. Questa si applica a Host-2, quindi Host-2 riceve una notifica ogni 20 minuti. Questo completa il processo per Host-2.

  • La regola A non si applica all'Host-3, né la regola B. Ma la regola C è compatibile e viene applicata: la notifica per l'Host-3 avviene a intervalli di 30 minuti. Questo completa anche il processo per l'Host-3.

Nota bene: Poiché a questo set di regole si applica il principio "La prima regola corrispondente definisce il parametro", l'elaborazione della catena di regole termina sempre dopo la prima corrispondenza. L'ordine delle regole è quindi determinante per il risultato! Questo diventa evidente quando si cambia l'ordine delle regole e si scambiano le regole B e C:

  1. Regola A: Host-1 ogni 10 minuti

  2. Regola C: tutti gli host ogni 30 minuti

  3. Regola B: Host-2 ogni 20 minuti

Se ora si esegue nuovamente la catena di regole dall'alto verso il basso per i singoli host, anche il risultato cambia: La regola C ora si applica non solo all'Host-3, ma anche all'Host-2, quindi la notifica per entrambi gli host avviene ogni 30 minuti. Questo completa l'elaborazione per entrambi gli host. Sebbene la regola B sarebbe rilevante per Host-2, ed è stata addirittura scritta per questo host, non verrà più valutata e applicata. In modalità analisi, il processo apparirà quindi così:

Analysis mode for Host-2 after swapping rules B and C.
Per Host-2, anche la regola finale con la sfera gialla corrisponde, ma non viene applicata

Combinando le varie impostazioni spiegate in questo articolo — tenendo presente il corretto ordine di elaborazione — puoi utilizzarle per costruire catene di regole complesse per interi complessi di host.


Last modified: Mon, 15 Dec 2025 13:48:36 GMT via commit f16d42b23
In questa pagina