Différences entre les pages « Sélection des données sources » et « Étiquettes dynamiques »

De Intermapper Wiki - Supervision réseau & serveurs
(Différence entre les pages)
Aller à : navigation, rechercher
 
(Gestion des erreurs JavaScript)
 
Ligne 1 : Ligne 1 :
===Sélectionner des données===
+
Il existe de multiples méthodes pour gérer le texte contenu dans les étiquettes, celui-ci peut même être dynamique.
  
Lorsque vous créez un rapport, vous devez en premier lieu choisir les éléments ou les interfaces dont les données seront reprises dans le rapport.
 
  
Utilisez la barre de sélection pour réaliser la sélection.
 
  
 +
===Afficher un paramètre ou une variable dans l'étiquette===
  
<center>http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-SelectDevice-controls_553x28.png</center>
+
L'étiquette peut afficher des informations de la probe : paramètres ou variables ou de l'élément. La syntaxe est la suivante :
  
  
 +
<pre>${param:<Nom Paramètre, variable, ou attribut>}</pre>
  
 +
Par exemple, pour afficher le temps nécessaire à l'établissement de la connexion de la probe TCP au nœud, votre étiquette doit ressembler à :
  
* Cliquez sur la barre de sélection, une arborescence de ce type s'affiche :
 
  
 +
<pre>Temps etablissement connexion: ${param:_connect} msec.</pre>
  
<center>http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-SelectDevices-85pct.png</center>
 
  
 +
Attention : il n'y a pas d'espace après "param:" et le nom de la variable (Dans cet exemple, le "_" fait parti du nom de la variable ce qui n'est pas le cas de la plupart des variables.) N'importe quelle variable de la probe contenue dans le <snmp-device-display>, <script-out> ou <commande-display> en utilisant cette syntaxe. Vous pouvez afficher un paramètre de la probe Basic OID en utilisant la syntaxe :
  
  
* Cochez ou dé-cochez les cases vous permettant de sélectionner ou non les éléments ou leur interfaces
+
<pre>Getting data from: ${param:Object ID}</pre>
* Cochez la case '''''Show deleted devices & interfaces''''' pour afficher les éléments ou interfaces qui ont été supprimés.
 
* Cliquez sur '''''Select All''''' ou '''''Unselect All''''' - Tout cocher ou tout dé-cocher pour activer/désactiver l'ensemble des éléments d'une colonne.
 
* Lorsque vous avez terminé votre sélection, clique sur la barre de sélection pour faire disparaitre l'arborescence.
 
  
Note : si vous avez sélectionné un grand nombre de données sur une grande période de temps, cela peut prendre un moment pour que les données apparaissent. Ce délai dépend du nombre de variables, de la vitesse du processeur du serveur, du volume des données et de l'amplitude de la période retenue.
 
  
 +
L'affichage des information du nœud se fait en utilisant :
  
===Sélection d'un jeu de données===
 
  
Pour créer des graphiques, vous devez sélectionner un jeu de données numériques. Les jeux de données disponibles dépendent du type d'élément sélectionné, de la probe utilisée pour surveiller cet élément des jeux de données liés à cette probe et si ce jeu de donnée est présent sur le serveur.
+
<pre>Belongs to map: ${param:MapName}</pre>
  
 +
===Utiliser JavaScript dans une étiquette ou une alerte===
  
Un jeu de donné est disponible lorsque le règle de conservation (rétention policy) pour l'élément sélectionné est réglé à la valeur '''''None''''' et qu'une des conditions suivante est vrai :
+
Vous pouvez également utiliser JavaScript dans une étiquette ou une alerte. Cette méthode vous permet de réaliser des micro-traitements sur les informations que vous souhaitez afficher.
  
* Pour les éléments, temps de réponse (response time) ou packets perdus dernièrement (short-term packet loss) sont mémorisés.
 
* Pour les interfaces (les ports), les octets entrant et sortants (incomming or outgoing byte/second) sont mémorisés.
 
* Si le jeu de donné est indiqué comme auto-enregistré (autorecord) dans la probe.
 
* Si un graphe a été créé avec ce jeu de données en cliquant dans la Status windows ou en l'ajoutant par drag-an-drop depuis une Status Windows à un graphique existant.
 
  
 +
<pre><? write( "Hello World" + "\n"); ?></pre>
  
Il vous suffit d'utiliser le menu déroulant '''''Dataset''''', à droite des contrôles des éléments, pour réaliser une sélection. Si vous êtes toujours en présentation tablulée (Table View) une liste de valeur apparaitra.
+
Les balises <? et ?> indiquent respectivement le début et la fin du JavaScript.
  
  
<center>http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-SelectDataSet.png</center>
 
  
  
 +
====Variables et Champ du Javascript====
  
  
===Grouper les données===
+
'''Important''' : JavaScript dans les étiquettes et les alertes fonctionne de manière globale. Si vous déclarez une variable au niveau global plutôt que dans une fonction, cette dernière est accessible en lecture/écriture par n'importe quel autre JavaScript (éventuellement positionné sur une autre nœud). Cela peut produire des résultats inattendus et erronés si vous lancez le même script sur plusieurs nœuds.
  
 +
Les fonctions JavaScript sont supportées, vous pouvez dès-lors stocker des valeurs dans les nœuds et les alertes, elles seront conservées entre chaque tests ( polls ). Cette méthode est recommandée pour protéger les variables de toute modification non souhaitée. Définir des variables dans les nœuds est décrit ici : xxxxxxxxxxxxxxxxx
  
<center>http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-MinAvgMaxGrp.png</center>
 
  
 +
====Exemple : un script d'étiquette simple====
 +
Le résultat de ce script est sans intérêt, l'objet de l'exemple est d'en montrer l'écriture.
  
  
 +
<pre><Smart Name>
 +
<?
 +
for (var i=1; i<=3; i++) {
 +
  writeln( "Hello World #" + i);
 +
  }
 +
?></pre>
  
 +
Affichera comme étiquette :
  
====Grouper par période====
+
<center>http://www.intermapper.eu/imgwiki/Labels/LabelExample1_357x141.png</center>
  
Dans la plupart des cas, un point représente une moyenne de valeurs. Utiliser les boutons de groupe pour spécifier comment les données seront affichées.
 
  
Les 3 boutons permettent d'afficher la valeur minimum (Min), la valeur moyenne (Avg) ou maximale (Max) pour l'intervalle de temps.
 
  
 +
=====Les fonctions write et writeln=====
  
====Regroupement de données====
+
Ces deux fonctions sont utilisées pour écrire plusieurs valeurs dans les étiquettes.
 +
La différence est que writeln ajouter un saut à la ligne (ce qui évite de devoir coder un \n)
  
Quand plusieurs éléments ou interfaces sont sélectionnées, chacun d'entre eux est représenté sous la forme d'une ligne ou d'un barre sur le graphique. La case Group vous permet de grouper ces éléments en une seul élément de graphique qui affiche la voleur minimale, moyenne ou maximale.
 
  
Pour grouper des éléments ou des interfaces :
+
=====Accéder aux paramètres d'une probe=====
* Cochez la case '''''Group'''''.
 
  
 +
L'utilisation de la syntaxe suivante permet d'accéder aux paramètres d'une probe :
  
 +
<pre><? writeln( "Getting data from: " + self.get( "Object ID")); ?></pre>
  
===Gestion des colonnes===
 
  
 +
L'objet self fait référence à l'objet ou se trouve le script. L'objet self est toujours disponible en JavaScript dans les étiquettes. Utilisez une syntaxe identique :
  
<center>http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-SelectColumns.png</center>
+
<pre><?
 +
  var connTime = self.get( "_connect");
 +
  writeln( "Time to establish connection: " + connTime);
 +
?></pre>
  
  
  
Dans le mode d'affichage en table d'un jeu de données, utilisez le sélecteur de colonnes pour indiquer les colonnes qui doivent être affichées dans le rapport.
 
  
 +
=====Gestion des erreurs JavaScript=====
  
 +
Si vous aviez fait une faute de frappe dans le nom de votre variable, (par exemple tapé _conect au lieu de _connect) l'étiquette afficherait :
  
===Page du rapport===
+
<center>http://www.intermapper.eu/imgwiki/Labels/LabelExample2_555x37.png</center>
  
  
<center>http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-PageControls.png</center>
+
Si vous consultez le journal de debug ( debug log) vous trouverez le message suivant :
  
 +
<pre> 12:15:46 JS> [Device: map 'Exporting Fields', device 'nitro.dartware.com.', probe
 +
'SNMP Traffic']:BAD ARG: There is no variable called '_conect'. It should be the
 +
    name of a probe variable without '$' or curly braces.</pre>
  
 +
Le message d'erreur vous indique la cartes, le nœud et la probe qui sont la cause de l'erreur et autant de détail que possible.
  
 +
Une erreur de syntaxe JavaScript afficherait quand à elle :
  
Utilisez les contrôle de page pour sélectionner la page à afficher.
+
<center>http://www.intermapper.eu/imgwiki/Labels/LabelExample3_305x36.png</center>
* Utilisez les flèches gauche ou droite pour visualiser les pages précédente ou suivante
 
* Taper directement le numéro de page à afficher
 
* Déroulez le menu local pour sélectionner une page.
 
  
  
 +
Le journal de debug donnera des détails sur l'erreur.
  
===Intervalle du rapport===
+
=====Limite du temps d'exécution=====
  
 +
La durée d'exécution d'un script est limitée, entre 50 et 100 msec pour éviter la monopolisation de la CPU. C'est aussi un excellent moyen de générer des étiquettes complexes.
  
<center>http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-SelectDataRange.png</center>
 
  
  
  
  
L'intervalle permet de limiter la quantité de donnée affichée dans le rapport.
+
<center>http://www.intermapper.eu/imgwiki/en_cours_actualisation.png</center>
Utilisez le menu Show Data From qui se trouve en haut de l'écran. Sélectionnez alors la période par date ou indiquer l'unité de temps que vous souhaitez ( heure, jour, semaine, mois …)
+
.
 
 
 
 
 
 
 
 
====Réglages de l'intervalle====
 
 
 
 
 
<center>
 
 
 
'''Previous''' : la période de temps antérieure à maintenant.
 
 
 
http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-Time-Previous_315x145.png
 
 
 
 
 
'''…to Date''' : Sélection du/de le/la dernier(e) jour, semaine, mois, ou année.
 
 
 
http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-Time-ToDate_316x146.png
 
 
 
 
 
'''Specific date''' : Sélection d'une date spécifique.
 
 
 
http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-Time-SpecDate_316x151.png
 
 
 
 
 
'''All dates before''' : Toutes les données avant une date spécifique.
 
 
 
http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-Time-DatesBefore_317x151.png
 
 
 
 
 
'''All dates after''' : Toutes les données après une date spécifique.
 
 
 
http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-Time-DatesAfter_312x145.png
 
 
 
 
 
'''Date Range''' : Données incluses entre deux dates spécifiées.
 
 
 
http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-Time-DateRange_364x117.png
 
 
 
 
 
</center>
 
 
 
====Réglage des unités de temps====
 
 
 
 
 
En plus de la sélection d'une période de temps, InterMapper vous permet d'indiquer l'unité utilisée pour l'affichage des données.
 
 
 
L'unité retenue influence directement le temps que met la rapport pour s'afficher : afficher les données par période de 5 minutes pour une année, par exemple, représente beaucoup de données à analyser pour réaliser le graphique.
 
 
 
 
 
<center>http://ressources.intermapper.eu/wiki/img/report/select_data/IMRS-DataUnits.png</center>
 
 
 
 
 
 
 
 
 
 
 
 
 
----
 
 
 
<center>[[Créer un rapport]] | Sélection des données sources | [[Création et utilisation des filtres]]</center>
 
 
 
----
 
 
 
[[Accueil]] > [[Documentation#Utiliser_InterMapper_Reports | Documentation]]
 
 
 
 
 
[[Catégorie:Graphes]]
 
[[Catégorie:Réglages]]
 
[[Catégorie:Reporting]]
 

Version du 28 mars 2012 à 16:48

Il existe de multiples méthodes pour gérer le texte contenu dans les étiquettes, celui-ci peut même être dynamique.


Afficher un paramètre ou une variable dans l'étiquette

L'étiquette peut afficher des informations de la probe : paramètres ou variables ou de l'élément. La syntaxe est la suivante :


${param:<Nom Paramètre, variable, ou attribut>}

Par exemple, pour afficher le temps nécessaire à l'établissement de la connexion de la probe TCP au nœud, votre étiquette doit ressembler à :


Temps etablissement connexion: ${param:_connect} msec.


Attention : il n'y a pas d'espace après "param:" et le nom de la variable (Dans cet exemple, le "_" fait parti du nom de la variable ce qui n'est pas le cas de la plupart des variables.) N'importe quelle variable de la probe contenue dans le <snmp-device-display>, <script-out> ou <commande-display> en utilisant cette syntaxe. Vous pouvez afficher un paramètre de la probe Basic OID en utilisant la syntaxe :


Getting data from: ${param:Object ID}


L'affichage des information du nœud se fait en utilisant :


Belongs to map: ${param:MapName}

Utiliser JavaScript dans une étiquette ou une alerte

Vous pouvez également utiliser JavaScript dans une étiquette ou une alerte. Cette méthode vous permet de réaliser des micro-traitements sur les informations que vous souhaitez afficher.


<? write( "Hello World" + "\n"); ?>

Les balises <? et ?> indiquent respectivement le début et la fin du JavaScript.



Variables et Champ du Javascript

Important : JavaScript dans les étiquettes et les alertes fonctionne de manière globale. Si vous déclarez une variable au niveau global plutôt que dans une fonction, cette dernière est accessible en lecture/écriture par n'importe quel autre JavaScript (éventuellement positionné sur une autre nœud). Cela peut produire des résultats inattendus et erronés si vous lancez le même script sur plusieurs nœuds.

Les fonctions JavaScript sont supportées, vous pouvez dès-lors stocker des valeurs dans les nœuds et les alertes, elles seront conservées entre chaque tests ( polls ). Cette méthode est recommandée pour protéger les variables de toute modification non souhaitée. Définir des variables dans les nœuds est décrit ici : xxxxxxxxxxxxxxxxx


Exemple : un script d'étiquette simple

Le résultat de ce script est sans intérêt, l'objet de l'exemple est d'en montrer l'écriture.


<Smart Name>
<?
 for (var i=1; i<=3; i++) {
   writeln( "Hello World #" + i);
  }
?>

Affichera comme étiquette :

LabelExample1_357x141.png


Les fonctions write et writeln

Ces deux fonctions sont utilisées pour écrire plusieurs valeurs dans les étiquettes. La différence est que writeln ajouter un saut à la ligne (ce qui évite de devoir coder un \n)


Accéder aux paramètres d'une probe

L'utilisation de la syntaxe suivante permet d'accéder aux paramètres d'une probe :

<? writeln( "Getting data from: " + self.get( "Object ID")); ?>


L'objet self fait référence à l'objet ou se trouve le script. L'objet self est toujours disponible en JavaScript dans les étiquettes. Utilisez une syntaxe identique :

<?
  var connTime = self.get( "_connect");
  writeln( "Time to establish connection: " + connTime);
?>



Gestion des erreurs JavaScript

Si vous aviez fait une faute de frappe dans le nom de votre variable, (par exemple tapé _conect au lieu de _connect) l'étiquette afficherait :

LabelExample2_555x37.png


Si vous consultez le journal de debug ( debug log) vous trouverez le message suivant :

 12:15:46 JS> [Device: map 'Exporting Fields', device 'nitro.dartware.com.', probe
'SNMP Traffic']:BAD ARG: There is no variable called '_conect'. It should be the
    name of a probe variable without '$' or curly braces.

Le message d'erreur vous indique la cartes, le nœud et la probe qui sont la cause de l'erreur et autant de détail que possible.

Une erreur de syntaxe JavaScript afficherait quand à elle :

LabelExample3_305x36.png


Le journal de debug donnera des détails sur l'erreur.

Limite du temps d'exécution

La durée d'exécution d'un script est limitée, entre 50 et 100 msec pour éviter la monopolisation de la CPU. C'est aussi un excellent moyen de générer des étiquettes complexes.



en_cours_actualisation.png

.