diff --git a/docs/sources/integrations/available-integrations/configure-appdynamics/index.md b/docs/sources/integrations/available-integrations/configure-appdynamics/index.md new file mode 100644 index 00000000..acf0a8e1 --- /dev/null +++ b/docs/sources/integrations/available-integrations/configure-appdynamics/index.md @@ -0,0 +1,36 @@ +--- +aliases: + - add-appdynamics/ + - /docs/oncall/latest/integrations/available-integrations/configure-appdynamics/ +canonical: https://grafana.com/docs/oncall/latest/integrations/available-integrations/configure-appdynamics/ +keywords: + - Grafana Cloud + - Alerts + - Notifications + - on-call + - AppDynamics +title: AppDynamics integration for Grafana OnCall +weight: 500 +--- + +# AppDynamics integration for Grafana OnCall + +The AppDynamics integration for Grafana OnCall handles health rule violation events sent from AppDynamics actions. +The integration provides grouping and auto-resolve logic via customizable alert templates. + +## Configure AppDynamics integration for Grafana OnCall + +You must have an Admin role to create integrations in Grafana OnCall. + +1. In the **Integrations** tab, click **+ New integration to receive alerts**. +2. Select **AppDynamics** from the list of available integrations. +3. Follow the instructions in the **How to connect** window to get your unique integration URL and review next steps. + +## Grouping and auto-resolve + +Grafana OnCall provides grouping and auto-resolve logic for the AppDynamics integration: + +- Alerts created from health rule violation events are grouped by application and node name +- Alert groups are auto-resolved when the health rule violation is ended or canceled + +To customize this behaviour, consider modifying alert templates in integration settings. diff --git a/engine/apps/integrations/templates/html/integration_appdynamics.html b/engine/apps/integrations/templates/html/integration_appdynamics.html new file mode 100644 index 00000000..39a025a6 --- /dev/null +++ b/engine/apps/integrations/templates/html/integration_appdynamics.html @@ -0,0 +1,93 @@ +
Create a new HTTP Request Template in AppDynamics to send events to Grafana OnCall using the
+ integration URL above.
+ Refer to AppDynamics documentation for more information on how to create HTTP Request Templates:
+
+ https://docs.appdynamics.com/appd/23.x/latest/en/appdynamics-essentials/alert-and-respond/actions/http-request-actions-and-templates
+
+
Use the following values when configuring a new HTTP Request Template:
+ +
+ Request URL:
+
+ Method: POST
+
+ Raw URL: Integration URL above
+
+ Authentication:
+
+ Type: None
+
+ Payload:
+
+ MIME Type: application/json
+
+ Template:
+
+{% verbatim %}
+
+{
+ "event": {
+ "eventType": "${latestEvent.eventType}",
+ "id": "${latestEvent.id}",
+ "guid": "${latestEvent.guid}",
+ "eventTypeKey": "${latestEvent.eventTypeKey}",
+ "eventTime": "${latestEvent.eventTime}",
+ "displayName": "${latestEvent.displayName}",
+ "summaryMessage": "${latestEvent.summaryMessage}",
+ "eventMessage": "${latestEvent.eventMessage}",
+ "application": {
+ "name": "${latestEvent.application.name}"
+ },
+ "node": {
+ "name": "${latestEvent.node.name}"
+ },
+ "severity": "${latestEvent.severity}",
+ "deepLink": "${latestEvent.deepLink}"
+ }
+}
+
+{% endverbatim %}
+
+
+ Response Handling Criteria
+
+ Success Criteria: Status Code 200
+
+ Settings:
+
+ One Request Per Event: Enabled
+
+ After setting up a template, create a new action in AppDynamics and select the template you created earlier.
+ Now you can configure policies to trigger the action when certain events occur in AppDynamics.
+
+ When configuring a policy, select the following events to trigger the action:
+
Health Rule Violation Started - WarningHealth Rule Violation Started - CriticalHealth Rule Violation Continues - WarningHealth Rule Violation Continues - CriticalHealth Rule Violation Upgraded - Warning to CriticalHealth Rule Violation Downgraded - Critical to WarningHealth Rule Violation Ended - WarningHealth Rule Violation Ended - CriticalHealth Rule Violation Canceled - WarningHealth Rule Violation Canceled - Critical+ After setting up the connection, you can test it by sending a test request from the AppDynamics UI. +
diff --git a/grafana-plugin/src/components/IntegrationLogo/IntegrationLogo.config.ts b/grafana-plugin/src/components/IntegrationLogo/IntegrationLogo.config.ts index 09010967..c291b26e 100644 --- a/grafana-plugin/src/components/IntegrationLogo/IntegrationLogo.config.ts +++ b/grafana-plugin/src/components/IntegrationLogo/IntegrationLogo.config.ts @@ -21,4 +21,5 @@ export const logoCoors: { [key: string]: { x: number; y: number } } = { prtg: { x: 12, y: 5 }, jira: { x: 8, y: 9 }, zendesk: { x: 9, y: 14 }, + appdynamics: { x: 3, y: 3 }, };