Calcolare

Funzione

Calcolo di nuovi valori combinando o aggregando altre misurazioni di lavori SKOOR con script Python. È possibile configurare uno o più filtri per cercare i lavori per tipo, nome, proprietà personalizzate o altri criteri. Tutti i valori di ritorno o i valori aggregati dei lavori filtrati possono essere utilizzati per il calcolo.

Allarme

Tempo di esecuzione, Tempo di script, Codice di errore, Valore di ritorno <0-n>, Valore di stringa <0-n>, Conteggio lavori <0-n>.

I lavori di calcolo possono essere creati/modificati solo da utenti di tipo Amministratore, poiché consentono di eseguire codice arbitrario sul collettore o sul server di SKOOR (nel caso del collettore locale).
L'eseguibile o il codice immesso nella casella di testo in linea viene eseguito con i permessi dell'utente in questione. Pertanto, è possibile eseguire solo comandi limitati, a meno che l'amministratore di Linux (root) non abiliti comandi aggiuntivi utilizzando, ad esempio, sudo.

Calcolo dei dettagli

Poiché i lavori di calcolo sono in esecuzione sul server e lavorano con le misure di altri lavori, non viene utilizzato alcun raccoglitore per l'esecuzione. Il collettore selezionato nella sezione Esecuzione del lavoro è irrilevante.

Per calcolare un valore, sul sistema deve essere selezionato almeno un lavoro SKOOR esistente. Da questo o da questi lavori, tutti i valori di ritorno possono essere utilizzati per il calcolo.

Per prima cosa, è necessario selezionare un oggetto padre per i filtri di ricerca. Fare clic sul pulsante Sfoglia e sul menu a tendina vicino a Cerca per definire l'oggetto padre. Fare clic sul pulsante + vicino a Filtro 1 per aggiungere altri filtri, se necessario:

Aggiungere o rimuovere criteri di filtro utilizzando i pulsanti + / - di un filtro. Nell'esempio seguente, tutti i lavori di Esecuzione vengono cercati con la proprietà personalizzata Kanton impostata su Zurigo:

Per ogni filtro, il tipo di valori deve essere selezionato ora utilizzando il menu a tendina Valori per lo script . Sono disponibili le seguenti opzioni:

Categoria

Tipo

Aggregato

Media, minimo, massimo, ecc.
Picchi dell'ultima ora
Picchi delle ultime 24 ore

Per ogni lavoro

Picchi dell'ultima ora
Picchi delle ultime 24 ore
Tutti i valori dei lavori

Infine, fare clic su Aggiorna accanto al menu a tendina Valori per popolarlo con i valori disponibili dei lavori filtrati e selezionare uno dei valori dal menu a tendina che sarà quindi disponibile per il calcolo:

Script in linea

Questa sezione è la parte principale del lavoro relativo al calcolo del lavoro. Ora che i valori del lavoro sono stati selezionati, è necessario creare uno script Python che li utilizzi. Fare clic sul pulsante Informazioni nell'angolo in alto a destra della sezione Parametri del lavoro per aprire la pagina di aiuto con esempi di script:

Nella definizione del lavoro, viene fornito un modello di script. Questo script contiene i dati variabili con tutti i risultati dei lavori filtrati, formattati come JSON. Questa stringa JSON ha l'aspetto seguente, a seconda del tipo di valore selezionato e del valore di ritorno (leggermente modificato per la leggibilità):

{
    "arguments": [],
    "thisJob": {
        "type": "jobInfo",
        "jobId": 4769,
        "jobType": 10,
        "jobTypeName": "calculate",
        "jobState": 0,
        "jobStateName": "Undefined",
        "lastTs": 0,
        "values": {}
    },
    "results": [
        {
            "type": "jobAggregateValues",
            "filter": 1,
            "value": "return_value1",
            "count": 43,
            "average": -24882040.997674418,
            "max": 24648.0,
            "min": -1070000000.0
        }
    ],
    "info": [
        {
            "filter": 0,
            "warning": false
        }
    ]
}

Elemento JSON

Descrizione

argomenti

Array di argomenti aggiunti allo script. Nell'esempio precedente non ne è stato aggiunto nessuno

thisJob

Dati del lavoro di calcolo stesso

Risultati

Valori dei lavori risultanti per filtro. Saranno utilizzati per il calcolo

info

Informazioni aggiuntive sul lavoro. Messaggio di Warning se, ad esempio, non viene trovato alcun lavoro in base alla definizione di un filtro.

Come descritto anche nella pagina di informazioni/aiuto sul lavoro, con la seguente riga di codice Python , i valori possono essere inseriti nei valori di ritorno SKOOR del lavoro di calcolo (l'esempio corrisponde al JSON di cui sopra):

setErangerValues(data["results"][0]["average"],data["results"][0]["max"],data["results"][0]["min"])

Le funzioni necessarie per assegnare i valori di ritorno SKOOR sono disponibili nel menu a tendina Tag . Aggiungere gli argomenti e i valori di ritorno sotto il campo Inline script della configurazione: