diff --git a/.betterer.results b/.betterer.results index f4b8cf76cea..36a0895fa24 100644 --- a/.betterer.results +++ b/.betterer.results @@ -1664,8 +1664,7 @@ exports[`better eslint`] = { "public/app/features/alerting/unified/components/alert-groups/AlertDetails.tsx:5381": [ [0, 0, 0, "No untranslated strings. Wrap text with ", "0"], [0, 0, 0, "No untranslated strings. Wrap text with ", "1"], - [0, 0, 0, "No untranslated strings. Wrap text with ", "2"], - [0, 0, 0, "No untranslated strings. Wrap text with ", "3"] + [0, 0, 0, "No untranslated strings. Wrap text with ", "2"] ], "public/app/features/alerting/unified/components/alert-groups/AlertGroup.tsx:5381": [ [0, 0, 0, "No untranslated strings. Wrap text with ", "0"], @@ -1683,11 +1682,15 @@ exports[`better eslint`] = { [0, 0, 0, "Do not use any type assertions.", "1"] ], "public/app/features/alerting/unified/components/alert-groups/AlertStateFilter.tsx:5381": [ - [0, 0, 0, "No untranslated strings. Wrap text with ", "0"] + [0, 0, 0, "No untranslated strings. Wrap text with ", "0"], + [0, 0, 0, "No untranslated strings. Wrap text with ", "1"], + [0, 0, 0, "No untranslated strings. Wrap text with ", "2"], + [0, 0, 0, "No untranslated strings. Wrap text with ", "3"] ], "public/app/features/alerting/unified/components/alert-groups/GroupBy.tsx:5381": [ [0, 0, 0, "No untranslated strings. Wrap text with ", "0"], - [0, 0, 0, "Do not use any type assertions.", "1"] + [0, 0, 0, "No untranslated strings. Wrap text with ", "1"], + [0, 0, 0, "Do not use any type assertions.", "2"] ], "public/app/features/alerting/unified/components/alert-groups/MatcherFilter.tsx:5381": [ [0, 0, 0, "No untranslated strings. Wrap text with ", "0"], diff --git a/pkg/services/navtree/navtreeimpl/navtree.go b/pkg/services/navtree/navtreeimpl/navtree.go index 6e0440f88e3..57962943e20 100644 --- a/pkg/services/navtree/navtreeimpl/navtree.go +++ b/pkg/services/navtree/navtreeimpl/navtree.go @@ -405,7 +405,7 @@ func (s *ServiceImpl) buildAlertNavLinks(c *contextmodel.ReqContext) *navtree.Na } if hasAccess(ac.EvalAny(ac.EvalPermission(ac.ActionAlertingInstanceRead), ac.EvalPermission(ac.ActionAlertingInstancesExternalRead))) { - alertChildNavs = append(alertChildNavs, &navtree.NavLink{Text: "Alert groups", SubTitle: "See grouped alerts from an Alertmanager instance", Id: "groups", Url: s.cfg.AppSubURL + "/alerting/groups", Icon: "layer-group"}) + alertChildNavs = append(alertChildNavs, &navtree.NavLink{Text: "Alert groups", SubTitle: "See grouped alerts with active notifications", Id: "groups", Url: s.cfg.AppSubURL + "/alerting/groups", Icon: "layer-group"}) } if s.features.IsEnabled(c.Req.Context(), featuremgmt.FlagAlertingCentralAlertHistory) { diff --git a/public/app/core/utils/navBarItem-translations.ts b/public/app/core/utils/navBarItem-translations.ts index f9ee3dcd99f..47339ea0dab 100644 --- a/public/app/core/utils/navBarItem-translations.ts +++ b/public/app/core/utils/navBarItem-translations.ts @@ -75,7 +75,7 @@ export function getNavTitle(navId: string | undefined) { case 'silences': return t('nav.alerting-silences.title', 'Silences'); case 'groups': - return t('nav.alerting-groups.title', 'Groups'); + return t('nav.alerting-groups.title', 'Active notifications'); case 'alerting-admin': return t('nav.alerting-admin.title', 'Settings'); case 'cfg': @@ -234,7 +234,7 @@ export function getNavSubTitle(navId: string | undefined) { case 'silences': return t('nav.alerting-silences.subtitle', 'Stop notifications from one or more alerting rules'); case 'groups': - return t('nav.alerting-groups.subtitle', 'See grouped alerts from an Alertmanager instance'); + return t('nav.alerting-groups.subtitle', 'See grouped alerts with active notifications'); case 'datasources': return t('nav.datasources.subtitle', 'Add and configure data sources'); case 'correlations': diff --git a/public/app/features/alerting/unified/AlertGroups.test.tsx b/public/app/features/alerting/unified/AlertGroups.test.tsx index d82780dc266..79aa3dc39b8 100644 --- a/public/app/features/alerting/unified/AlertGroups.test.tsx +++ b/public/app/features/alerting/unified/AlertGroups.test.tsx @@ -50,7 +50,7 @@ const ui = { row: byTestId('row'), collapseToggle: byTestId(selectors.components.AlertRules.toggle), silenceButton: byText('Silence'), - sourceButton: byText('See source'), + sourceButton: byText('See alert rule'), matcherInput: byTestId('search-query-input'), groupByContainer: byTestId('group-by-container'), groupByInput: byRole('combobox', { name: /group by label keys/i }), diff --git a/public/app/features/alerting/unified/components/alert-groups/AlertDetails.tsx b/public/app/features/alerting/unified/components/alert-groups/AlertDetails.tsx index 30757d16fa0..e02a7cfb03c 100644 --- a/public/app/features/alerting/unified/components/alert-groups/AlertDetails.tsx +++ b/public/app/features/alerting/unified/components/alert-groups/AlertDetails.tsx @@ -59,7 +59,7 @@ export const AlertDetails = ({ alert, alertManagerSourceName }: AmNotificationsA )} {isSeeSourceButtonEnabled && alert.generatorURL && ( - See source + {isGrafanaSource ? 'See alert rule' : 'See source'} )} diff --git a/public/app/features/alerting/unified/components/alert-groups/AlertGroupAlertsTable.tsx b/public/app/features/alerting/unified/components/alert-groups/AlertGroupAlertsTable.tsx index 93404167dae..75c371441b1 100644 --- a/public/app/features/alerting/unified/components/alert-groups/AlertGroupAlertsTable.tsx +++ b/public/app/features/alerting/unified/components/alert-groups/AlertGroupAlertsTable.tsx @@ -27,7 +27,7 @@ export const AlertGroupAlertsTable = ({ alerts, alertManagerSourceName }: Props) (): AlertGroupAlertsTableColumnProps[] => [ { id: 'state', - label: 'State', + label: 'Notification state', // eslint-disable-next-line react/display-name renderCell: ({ data: alert }) => ( <> @@ -45,7 +45,7 @@ export const AlertGroupAlertsTable = ({ alerts, alertManagerSourceName }: Props) }, { id: 'labels', - label: 'Labels', + label: 'Instance labels', // eslint-disable-next-line react/display-name renderCell: ({ data: { labels } }) => , size: 1, diff --git a/public/app/features/alerting/unified/components/alert-groups/AlertStateFilter.tsx b/public/app/features/alerting/unified/components/alert-groups/AlertStateFilter.tsx index 68bf6860bae..6363fe4d4d1 100644 --- a/public/app/features/alerting/unified/components/alert-groups/AlertStateFilter.tsx +++ b/public/app/features/alerting/unified/components/alert-groups/AlertStateFilter.tsx @@ -1,5 +1,5 @@ import { SelectableValue } from '@grafana/data'; -import { RadioButtonGroup, Label } from '@grafana/ui'; +import { RadioButtonGroup, Label, Tooltip, Icon } from '@grafana/ui'; import { AlertState } from 'app/plugins/datasource/alertmanager/types'; interface Props { @@ -17,7 +17,25 @@ export const AlertStateFilter = ({ onStateFilterChange, stateFilter }: Props) => return (
- +
+ } + > + + + ); diff --git a/public/app/features/alerting/unified/components/alert-groups/GroupBy.tsx b/public/app/features/alerting/unified/components/alert-groups/GroupBy.tsx index 130f7018b94..abec11ff9f1 100644 --- a/public/app/features/alerting/unified/components/alert-groups/GroupBy.tsx +++ b/public/app/features/alerting/unified/components/alert-groups/GroupBy.tsx @@ -1,7 +1,7 @@ import { uniq } from 'lodash'; import { SelectableValue } from '@grafana/data'; -import { Icon, Label, MultiSelect } from '@grafana/ui'; +import { Icon, Label, MultiSelect, Tooltip } from '@grafana/ui'; import { AlertmanagerGroup } from 'app/plugins/datasource/alertmanager/types'; import { isPrivateLabelKey } from '../../utils/labels'; @@ -22,7 +22,19 @@ export const GroupBy = ({ groups, groupBy, onGroupingChange }: Props) => { return (
- +
+ } + > + + +