La gestion des droits sur Nudge APM concernent deux types d’entités :
Il est possible d’attribuer des droits d’administrateur ou d’invité aux différents utilisateurs.
Par ailleurs, à partir de la version 2.17 de Nudge, il est possible de créer des groupes d’utilisateurs et d’affecter les droits aux groupes plutôt que directement aux utilisateurs afin de minimiser les actions en cas de nombreuses applications à gérer.
L’écran de gestion des groupes permet de gérer non seulement les membres mais également les droits attribués.
Les actions de gestion des droits à partir d’une applications sont également possibles depuis l’écran d’administration d’une application.
Ceci est documenté dans le prochain chapitre.
La gestion d’un compte et de ses groupes d’utilisateur (création/suppression, ajout/suppression de membres …) se fait à partir du menu Utilisateurs (menu latéral gauche) puis à l’onglet “Comptes”
Avant d’agir sur les groupes, assurez-vous bien que vous êtes sur le bon compte, vous pouvez changer de compte à l’aide de la liste déroulante des comptes en haut de l’écran.
En haut d’écran figure la liste des administrateurs du compte, il est alors possible d’ajouter ou de retirer des utilisateurs de cette liste.
Les utilisateurs membres de cette liste sont les seuls qui peuvent accéder à cet écran de gestion.
Le formulaire de gestion des groupes figure dans la partie basse de l’écran.
Vous pouvez créer un nouveau groupe en cliquant sur le bouton “Nouveau Groupe”, et lui attribuer un nom, la liste de ses membres ainsi que la liste des applications auxquelles ses membres doivent être habilités.
Ajout d’un membre : Pour ajouter un membre, saisissez son email dans le champ “Nom du membre” puis cliquez sur le bouton “Ajouter un Membre”. L’utilisateur va alors apparaître dans le tableau des membres, vous pouvez répéter cette opération pour ajouter tous les autres membres de ce groupe.
Du fait de contraintes de confidentialité, Nudge ne met pas à disposition d’annuaire consultables.
Ajout d’une application habilitée aux membres du groupe : sélectionnez une application dans la liste déroulante puis le niveau de droit dont les membres de ce groupe doivent disposer sur cette application et cliquez sur le bouton “Ajouter une Application”. Répétez l’opération pour toutes les applications auxquelles les membres de ce groupes doivent avoir accès.
Une fois le formulaire complété, cliquez sur le bouton “Créer”.
Le groupe vient alors s’ajouter à la liste des groupes éventuellement existants et il est possible de modifier sa configuration en cliquant sur la ligne du tableau correspondante pour ajouter/retirer un membre ou ajouter/retirer des droits à ce groupe.
Toutes les actions d’administrations sont accessibles via l’API.
Concernant les applications, il existe deux niveaux de droits :
L’accès à l’écran d’administration des droits d’une application peut se faire de deux manière :
L’administration des droits d’accès se fait ensuite via le menu “Habilitations”.
Deux listes apparaissent alors à l’écran l’une concernant les droits directs et la seconde concernant les droits des groupes.
Il est alors possible d’ajouter ou de supprimer des habilitations directes ou indirectes.
Les informations de performances sur vos applications sont associées à des transactions.
Une transaction représente une requête technique sur votre application.
Par exemple :
Nudge essaiera de configurer automatiquement les transactions qui correspondent à des appels entrants vers votre application.
Il permet aussi de configurer une transaction en renseignant une méthode ou un ensemble de méthodes du code de votre application.
Les filtres s’appliquent sur les transactions identifiées par les sondes dans les applications.
Pour voir en images la création et l’utilisation typique d’un filtre de nommage basé sur une regex, cliquer ici
Ils permettent :
En l’absence de filtre, les transactions portent comme nom un code capté par les sondes.
Par exemple l’URL pour une transaction web, le nom de la Queue dans un serveur JMS, le code SQL pour une requête en base de données, etc.
Par l’affectation de noms explicites aux transactions au travers des filtres, il est possible de :
Les filtres sont associés à une application.
Ils aggrègent des transactions selon des critères qui définissent un périmètre (voir plus bas).
Ce filtre permet de regrouper toutes les transactions du périmètre donné en une unique transaction.
La transaction renommée prendra le nom de votre choix.
Pour créer un tel filtre, il faut :
Si la transaction est de type URL, alors il est possible de définir le nom de la nouvelle transaction en fonction de données d’appels sur la transaction considérée.
Les variables sont à utiliser avec des accolades dans le nom de la nouvelle transaction.
Voici les variables qu’il est possible d’utiliser pour le nom de la transaction renommée :
'?'
'?'
'?'
Ce filtre permet de cacher des transactions.
Seul le périmètre du filtre (voir plus bas) et son nom suffisent pour le définir.
Toutes les transactions qui répondent aux critères du filtre deviendront absents.
## Configuration des filtres
Pour pouvoir configurer les filtres, il faut bénéficier des droits d’administrations sur l’application concernée.
En accédant à l’écran de configuration de l’application, un onglet Filtre donne accès à l’écran de gestion dédié.
Voici quelques exemples de configurations de filtres pour des cas d’usage fréquents :
Cas d’usage | Type | Périmètre | Nom cible |
Nettoyer des transactions inutiles (contenus statiques par exemple) | Exclusion | Code finit par *.css | ø |
Regrouper des transactions métier identiques | Nommage | Code correspond à (regex) /any-request-with-id/* | /any-request-with-id/{id} |
Distinguer des transactions métier distinctes avec url identique | Nommage | Code égal à /app.do | app.do, action={REQ_PARAM:action} |
La création, la modification ou la suppression d’un filtre n’altère pas l’historique des données déjà collectées et analysées par Nudge.
Une transaction ne peut se voir appliquer qu’un seul filtre. Ainsi si une transaction appartient aux périmètres de plusieurs filtres, un seul d’entre eux sera appliqué, et ce de manière non déterminable explicitement. Il faut donc éviter de créer plusieurs filtres dont les périmètres se recouvrent.
Les SLA dont le périmètre est défini par le code des transactions s’appuiera sur les codes modifiés après filtrage.
Cas d’usage | Type | Périmètre | Nom cible |
Nettoyer des transactions inutiles (contenus statiques par exemple) | Exclusion | Code finit par *.css | ø |
Regrouper des transactions métier identiques | Nommage | Code correspond à (regex) /any-request-with-id/* | /any-request-with-id/{id} |
Distinguer des transactions métier distinctes avec url identique | Nommage | Code égal à /app.do | app.do, action={REQ_PARAM:action} |
Une fois connecté sur le portail Nudge APM, afin d’accéder à l’API REST, il vous suffit de cliquer sur le lien API en bas de la page (voir image ci-dessous).
L’API est auto-documentée et se présente de la façon suivante :
Vous pouvez ainsi accéder à l’ensemble des données présentes sur votre tableau de bord (au format JSON), ajouter des applications, gérer les transactions, etc.
Comment configurer des rapports.
Cliquer sur l’onglet rapports dans le menu principal à gauche sur la plateforme Nudge APM.
Cliquer sur créer un nouveau rapport
Une fenêtre apparait vous permettant de donner un titre et une description à votre rapport.
Une fois crée, celui-ci apparait dans la liste de vos rapports.
Votre rapport est créé, vous pouvez maintenant choisir les différents indicateurs et données (graphique, tableaux, etc.) que vous souhaitez intégrer dans votre rapport.
Il suffit de naviguer dans vos applications et de cliquer sur l’icône afin d’ajouter les indicateurs et données (graphique, tableaux, etc.) correspondant dans votre rapport.
NOTE : En cliquant directement sur l’icône , vous pouvez créer un nouveau rapport.
Une fois l’ensemble des éléments ajouté, vous pouvez maintenant “organisez” votre rapport.
Pour cela, allez dans l’onglet Rapport, où apparait l’ensemble de vos rapports.
Cliquez sur le rapport puis éditez et organisez le :
Quand votre rapport est prêt, cliquez sur le bouton
Trois formats sont possibles :
NOTE : dans les cas d’envoi d’email, il est possible de choisir les différents destinataires.
Il suffit de choisir la période de temps sur laquelle la rapport portera.
Il est possible de planifier l’envoi périodique de rapports. Ainsi, sans aucune action, des rapports avec données à jour sont envoyés par email aux destinataires de votre choix.
Il est possible d’ajouter ou d’éditer une planification d’envoi :
Il peut exister de multiples planifications pour chaque rapport.
Une planification correspond principalement :
Liste non exhaustive des paramètres qu’on peut configurer lors du démarrage de l’application.
Ces paramètres permettent de gérer l’intégration et l’affichage des dashboards Grafana.
grafana.regex
Valeur par défaut : ^.*atakama-technologies.com.*
Correspond à l’expression régulière que doivent respecter les urls des dashboards Grafana lorsqu’ils sont renseignés dans le formulaire d’intégration.
Plusieurs expressions régulières peuvent être saisies, séparées par un point-virgule.
Exemple : ^.*atakama-technologies.com.\*;^Http://ph-viewer.[a-zA-Z]\..atakama-technologies.com*
grafana.domain.patterns
Valeur par défaut : atakama-technologies.com*
Permet la synchronisation des plages horaires entre l’application Nudge et les dashborads grafana intégrés.
Ce paramètre doit correspondre à une chaîne de caractères contenue dans le nom de domaine de l’url du dashboard Grafana.
Attention : Il ne s’agit pas d’une regex mais d’une chaîne de caractères.
Plusieurs chaînes de caractères peuvent être saisies, séparées par un point-virgule.
Exemple : atakama-technologies.com;Https://ph-viewer
Notre base de données Cassandra permet de mettre en place une suppression automatique des données en mettant à jour le paramètres suivant.
table.time_to_live
Valeur par défaut : 7884000
La valeur, en seconde, de ce paramètre permet de configurer la durée de vie des données enregistrées dans les tables concernées dans la base de donnée.
Si ce n’est pas déjà le cas, nous vous conseillons d’affecter la valeur 0 au paramètre gc_grace_seconds
dans toutes les tables de la base de données.
Pour ce faire utiliser la commande suivante : ALTER TABLE table_name WITH gc_grace_seconds = 0;