apache / apache/dolphinscheduler

[DSIP-92][Alert] Support DolphinScheduler Configuration Markdown and String Alert Template

Open
#17,390 6 comments 0 reactions 0 assignees View on GitHub
discussion DSIP
Dominant language
Java
Stars
14.5k
Forks
5.1k
Avg merge
1d 21h
Merged PRs (30d)
29

Description

### Search before asking

- [x] I had searched in the [DSIP](https://github.com/apache/dolphinscheduler/issues/14102) and found no similar DSIP.

### Motivation

I want use dolphinScheduler configuration markdown or string alert template, like is:

~~~
markdown
## ${alertSubject}
* project name: ${projectName}
* workflow name: ${workflowName}
* alert time: ${alertTime}
* alert status: ${alertStatus}
~~~
or
~~~
string
${alertSubject}, project name: ${projectName}, workflow name: ${workflowName}
~~~

But this feature was not found.

### Design Detail

In the alert instance editor, if you select the any plugin (Need plugin support) and choose Markdown or String as the message type,If it is a string, it will be the same as before, if markdown need a larger text box will appear below. Use this box to enter your Markdown template. You can use JSON strings (System built-in: like ${alertSubject}, ${projectName}, ${alertTime} etc.) to dynamically replace values within the template.
like is:

Image

### Compatibility, Deprecation, and Migration Plan

This feature is fully backward-compatible and introduces Markdown, string template substitution. Data returned to any plugin will be automatically parsed for formatting.

### Test Plan

Functional testing

### Code of Conduct

- [x] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)

Contributor guide

Open the contributing guide

Research direction

Start with the alert instance editor and the alert plugin support described in the design, then trace how alert messages are passed to plugins. Done means Markdown and string templates can be configured, built-in values such as ${alertSubject} and ${projectName} are substituted, existing behavior remains compatible, and functional testing covers the feature.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, markdown
Domain
backend, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.