Skip to content

App Insights Event

Actions
Send event to Azure Application Insights
v0.1-alpha
LatestPre-release
Star (1)

Tags

 (1)

app-insights-event-action

Sometimes a DevOps engineer wants to see changes to the deployment infrastructure on the observability dashboard, so that the changes can be correlated with resource usages or increases in errors. This composite run steps GitHub Action is a rudimentary attempt to solve that challenge by allowing you to send events to Azure Application Insights. Each event will be sent with some default GitHub environment variables. Full example usage of this action can be seen in this repository.

Usage

      - name: "AppInsights: Begin Terraform"
        uses: syedhassaanahmed/app-insights-event-action@main
        with:
          instrumentation-key: "${{ secrets.APP_INSIGHTS_KEY }}"
          event-name: "begin-provision-azure"

      - name: "Terraform Apply"
        run: terraform apply -auto-approve

      - name: "AppInsights: End Terraform"
        uses: syedhassaanahmed/app-insights-event-action@main
        with:
          instrumentation-key: "${{ secrets.APP_INSIGHTS_KEY }}"
          event-name: "end-provision-azure"

Here is an example of measuring duration between above 2 events in App Insights

let events = customEvents
| project timestamp, name, run_number = toint(customDimensions.run_number);
let begins = events | where name == "begin-provision-azure" | project-rename beginTime = timestamp;
let ends = events | where name == "end-provision-azure" | project-rename endTime = timestamp;
begins | join ends on run_number
| project run_number, durationInSeconds = datetime_diff("second", endTime, beginTime)
| order by run_number
| render columnchart

App Insights Event is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.

About

Send event to Azure Application Insights
v0.1-alpha
LatestPre-release

Tags

 (1)

App Insights Event is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.