@@ -11,6 +11,7 @@ import { dataSourceFilterFn, getSeverityColor, getSeverityBadgeText, getTruncate
11
11
import { renderTime } from "../../pages/Dashboard/utils/tableUtils" ;
12
12
import { ALERTS_NAV_ID , MONITORS_NAV_ID } from "../../../utils/constants" ;
13
13
import { APP_PATH , DEFAULT_EMPTY_DATA } from "../../utils/constants" ;
14
+ import { dataSourceEnabled , getURL } from "../../pages/utils/helpers.js" ;
14
15
15
16
export interface DataSourceAlertsCardProps {
16
17
getDataSourceMenu ?: DataSourceManagementPluginSetup [ 'ui' ] [ 'getDataSourceMenu' ] ;
@@ -31,7 +32,7 @@ export const DataSourceAlertsCard: React.FC<DataSourceAlertsCardProps> = ({ get
31
32
query : {
32
33
size : 25 ,
33
34
sortField : 'start_time' ,
34
- dataSourceId : dataSource ?. id || '' ,
35
+ ... ( dataSourceEnabled ( ) && { dataSourceId : dataSource ?. id || '' } ) ,
35
36
sortDirection : 'desc'
36
37
}
37
38
} ) . then ( res => {
@@ -53,14 +54,22 @@ export const DataSourceAlertsCard: React.FC<DataSourceAlertsCardProps> = ({ get
53
54
const createAlertDetailsHeader = useCallback ( ( alert ) => {
54
55
const severityColor = getSeverityColor ( alert . severity ) ;
55
56
const triggerName = alert . trigger_name ?? DEFAULT_EMPTY_DATA ;
57
+ const monitorUrl = `${ MONITORS_NAV_ID } #/monitors/${
58
+ alert . alert_source === 'workflow' ? alert . workflow_id : alert . monitor_id
59
+ } ?&type=${ alert . alert_source } `;
60
+ const url = getURL ( monitorUrl , dataSource ?. id ) ;
56
61
57
62
return (
58
63
< EuiFlexGroup gutterSize = "s" justifyContent = "spaceBetween" alignItems = "center" >
59
64
< EuiFlexItem grow = { false } >
60
65
< div >
61
66
< EuiBadge color = { severityColor ?. background } style = { { padding : '1px 4px' , color : severityColor ?. text } } > { getSeverityBadgeText ( alert . severity ) } </ EuiBadge >
62
67
63
- < span style = { { color : "#006BB4" } } className = "eui-textTruncate" > { getTruncatedText ( triggerName ) } </ span >
68
+ < EuiLink href = { url } >
69
+ < span style = { { color : '#006BB4' } } className = "eui-textTruncate" >
70
+ { getTruncatedText ( triggerName ) }
71
+ </ span >
72
+ </ EuiLink >
64
73
</ div >
65
74
</ EuiFlexItem >
66
75
< EuiFlexItem grow = { false } >
@@ -79,8 +88,8 @@ export const DataSourceAlertsCard: React.FC<DataSourceAlertsCardProps> = ({ get
79
88
< EuiFlexItem grow = { false } >
80
89
< EuiText size = "s" color = "subdued" > Monitor:</ EuiText >
81
90
</ EuiFlexItem >
82
- < EuiFlexItem grow = { false } >
83
- < EuiText size = "m" > { getTruncatedText ( monitorName ) } </ EuiText >
91
+ < EuiFlexItem grow = { false } style = { { overflow : 'hidden' , textOverflow : 'ellipsis' } } >
92
+ < EuiText size = "m" style = { { overflow : 'hidden' , textOverflow : 'ellipsis' } } > { monitorName } </ EuiText >
84
93
</ EuiFlexItem >
85
94
</ EuiFlexGroup >
86
95
< EuiHorizontalRule margin = "xs" />
@@ -96,7 +105,7 @@ export const DataSourceAlertsCard: React.FC<DataSourceAlertsCardProps> = ({ get
96
105
} ) ;
97
106
98
107
return (
99
- < EuiPanel hasBorder = { false } hasShadow = { false } >
108
+ < EuiPanel hasBorder = { false } hasShadow = { false } style = { { overflow : 'hidden' } } >
100
109
< EuiFlexGroup style = { { height : '100%' } } direction = "column" justifyContent = "spaceBetween" alignItems = "flexStart" gutterSize = "xs" >
101
110
< EuiFlexItem grow = { false } style = { { width : '100%' , height : '90%' } } >
102
111
< EuiFlexGroup direction = "column" style = { { height : '100%' } } >
0 commit comments