19 lines
852 B
TypeScript
19 lines
852 B
TypeScript
import { AlertmanagerChoice, GrafanaAlertingConfiguration } from 'app/plugins/datasource/alertmanager/types';
|
|
|
|
// if we have either "internal" or "both" configured this means the internal Alertmanager is receiving Grafana-managed alerts
|
|
export const isInternalAlertmanagerInterestedInAlerts = (config?: GrafanaAlertingConfiguration): boolean => {
|
|
if (!config) {
|
|
// The backend doesn't have a configuration record in a new Grafana instance until the user has interacted with the configuration page.
|
|
// For that reason, in case of no configuration, we assume that the internal Alertmanager is interested in alerts.
|
|
return true;
|
|
}
|
|
switch (config.alertmanagersChoice) {
|
|
case AlertmanagerChoice.Internal:
|
|
case AlertmanagerChoice.All:
|
|
return true;
|
|
case AlertmanagerChoice.External:
|
|
default:
|
|
return false;
|
|
}
|
|
};
|