Une façon pour l'utilisateur d'accéder à votre Nerdlet est de créer un lanceur. Le lanceur ouvre un Nerdlet à partir de la page Apps dans New Relic. Vous pouvez également fournir l'accès à votre Nerdlet à partir d'une entité de votre compte.
Dans ce guide, vous apprendrez à attacher votre Nerdlet à votre entité.
Avant de commencer
Si vous ne l'avez pas déjà fait :
- Inscrivez-vous pour un compte New Relic
- Installer et configurer la CLI New Relic One
Créer un Nerdpack
Mettez à jour votre CLI :
$nr1 update
Créer un Nerdpack avec la CLI :
$nr1 create --type nerdpack --name entity-nerdlet
Cela donne un Nerdpack, appelé entity-nerdlet
, qui se compose d'un lanceur, appelé entity-nerdlet-launcher
, et d'un Nerdlet, appelé entity-nerdlet-nerdlet
.
Servez votre Nerdpack :
$cd entity-nerdlet$nr1 nerdpack:serve
Accédez à https://one.newrelic.com/?nerdpacks=local et accédez à Apps.
?nerdpacks=local
est nécessaire pour permettre à vos Nerdpacks servis localement de se charger dans New Relic.
Sous Your apps, cliquez sur votre lanceur pour afficher votre application New Relic.
Attachez votre Nerdlet à l'entité
Vous avez vu comment vous pouvez accéder à votre Nerdlet à partir d'un lanceur. Accédez maintenant à votre Nerdlet depuis votre entité.
Depuis le répertoire racine de votre Nerdpack, ouvrez nerdlets/entity-nerdlet-nerdlet/nr1.json
. Il s'agit du fichier de métadonnées de votre Nerdlet. Vous utiliserez ce fichier pour attacher votre Nerdlet à l'entité.
Ajoutez un objet context
avec un éventail entities
:
{ "schemaType": "NERDLET", "id": "entity-nerdlet-nerdlet", "displayName": "EntityNerdletNerdlet", "description": "", "context": { "entities": [] }}
Cela indique à New Relic que vous souhaitez faire apparaître votre Nerdlet dans un éventail de contextes d'entité.
Ajouter un contexte d’entité :
{ "schemaType": "NERDLET", "id": "entity-nerdlet-nerdlet", "displayName": "EntityNerdletNerdlet", "description": "", "context": { "entities": [ { "domain": "APM", "type": "APPLICATION" } ] }}
Ici, vous avez attaché votre Nerdlet à toutes les entités d'application dans le domaine APM .
Accéder à APM.
Étant donné que vous diffusez votre Nerdpack localement, n'oubliez pas que vous devez toujours spécifier la chaîne de requête ?nerdpacks=local
.
Choisissez l'une de vos applications.
Faites défiler vers le bas pour voir votre Nerdlet attaché à l'application.
Cliquez sur cette option de menu et voyez votre Nerdlet de la même manière que vous l'avez fait avec le lanceur.
Configurez votre entities
La clé context.entities
dans le fichier nr1.json
de votre Nerdlet spécifie à quelle entité votre Nerdlet doit être attaché.
Spécifier une entité domain
Attachez votre Nerdlet à un certain domaine d'entité en spécifiant domain
comme l'une des valeurs suivantes :
APM
: suivi des performances des applicationsBROWSER
: BrowserINFRA
: monitoring des infrastructuresMOBILE
: monitoring des applications mobilesSYNTH
: monitoring synthétique
Par exemple, attachez votre Nerdlet à toutes les entités du domaine APM
:
{ "context": { "entities": [{ "domain": "APM" }] }}
Attachez votre Nerdlet à toutes les entités sauf celles d'un domaine :
{ "context": { "entities": [{ "domain": "!APM" }] }}
Attachez votre Nerdlet à toutes les entités dans plusieurs domaines :
{ "context": { "entities": [{ "domain": "APM" }, { "domain": "BROWSER" }] }}
Spécifier une entité type
Attachez votre Nerdlet à un certain type d’entité en spécifiant type
comme l’une des valeurs suivantes :
APPLICATION
HOST
MONITOR
Par exemple, attachez votre Nerdlet à toutes les entités de type APPLICATION
:
{ "context": { "entities": [{ "type": "APPLICATION" }] }}
Attachez votre Nerdlet à toutes les entités sauf celles d'un type spécifié :
{ "context": { "entities": [{ "type": "!APPLICATION" }] }}
Attachez votre Nerdlet à chaque entité dont le type correspond à l'un d'un éventail de types :
{ "context": { "entities": [{ "type": "APPLICATION" }, { "type": "MONITOR" }] }}
Spécifier l'entité tags
Attachez votre Nerdlet à l'entité qui a une tag donnée.
Par exemple, attachez votre Nerdlet à l'entité qui a un GUID particulier :
{ "context": { "entities": [ { "tags": [ { "key": "guid", "values": ["<SOME ENTITY GUID>"] } ] } ] }}
Attachez votre Nerdlet à chaque entité qui possède un accountId
particulier et utilise le langage de programmation Python :
{ "context": { "entities": [ { "tags": [ { "key": "accountId", "values": ["<SOME ACCOUNT ID>"] }, { "key": "language", "values": ["python"] } ] } ] }}
Combiner les filtres
Lorsque vous filtrez l'entité à laquelle votre Nerdlet sera ajouté, vous pouvez combiner domain
, type
et tags
:
{ "context": { "entities": [ { "domain": "APM", "type": "APPLICATION", "tags": [ { "key": "language", "values": ["python"] } ] }, { "domain": "SYNTH", "type": "MONITOR" }, { "domain": "BROWSER" } ] }}
Dans cet exemple, vous avez attaché votre Nerdlet à :
- Toutes les applications APM dont la balise métadonnées spécifie la langue
python
- ET tous les moniteurs Synthétique
- ET toutes les entités Browser