Calculer

Fonction

Calculez de nouvelles valeurs en combinant ou en agrégeant d'autres mesures de travail SKOOR avec des scripts Python . Un ou plusieurs filtres peuvent être configurés pour rechercher des emplois par type, nom, propriétés personnalisées ou autres critères. Toutes les valeurs de retour ou les valeurs agrégées des travaux filtrés peuvent être utilisées pour le calcul

Alarmant

Temps d'exécution, temps de script, code d'erreur, valeur de retour <0-n>, valeur de chaîne <0-n>, nombre de travaux <0-n>

Les tâches de calcul ne peuvent être créées/modifiées que par des utilisateurs de type Administrateur car elles permettent l'exécution de code arbitraire sur le collecteur ou server SKOOR (dans le cas du collecteur -local).
L'exécutable ou le code saisi dans la zone de texte en ligne est exécuté avec les autorisations de l'utilisateur eranger . Par conséquent, seules des commandes limitées peuvent être exécutées, à moins que l'administrateur Linux (root) n'active des commandes supplémentaires en utilisant par exemple sudo .

Calculer le détail

Comme les tâches de calcul s'exécutent sur le server , en travaillant avec les mesures d'autres tâches, aucun collecteur n'est utilisé pour l'exécution. Le collecteur sélectionné dans la section Job Execution n'est pas pertinent

Pour calculer une valeur, au moins une tâche SKOOR existante doit être sélectionnée sur le système. À partir de ce travail ou de ces travaux, toutes les valeurs de retour peuvent être utilisées pour le calcul.

Tout d'abord, un objet parent doit être sélectionné pour les filtres de recherche. Cliquez sur le bouton Parcourir et la liste déroulante près de Rechercher ci-dessous pour définir l'objet parent. Cliquez sur le bouton + près de Filtre 1 pour ajouter d'autres filtres si nécessaire :

Ajoutez ou supprimez des critères de filtre à l'aide des boutons + / - d'un filtre. Dans l'exemple ci-dessous, toutes les tâches Execute sont recherchées avec la propriété personnalisée Kanton définie sur Zurich :

Pour chaque filtre, le type de valeurs doit être sélectionné maintenant à l'aide de la liste déroulante Valeurs pour le script . Les options suivantes sont disponibles :

Catégorie

Taper

Agrégé

Moyenne, min, max, etc.
Pics de la dernière heure
Pics des dernières 24 heures

Pour chaque emploi

Pics de la dernière heure
Pics des dernières 24 heures
Toutes les valeurs d'emploi

Enfin, cliquez sur actualiser à côté de la liste déroulante Valeurs pour remplir le menu avec les valeurs disponibles des travaux filtrés et sélectionnez l'une des valeurs de la liste déroulante qui sera alors disponible pour le calcul :

Script en ligne

Cette section est la partie principale du travail concernant le travail de calcul. Maintenant que les valeurs du travail ont été sélectionnées, un script Python doit être créé pour en faire quelque chose. Cliquez sur le bouton d'information dans le coin supérieur droit de la section Job Parameters pour ouvrir la page d'aide avec des exemples de scripts :

Dans la définition du travail, un modèle de script est fourni. Ce script contient les données variables avec tous les résultats des travaux filtrés, au format JSON. Cette chaîne JSON ressemble à la suivante, selon le type de valeur sélectionné et la valeur de retour (légèrement modifiée pour plus de lisibilité) :

{
    "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
        }
    ]
}

Élément JSON

La description

arguments

Tableau d'arguments ajoutés au script. Aucun n'a été ajouté dans l'exemple ci-dessus

ce travail

Données du travail de calcul lui-même

résultats

Valeurs des travaux résultants par filtre. Ceux-ci seront utilisés pour le calcul

Info

Informations supplémentaires sur l'emploi. Message d' Warning si par exemple aucun travail n'est trouvé par une définition de filtre

Comme décrit également dans la page d'informations/d'aide sur le travail, avec la ligne de code Python suivante, les valeurs peuvent être placées dans les valeurs de retour SKOOR du travail de calcul (l'exemple correspond au JSON ci-dessus) :

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

Les fonctions requises pour attribuer des valeurs de résultat SKOOR sont disponibles dans la liste déroulante Balises . Ajoutez des arguments et des valeurs de retour sous le champ Script en ligne de la configuration :