Skip to main content
Sync AppDynamics alerts to Flashduty via webhook for automated alert noise reduction.

In Flashduty


You can obtain an integration push URL through either of these two methods:

Using Private Integration

Choose this method when you don’t need to route alerts to different channels. It’s simpler.

Using Shared Integration

Choose this method when you need to route alerts to different channels based on the alert payload information.

In AppDynamics


I. AppDynamics Alert Push Configuration

Step 1: Configure Flashduty Alert Channel

  1. Log in to your AppDynamics console
  2. Find Alert Respond, select HTTP Request Templates, and click New to create an alert channel
drawing
  1. In the template configuration, enter Flashduty as the Name
  2. In the Request URL section, select POST as the Method, and enter the integration push URL in Raw URL (enter the integration name on this page, and the URL will be generated after saving)
drawing
  1. In the Payload section, select application/json as MIME Type and UTF-8 as Payload Encoding
  2. Paste the following content in the Payload text box:
{
	"policy_name":"${policy.name}",
	"message": "${latestEvent.eventMessage}",
	"application_name": "${latestEvent.application.name}",
	"link": "${latestEvent.deepLink}",
	"incident_id": "${latestEvent.incident.id}",
	"details": {
		"event_id": "${latestEvent.id}",
		"event_name": "${latestEvent.displayName}",
		"event_time": "${latestEvent.eventTime}",
		"event_type": "${latestEvent.eventType}",
		"health_rule_name":"${latestEvent.healthRule.name}",
		"node_name": "${latestEvent.node.name}",
		"severity": "${latestEvent.severity}"
	}
}
drawingSpecial Note (Optional Configuration)Configuration: Custom Templating VariablesdrawingIf you need to configure Custom Templating Variables, you can refer to the following JSON template. Here, custom_variables is a fixed format, and the variables within custom_variables are custom Variables. The names defined on the page should match the variable names referenced in the JSON template.
{
	"policy_name":"${policy.name}",
	"message": "${latestEvent.eventMessage}",
	"application_name": "${latestEvent.application.name}",
	"link": "${latestEvent.deepLink}",
	"incident_id": "${latestEvent.incident.id}",
	"details": {
		"event_id": "${latestEvent.id}",
		"event_name": "${latestEvent.displayName}",
		"event_time": "${latestEvent.eventTime}",
		"event_type": "${latestEvent.eventType}",
		"health_rule_name":"${latestEvent.healthRule.name}",
		"event_type_key": "${latestEvent.eventTypeKey}",
		"node_name": "${latestEvent.node.name}",
		"severity": "${latestEvent.severity}"
	},
	"custom_variables":{
		"host":"${host}"
	}
}
  1. In the Response Handling Criteria section, set the Failure Criteria status code to 400 and the Success Criteria status code to 201
drawing
  1. Click Save to complete

Step 2: Create Action

  1. Select Actions in the left navigation bar, choose the application type you want to create for, and click Create
  2. In the Create Action popup, select Make an HTTP Request and click OK
drawing
  1. In the Create HTTP Action popup, enter a Name, select Flashduty created in Step 1 as the HTTP Request Template, and click SAVE
drawing

Step 3: Use the Action Created in Step 2 in Alert Policies

  1. Select Policies in the left navigation bar
  2. Create or edit existing policies (configure alert rules as needed, alert rule configuration is omitted here)
  3. In the Actions section of the policy configuration page, click add and select the Action created in Step 2
drawing
  1. After completing other configurations, click Save to finish

II. Status Mapping

AppDynamicsFlashdutyStatus
ERRORCriticalCritical
WARNWarningWarning
INFOInfoInfo