Puede utilizar la característica de seguimiento de cambios de New Relic junto con GitHub Actions para monitor el efecto de los cambios en sus clientes y sistemas. Con GitHub Actions, puedes designar qué cambios monitor y luego ver los resultados en la UI de New Relic. Esto le permite realizar un seguimiento de los cambios que realiza en su entorno durante el proceso de lanzamiento.
Entradas
Aquí están los elementos de entrada:
Llave | Requerido | Por defecto | Descripción |
---|---|---|---|
| Sí | n/a | El GUID de la entidad para aplicar el marcador de cambio. |
| Sí | n/a | Tu clave personal de API deNew Relic |
| No | n/a | Un resumen de lo que se incluyó en este cambio que está visible en la página Change tracking |
| No | n/a | El SHA de confirmación para este cambio que es visible en la página Change tracking |
| No | n/a | Una descripción de alto nivel de este cambio, visible en la página Overview y en la página Change tracking cuando selecciona un cambio individual. |
| No | n/a | Un enlace profundo a la fuente que desencadenó el cambio. |
| No |
| El tipo de despliegue. Además del valor predeterminado de |
| No | n/a | Un ID de grupo para que el cambio se vincule con otros cambios. |
| No |
| La región de su cuenta New Relic |
| Sí | n/a | Metadatos para aplicar al marcador de cambio, como la etiqueta de la última versión |
| Sí |
| Un nombre de usuario para asociar con el cambio que es visible en las páginas Overview y Deployments |
Uso de ejemplo
Secretos de GitHub
Asegúrese de que estén configurados los siguientes secretos de Github :
NEW_RELIC_API_KEY
- Clave personal de APINEW_RELIC_DEPLOYMENT_ENTITY_GUID
- New Relic para crear el marcador.
Consulta la página del marcador de despliegue de la aplicación New Relic y haz clic en el botón Use latest version para asegurarte de utilizar la última versión disponible.
Hay una serie de variables de entorno predeterminadas de GitHub que también se utilizan en estos ejemplos.
Campos mínimos requeridos
name: Change Tracking Markeron: 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 }}"
Todos los campos de entrada
Además de
NEW_RELIC_API_KEY
, este ejemplo muestra cómo segmentar varios elementos almacenando varios secretos como "NEW_RELIC_DEPLOYMENT_ENTITY_GUID_<ID>
", donde<ID>
es el identificador único del elemento de destino.
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 }}"
Que sigue
Una vez que haya designado los cambios que desea rastrear, puede analizar el efecto de esos cambios en la UI de New Relic. Para obtener más detalles, consulte Cómo ver y analizar sus cambios en New Relic.