Add docs & logo for AppDynamics integration (#1916)

# What this PR does
Adds docs & logo for AppDynamics integration. 
Main PR in private repo:
https://github.com/grafana/oncall-private/pull/1790.

## Which issue(s) this PR fixes
https://github.com/grafana/oncall-private/issues/1621

## Checklist

- [x] Unit, integration, and e2e (if applicable) tests updated
- [x] Documentation added (or `pr:no public docs` PR label added if not
required)
- No changelog (AppDynamics integration will be only available in cloud)
This commit is contained in:
Vadim Stepanov 2023-05-11 17:41:51 +01:00 committed by GitHub
parent 395dfd37d0
commit b8f54f1c53
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 130 additions and 0 deletions

View file

@ -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.

View file

@ -0,0 +1,93 @@
<h4>How to start sending alerts to Grafana OnCall from AppDynamics</h4>
<p>Create a new HTTP Request Template in AppDynamics to send events to Grafana OnCall using the
integration URL above.<br>
Refer to AppDynamics documentation for more information on how to create HTTP Request Templates:<br>
<a href="https://docs.appdynamics.com/appd/23.x/latest/en/appdynamics-essentials/alert-and-respond/actions/http-request-actions-and-templates"
target="_blank">
https://docs.appdynamics.com/appd/23.x/latest/en/appdynamics-essentials/alert-and-respond/actions/http-request-actions-and-templates
</a>
</p>
<p>Use the following values when configuring a new HTTP Request Template:</p>
<p>
<b>Request URL:</b>
<br>
Method: <code>POST</code>
<br>
Raw URL: <code>Integration URL above</code>
</p>
<p>
<b>Authentication:</b>
<br>
Type: <code>None</code>
</p>
<p>
<b>Payload:</b>
<br>
MIME Type: <code>application/json</code>
<br>
Template:
{% verbatim %}
<pre>
{
"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}"
}
}
</pre>
{% endverbatim %}
<p>
<b>Response Handling Criteria</b>
<br>
Success Criteria: <code>Status Code 200</code>
</p>
<p>
<b>Settings:</b>
<br>
One Request Per Event: Enabled
</p>
<p>
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.
<br>
When configuring a policy, select the following events to trigger the action:
<ul>
<li><code>Health Rule Violation Started - Warning</code></li>
<li><code>Health Rule Violation Started - Critical</code></li>
<li><code>Health Rule Violation Continues - Warning</code></li>
<li><code>Health Rule Violation Continues - Critical</code></li>
<li><code>Health Rule Violation Upgraded - Warning to Critical</code></li>
<li><code>Health Rule Violation Downgraded - Critical to Warning</code></li>
<li><code>Health Rule Violation Ended - Warning</code></li>
<li><code>Health Rule Violation Ended - Critical</code></li>
<li><code>Health Rule Violation Canceled - Warning</code></li>
<li><code>Health Rule Violation Canceled - Critical</code></li>
</ul>
</p>
<p>
After setting up the connection, you can test it by sending a test request from the AppDynamics UI.
</p>

View file

@ -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 },
};