Skip to content

Commit daf26b9

Browse files
[ML] Add minor refresh button to DFA and AD Job Messages tabs (#67750)
* [ML] Add minor refresh button to DFA and AD Job Messages tabs * [ML] Update refresh logic for DFA [ML] Update refresh logic for DFA * [ML] Update fetchMessages callback Co-authored-by: Elastic Machine <[email protected]>
1 parent f31330a commit daf26b9

File tree

3 files changed

+39
-10
lines changed

3 files changed

+39
-10
lines changed

x-pack/plugins/ml/public/application/components/job_messages/job_messages.tsx

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
import React, { FC } from 'react';
88

9-
import { EuiSpacer, EuiInMemoryTable } from '@elastic/eui';
9+
import { EuiSpacer, EuiInMemoryTable, EuiButtonIcon, EuiToolTip } from '@elastic/eui';
1010
// @ts-ignore
1111
import { formatDate } from '@elastic/eui/lib/services/format';
1212
import { i18n } from '@kbn/i18n';
@@ -21,16 +21,33 @@ interface JobMessagesProps {
2121
messages: JobMessage[];
2222
loading: boolean;
2323
error: string;
24+
refreshMessage?: React.MouseEventHandler<HTMLButtonElement>;
2425
}
2526

2627
/**
2728
* Component for rendering job messages for anomaly detection
2829
* and data frame analytics jobs.
2930
*/
30-
export const JobMessages: FC<JobMessagesProps> = ({ messages, loading, error }) => {
31+
export const JobMessages: FC<JobMessagesProps> = ({ messages, loading, error, refreshMessage }) => {
3132
const columns = [
3233
{
33-
name: '',
34+
name: refreshMessage ? (
35+
<EuiToolTip
36+
content={i18n.translate('xpack.ml.jobMessages.refreshLabel', {
37+
defaultMessage: 'Refresh',
38+
})}
39+
>
40+
<EuiButtonIcon
41+
onClick={refreshMessage}
42+
iconType="refresh"
43+
aria-label={i18n.translate('xpack.ml.jobMessages.refreshAriaLabel', {
44+
defaultMessage: 'Refresh',
45+
})}
46+
/>
47+
</EuiToolTip>
48+
) : (
49+
''
50+
),
3451
render: (message: JobMessage) => <JobIcon message={message} />,
3552
width: `${theme.euiSizeL}`,
3653
},

x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/analytics_list/expanded_row_messages_pane.tsx

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ export const ExpandedRowMessagesPane: FC<Props> = ({ analyticsId }) => {
2222

2323
const getMessagesFactory = () => {
2424
let concurrentLoads = 0;
25-
2625
return async function getMessages() {
2726
try {
2827
concurrentLoads++;
@@ -52,8 +51,14 @@ export const ExpandedRowMessagesPane: FC<Props> = ({ analyticsId }) => {
5251
}
5352
};
5453
};
55-
5654
useRefreshAnalyticsList({ onRefresh: getMessagesFactory() });
5755

58-
return <JobMessages messages={messages} loading={isLoading} error={errorMessage} />;
56+
return (
57+
<JobMessages
58+
messages={messages}
59+
loading={isLoading}
60+
error={errorMessage}
61+
refreshMessage={getMessagesFactory()}
62+
/>
63+
);
5964
};

x-pack/plugins/ml/public/application/jobs/jobs_list/components/job_details/job_messages_pane.tsx

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,10 @@
44
* you may not use this file except in compliance with the Elastic License.
55
*/
66

7-
import React, { FC, useEffect, useState } from 'react';
8-
7+
import React, { FC, useCallback, useEffect, useState } from 'react';
98
import { ml } from '../../../../services/ml_api_service';
109
import { JobMessages } from '../../../../components/job_messages';
1110
import { JobMessage } from '../../../../../../common/types/audit_message';
12-
1311
interface JobMessagesPaneProps {
1412
jobId: string;
1513
}
@@ -32,9 +30,18 @@ export const JobMessagesPane: FC<JobMessagesPaneProps> = ({ jobId }) => {
3230
}
3331
};
3432

33+
const refreshMessage = useCallback(fetchMessages, [jobId]);
34+
3535
useEffect(() => {
3636
fetchMessages();
3737
}, []);
3838

39-
return <JobMessages messages={messages} loading={isLoading} error={errorMessage} />;
39+
return (
40+
<JobMessages
41+
refreshMessage={refreshMessage}
42+
messages={messages}
43+
loading={isLoading}
44+
error={errorMessage}
45+
/>
46+
);
4047
};

0 commit comments

Comments
 (0)