Vous pouvez utiliser la fonctionnalité de suivi des changements de New Relic en conjonction avec GitHub Actions pour monitorer l'effet des changements sur vos clients et votre système. Avec GitHub Actions, vous pouvez désigner les modifications à monitorer, puis consulter les résultats dans l'UI de New Relic. Cela vous permet de suivre les modifications que vous apportez à votre environnement pendant votre pipeline de sortie.
Entrées
Voici les éléments d'entrée :
Clé | Requis | Défaut | Description |
---|---|---|---|
| Oui | n/a | L'entité GUID à laquelle appliquer le marqueur de changement |
| Oui | n/a | Votre clé API personnelleNew Relic |
| Non | n/a | Un résumé de ce qui a été apporté à ce changement, visible sur la page Change tracking |
| Non | n/a | Le SHA de validation pour cette modification qui est visible dans la page Change tracking |
| Non | n/a | Une description de haut niveau de ce changement, visible sur la page Overview et sur la page Change tracking lorsque vous sélectionnez un changement individuel |
| Non | n/a | Un lien profond vers la source qui a déclenché le changement |
| Non |
| Le type de déploiement. Outre la valeur par défaut de |
| Non | n/a | Un identifiant de groupe pour la modification à lier à d'autres modifications |
| Non |
| La région de votre compte New Relic |
| Oui | n/a | métadonnées à appliquer au marqueur de changement, comme la dernière tagde sortie |
| Oui |
| Un nom d'utilisateur à associer au changement qui est visible dans les pages Overview et Deployments |
Exemple d'utilisation
Les secrets de GitHub
Assurez-vous que les secrets Github suivants sont définis :
NEW_RELIC_API_KEY
- API de clé personnelleNEW_RELIC_DEPLOYMENT_ENTITY_GUID
- Nouveau GUID d'entité Relic pour créer le marqueur
Consultez la page du marqueur de déploiement d’application New Relic et cliquez sur le bouton Use latest version pour vous assurer que vous utilisez la dernière version disponible.
Il existe un certain nombre de variables d’environnement GitHub par défaut qui sont également utilisées dans ces exemples.
Champs minimum requis
name: Change Tracking Marker on: release: types: [published]
jobs: newrelic: runs-on: ubuntu-latest name: New Relic steps: # This step builds a var with the release tag value to use later - name: Set Release Version from Tag run: echo "RELEASE_VERSION=${{ github.ref_name }}" >> $GITHUB_ENV # This step creates a new Change Tracking Marker - name: New Relic Application Deployment Marker uses: newrelic/deployment-marker-action@v2.3.0 with: apiKey: ${{ secrets.NEW_RELIC_API_KEY }} guid: ${{ secrets.NEW_RELIC_DEPLOYMENT_ENTITY_GUID }} version: "${{ env.RELEASE_VERSION }}" user: "${{ github.actor }}"
Tous les champs de saisie
En plus de
NEW_RELIC_API_KEY
, cet exemple montre comment cibler plusieurs éléments en stockant plusieurs secrets comme «NEW_RELIC_DEPLOYMENT_ENTITY_GUID_<ID>
», où<ID>
est l'identifiant unique de l'élément cible.
NEW_RELIC_DEPLOYMENT_ENTITY_GUID_App123NEW_RELIC_DEPLOYMENT_ENTITY_GUID_App456NEW_RELIC_DEPLOYMENT_ENTITY_GUID_App789
name: Change Tracking Markeron: workflow_dispatch: release: types: [published]
jobs: newrelic: runs-on: ubuntu-latest name: New Relic steps: # This step builds a var with the release tag value to use later - name: Set Release Version from Tag run: echo "RELEASE_VERSION=${{ github.ref_name }}" >> $GITHUB_ENV # This step creates a new Change Tracking Marker for App123 - name: App123 Marker uses: newrelic/deployment-marker-action@v2.3.0 with: apiKey: ${{ secrets.NEW_RELIC_API_KEY }} guid: ${{ secrets.NEW_RELIC_DEPLOYMENT_ENTITY_GUID_App123 }} version: "${{ env.RELEASE_VERSION }}" changelog: "https://github.com/${{ github.repository }}/blob/master/CHANGELOG.md" commit: "${{ github.sha }}" description: "Automated Release via Github Actions" deploymentType: "ROLLING" groupId: "Workshop App Release: ${{ github.ref_name }}" user: "${{ github.actor }}" # This step creates a new Change Tracking Marker for App456 - name: App456 Marker uses: newrelic/deployment-marker-action@v2.3.0 with: apiKey: ${{ secrets.NEW_RELIC_API_KEY }} guid: ${{ secrets.NEW_RELIC_DEPLOYMENT_ENTITY_GUID_App456 }} version: "${{ env.RELEASE_VERSION }}" changelog: "https://github.com/${{ github.repository }}/blob/master/CHANGELOG.md" commit: "${{ github.sha }}" description: "Automated Release via Github Actions" deploymentType: "ROLLING" groupId: "Workshop App Release: ${{ github.ref_name }}" user: "${{ github.actor }}" # This step creates a new Change Tracking Marker for App789 - name: App789 Marker uses: newrelic/deployment-marker-action@v2.3.0 with: apiKey: ${{ secrets.NEW_RELIC_API_KEY }} guid: ${{ secrets.NEW_RELIC_DEPLOYMENT_ENTITY_GUID_App789 }} version: "${{ env.RELEASE_VERSION }}" changelog: "https://github.com/${{ github.repository }}/blob/master/CHANGELOG.md" commit: "${{ github.sha }}" description: "Automated Release via Github Actions" deploymentType: "ROLLING" groupId: "Workshop App Release: ${{ github.ref_name }}" user: "${{ github.actor }}"
Et ensuite ?
Après avoir désigné les modifications que vous souhaitez suivre, vous pouvez analyser l'effet de ces modifications dans l'UI de New Relic. Pour plus de détails, consultez Comment afficher et analyser vos modifications dans New Relic.