Une application New Relic est représentée par un dossier Nerdpack , qui peut inclure un ou plusieurs fichiers Nerdlet et, éventuellement, un ou plusieurs fichiers launcher . Nous expliquons ici :
- La structure des fichiers pour un Nerdpack, un Nerdlet et un lanceur
- Comment lier un fichier de lancement à un Nerdlet
- Comment lier votre application à une entité de monitoring
Générer des composants Nerdpack
Il existe deux manières de générer un modèle Nerdpack :
Générer un Nerdpack: utilisez la commande CLI New Relic
nr1 create
et sélectionnezNerdpack
pour créer un modèle Nerdpack qui inclut un Nerdlet et un lanceur.Générez un Nerdlet ou un lanceur individuellement: utilisez la commande CLI New Relic
nr1 create
et choisissezNerdlet
oulauncher
. Cela peut être utile lors de l'ajout de Nerdlets à un Nerdpack existant.
Structure du fichier Nerdpack
Lorsque vous générez un modèle Nerdpack à l'aide de la commande nr1 create
, il possède la structure de fichier suivante :
my-nerdlet├── README.md├── launchers│ └── my-nerdlet-launcher│ ├── icon.png│ └── nr1.json├── nerdlets│ └── my-nerdlet-nerdlet│ ├── index.js│ ├── nr1.json│ └── styles.scss├── node_modules│ ├── js-tokens│ ├── loose-envify│ ├── object-assign│ ├── prop-types│ ├── react│ ├── react-dom│ ├── react-is│ └── scheduler├── nr1.json├── package-lock.json└── package.json
Structure du fichier Nerdlet
Un Nerdpack peut contenir un ou plusieurs Nerdlets. Un dossier Nerdlet démarre avec trois fichiers par défaut, index.js
, nr1.json
et styles.scss
. Voici à quoi ressemblent les fichiers par défaut après avoir été générés à l'aide de la commande nr1 create
:
index.js
Le code JavaScript du Nerdlet.
import React from 'react';
export default class MyAwesomeNerdpack extends React.Component { render() { return <h1>Hello, my-awesome-nerdpack Nerdlet!</h1>; }}
nr1.json
Le fichier de configuration Nerdlet.
{ "schemaType": "NERDLET", "id": "my-awesome-nerdpack-nerdlet", "description": "Describe me", "displayName": "MyAwesomeNerdpack"}
En plus d'utiliser le lanceur comme point d'accès pour votre application, vous pouvez également associer l'application à une entité de monitoring pour qu'elle apparaisse dans l'explorateur d'entités. Pour ce faire, ajoutez deux champs supplémentaires au fichier de configuration du Nerdlet de première génération : entities
et actionCategory
.
Dans cet exemple, le Nerdlet a été associé à toutes les applications de monitoring Browseret apparaîtra sous la catégorie d'interface utilisateur Monitor :
{ "schemaType": "NERDLET", "id": "my-nerdlet", "description": "Describe me", "displayName": "Custom Data", "context": { "entities": [{ "domain": "BROWSER", "type": "APPLICATION" }] }, "actionCategory": "monitor"}
Pour voir cette application dans l'interface utilisateur, accédez à l'explorateur d'entités, sélectionnez Applications Browser et sélectionnez une application de monitoring.
styles.scss
Un fichier SCSS vide pour styliser votre application.
icon.png
L'icône du lanceur qui apparaît sur la page Apps dans New Relic lorsqu'une application est déployée.
Structure du fichier de lancement
Les lanceurs ont leur propre structure de fichiers. Noter que:
Un lanceur n'est pas nécessaire ; comme alternative à l'utilisation d'un lanceur, vous pouvez associer votre application à une entité de monitoring.
Une application peut avoir plusieurs lanceurs, ce qui peut être souhaitable pour une application avec plusieurs Nerdlets.
Après avoir généré un lanceur à l'aide de la commande nr1 create
, son dossier contient deux fichiers :
nr1.json
Le fichier de configuration.
{ "schemaType": "LAUNCHER", "id": "my-awesome-nerdpack-launcher", "description": "Describe me", "displayName": "MyAwesomeNerdpack", "rootNerdletId": "my-awesome-nerdpack-nerdlet"}
Pour connecter un lanceur à un Nerdlet, le rootNerdletId
doit correspondre au id
dans le fichier de configuration nr1.json
du Nerdlet de lancement. Pour les Nerdpacks avec plusieurs Nerdlets, cela ne doit être fait que pour le Nerdlet de première génération.
icon.png
L'icône affichée sur le lanceur de l'application sur la page Apps .