New Platform Entities Notifications
Overview
This section describes how to configure informative notification events offered by witboost when a new system/template/domain/policy gets registered into the platform. Currently, these notifications do not follow the configuration steps described in the overview page.
The configuration of the new system/template/domain/policy notification is specified in YAML format and includes a list of events (byEvent
) with corresponding settings for
each event. The settings for each event include the event name (event
), whether to send a notification (
sendNotification
), whether to send an email (sendMail
), and who should receive the notification (recipients
).
The following events are currently supported:
- New Version (
NewVersion
): Sent when a new version of a data product is created. - New System (
NewSystem
): Sent when a new data product is registered. - New Template (
NewTemplate
): Sent when a new template is registered. - New Domain (
NewDomain
): Sent when a new domain is registered. - New Policy (
NewPolicy
): Sent when a new policy is registered.
For each event, the sendNotification
and sendMail
configuration properties can be set to true
or false
depending on whether a
push notification or email should be sent. The recipients
setting is an array of strings indicating who should receive the
notification.
The platform currently supports the following recipient retrieving functions:
dataProductConsumersOwners
: This function retrieves the owners of components that read from the subject data product of the event. dataProductOwners: This function retrieves all users who own at least one data product. none: This function retrieves no recipients.
You also have the option to further personalize the notification message by utilizing the notificationText
field. Within the custom message, you can incorporate the {{displayName}}
variable to display the name of the entity that initiated the event. For instance, if the entity is a component named 'myComponent,' the displayName will be resolved as 'component:default/myComponent'.
Example app-config.yaml
:
# add this in your app-config.yaml
notifications:
byEvent:
- event: NewVersion
sendNotification: true
sendMail: false
recipients: ['dataProductConsumersOwners']
notificationText: 'My custom message about the new version of: {{displayName}}.'
- event: NewSystem
sendNotification: true
sendMail: false
recipients: ['dataProductOwners']
- event: NewTemplate
sendNotification: true
sendMail: false
recipients: ['dataProductOwners']
- event: NewDomain
sendNotification: true
sendMail: false
recipients: ['dataProductOwners']
- event: NewPolicy
sendNotification: true
sendMail: false
recipients: ['dataProductOwners']