Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Monitoring] Monitoring eui #27064

Merged
merged 92 commits into from
Dec 13, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
5253ecb
[Monitoring] Cluster alerts table to EUI (#26031)
chrisronline Nov 26, 2018
23313a4
Merge remote-tracking branch 'elastic/master' into monitoring_eui
chrisronline Nov 27, 2018
6374271
Merge remote-tracking branch 'elastic/master' into monitoring_eui
chrisronline Nov 30, 2018
48a425c
Merge branch 'master' of github.com:elastic/kibana into monitoring_eui
mattapperson Dec 6, 2018
481dd13
[Monitoring] Elasticsearch monitoring to EUI (#26217)
chrisronline Dec 12, 2018
37cc89f
Update token API calls in elaticsearch.js (#26650)
epixa Dec 6, 2018
1cc57e8
make selection border 1px (#26739)
Dec 6, 2018
b89da88
Reporting phantom and chromium tests should run in parallel. (#26566)
njd5475 Dec 6, 2018
1866d57
[es-management/watcher] implement k7Breadcrumbs (#26719)
Dec 6, 2018
02cd345
[timelion] implement k7Breadcrumbs (#26729)
Dec 6, 2018
2078beb
[es-management] implement k7Breadcrumbs (#26711)
Dec 6, 2018
90e88b2
Fixes i18n issue in space nav selector (#26742)
legrego Dec 6, 2018
72f0c7b
[Docs] Add beta flag to central management docs (#26558)
dedemorton Dec 6, 2018
cab577b
Feature/translate ml-jobs-jobs_list(part_1) (#25466)
Nox911 Dec 7, 2018
a1a1b52
Corrected wrong calls from .on to .off (#24575)
szydan Dec 7, 2018
5ecf974
Fix saved objects client _processBatchQueue function to handle errors…
mikecote Dec 7, 2018
ce6305e
chore(.gitignore): ignore sublime workspace files (#26516)
Bamieh Dec 7, 2018
d9a30e1
Map inspector requests by id so single requests can be reset at a tim…
nreese Dec 7, 2018
9240b8d
[ML] Implement k7 breadcrumbs for ML routes (#26774)
peteharverson Dec 7, 2018
e32c203
[Reporting] Re-enabled Chromium API tests (#26789)
tsullivan Dec 7, 2018
669fa64
Fix Elasticsearch typo on connection error screen (#26815)
Dec 7, 2018
3e53313
Reporting/reveal document bytes (#26667)
joelgriffith Dec 7, 2018
34a91e6
Enable heartbeat telemetry (#25886)
andrewvc Dec 7, 2018
52719b7
Change 'Disenroll' text to be consistent with menu option 'Unenroll'.…
justinkambic Dec 7, 2018
f719089
Upgrading sshpk (#26834)
kobelb Dec 7, 2018
975c5ae
Re-enable the chromium functional tests (#26822)
joelgriffith Dec 7, 2018
da114df
Logging when max-bytes is larger than what's set in ES (#26482)
joelgriffith Dec 7, 2018
cee968e
[BeatsCM] Cleanup and refactor (#26636)
mattapperson Dec 8, 2018
5764dec
[APM] Transaction group agg size config (#26683)
ogupte Dec 8, 2018
311a8bf
[APM] fixes #26784 by updateing import from a default to a named impo…
ogupte Dec 8, 2018
5f9f8d9
allow disabling gpu in tests (#26684)
ppisljar Dec 10, 2018
ab913eb
skipping failing tests (#26877)
ppisljar Dec 10, 2018
6316dd2
Feature/translate ml - jobs(part 2) (#25528)
Nox911 Dec 10, 2018
34f721b
use canvas pipeline in visualize (#25996)
ppisljar Dec 10, 2018
f6c306b
Upgrade to NodeJS 10 (#25157)
mistic Dec 10, 2018
88e52af
fixing a11y errors so we can add a11y rules for tslint (#26902)
bhavyarm Dec 10, 2018
f8761c5
[DOCS] Deprecate X-Pack-centric watcher endpoints (#26899)
lcawl Dec 10, 2018
5d1e791
Index lifecycle (#25553)
bmcconaghy Dec 10, 2018
17bc659
[Telemetry] Pull local Kibana usage stats (#26496)
tsullivan Dec 10, 2018
afce725
add missing apm-server response error monitor (#26570)
graphaelli Dec 10, 2018
53c3d5a
[DOCS] Deprecate /_xpack/security in favor of /_security (#26897)
lcawl Dec 10, 2018
b63926e
fix ems hotlink (#26868)
thomasneirynck Dec 10, 2018
14328e8
Initialize authorization mode for reporting jobs (#26762)
legrego Dec 10, 2018
2e485e5
wrap non error in a try/catch (#26898)
mattapperson Dec 10, 2018
5051538
fix(NA): change kbn pm webpack config to generate dist files in mode=…
mistic Dec 11, 2018
d10d9be
Fail out of auth flow on first provider failure (#26648)
epixa Dec 11, 2018
e4a0962
fixing a11y errors so we can add a11y rules to tslint (#26895)
bhavyarm Dec 11, 2018
bcabd91
EUI 5.6.0 (#26839)
snide Dec 11, 2018
6121e65
fixing interpreter socket error (#26870)
ppisljar Dec 11, 2018
59a3f83
fixes split chart with no data (#26872)
ppisljar Dec 11, 2018
33f04ff
fixing tooltips for line chart (#26881)
ppisljar Dec 11, 2018
f79dec0
Make space selector a button (#26889)
timroes Dec 11, 2018
4d98195
[ML] Adds isRequired where applicable to timeseries_chart props. (#26…
walterra Dec 11, 2018
8f68564
Translate share (#26802)
Nox911 Dec 11, 2018
66f1b5e
Only show change password form when a password change is possible (#2…
legrego Dec 11, 2018
fb4b925
[Beats CM] Add basic license type (#26935)
mattapperson Dec 11, 2018
5f4da6d
Improve wording when creating a space (#26915)
legrego Dec 11, 2018
439b736
fixing issue with multiple execution in console (#26933)
bmcconaghy Dec 11, 2018
8131ed2
fixing a11y error (#26906)
bhavyarm Dec 11, 2018
0ca00dc
[i18n] Translate ML - File Datavisualizer (Part 1) (#25641)
tibmt Dec 11, 2018
866bc13
Use new _graph endpoints (#26956)
timroes Dec 11, 2018
8cd6226
[ML] Do not pass datafeed query to Discover in custom URL (#26957)
peteharverson Dec 11, 2018
f094756
quick ILM fixes (#26966)
bmcconaghy Dec 11, 2018
706993d
Fixing a11y errors in querybar and suggestion_component (#26892)
bhavyarm Dec 11, 2018
077bea9
do not pass 'sortOrder' to EuiContextMenuItem in share context menu (…
nreese Dec 11, 2018
77862b5
Feat: Workpad Templates (#23966)
cqliu1 Dec 11, 2018
b8e3d55
fix lint errors (#26985)
jbudz Dec 11, 2018
b785d6a
Fix: Support columns with dots (#26659)
w33ble Dec 11, 2018
980b82b
upgrade resize-observer-polyfill version (#26990)
mw-ding Dec 11, 2018
04e1aa4
Fixing issues with the url.search being null in Node 10 (#26992)
kobelb Dec 12, 2018
eaab682
Hide logs from deleteAll on task: clean client modules into dll (#26884)
mistic Dec 12, 2018
65824c3
[APM] Fix for library frames not collapsing (#26827)
ogupte Dec 12, 2018
3ce9b6d
[i18n] Translate untranslated labels (#26416)
Nox911 Dec 12, 2018
9ce4417
[ML] Fix word break in anomalies and jobs tables (#26978)
peteharverson Dec 12, 2018
ffca5f5
fixes other bucket request (#26874)
ppisljar Dec 12, 2018
47bca12
[I18n] Register translations before plugins init (#26078)
LeanidShutau Dec 12, 2018
c09b098
[Infra UI] Fix styling after breaking EUI changes (#27021)
weltenwort Dec 12, 2018
b079601
[i18n] Optimize translation labels for Roles page (#26945)
maryia-lapata Dec 12, 2018
9bae81d
Update APM readme
sorenlouv Dec 12, 2018
c6a6d4b
[APM] Convert errors API to typescript (#26801)
sorenlouv Dec 12, 2018
5c42a22
[I18n] Allow i18n filter usage outside of interpolation expressions …
LeanidShutau Dec 12, 2018
d9ecd67
Introduce `recordOf` schema. Remove redundant declarations. (#26952)
azasypkin Dec 12, 2018
7dfa1c3
[Infra UI] Fix graphql type generation after package upgrades (#26991)
weltenwort Dec 12, 2018
d71d97b
[Monitoring] APM monitoring to EUI (#26344)
chrisronline Dec 12, 2018
806e24c
[Monitoring] Beats monitoring to EUI (#26287)
chrisronline Dec 12, 2018
f61f7a1
[Monitoring] Kibana monitoring to EUI (#26361)
chrisronline Dec 12, 2018
e503e2f
[Monitoring] Logstash monitoring to EUI (#26298)
chrisronline Dec 12, 2018
d805543
Merge in master
chrisronline Dec 12, 2018
037d9d3
PR feedback
chrisronline Dec 13, 2018
b0511fa
Merge remote-tracking branch 'elastic/master' into monitoring_eui
chrisronline Dec 13, 2018
81bb4b0
Merge remote-tracking branch 'elastic/master' into monitoring_eui
chrisronline Dec 13, 2018
9512483
Merge remote-tracking branch 'elastic/master' into monitoring_eui
chrisronline Dec 13, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions x-pack/plugins/monitoring/common/constants.js
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,8 @@ export const NORMALIZED_DERIVATIVE_UNIT = '1s';
* Values for column sorting in table options
* @type {number} 1 or -1
*/
export const EUI_SORT_ASCENDING = 'asc';
export const EUI_SORT_DESCENDING = 'desc';
export const SORT_ASCENDING = 1;
export const SORT_DESCENDING = -1;

Expand Down
133 changes: 133 additions & 0 deletions x-pack/plugins/monitoring/public/components/alerts/alerts.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
/*
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
* or more contributor license agreements. Licensed under the Elastic License;
* you may not use this file except in compliance with the Elastic License.
*/

import React from 'react';
import { capitalize } from 'lodash';
import { formatDateTimeLocal } from '../../../common/formatting';
import { formatTimestampToDuration } from '../../../common';
import { CALCULATE_DURATION_SINCE, EUI_SORT_DESCENDING } from '../../../common/constants';
import { mapSeverity } from './map_severity';
import { Tooltip } from 'plugins/monitoring/components/tooltip';
import { FormattedAlert } from 'plugins/monitoring/components/alerts/formatted_alert';
import { EuiMonitoringTable } from 'plugins/monitoring/components/table';
import { EuiHealth, EuiIcon } from '@elastic/eui';
import { injectI18n } from '@kbn/i18n/react';

const linkToCategories = {
'elasticsearch/nodes': 'Elasticsearch Nodes',
'elasticsearch/indices': 'Elasticsearch Indices',
'kibana/instances': 'Kibana Instances',
'logstash/instances': 'Logstash Nodes',
};
const getColumns = (kbnUrl, scope) => ([
{
name: 'Status',
field: 'metadata.severity',
sortable: true,
render: severity => {
const severityIcon = mapSeverity(severity);

return (
<Tooltip text={severityIcon.title} placement="bottom" trigger="hover">
<EuiHealth color={severityIcon.color} data-test-subj="alertIcon" aria-label={severityIcon.title}>
{ capitalize(severityIcon.value) }
</EuiHealth>
</Tooltip>
);
}
},
{
name: 'Resolved',
field: 'resolved_timestamp',
sortable: true,
render: (resolvedTimestamp) => {
const resolution = {
icon: null,
text: 'Not Resolved'
};

if (resolvedTimestamp) {
resolution.text = `${formatTimestampToDuration(resolvedTimestamp, CALCULATE_DURATION_SINCE)} ago`;
} else {
resolution.icon = <EuiIcon type="alert" size="m" aria-label="Not Resolved" />;
}

return (
<span>
{ resolution.icon } { resolution.text }
</span>
);
},
},
{
name: 'Message',
field: 'message',
sortable: true,
render: (message, alert) => (
<FormattedAlert
prefix={alert.prefix}
suffix={alert.suffix}
message={message}
metadata={alert.metadata}
changeUrl={target => {
scope.$evalAsync(() => {
kbnUrl.changePath(target);
});
}}
/>
)
},
{
name: 'Category',
field: 'metadata.link',
sortable: true,
render: link => linkToCategories[link] ? linkToCategories[link] : 'General'
},
{
name: 'Last Checked',
field: 'update_timestamp',
sortable: true,
render: timestamp => formatDateTimeLocal(timestamp)
},
{
name: 'Triggered',
field: 'timestamp',
sortable: true,
render: timestamp => formatTimestampToDuration(timestamp, CALCULATE_DURATION_SINCE) + ' ago'
},
]);

const AlertsUI = ({ alerts, angular, sorting, pagination, onTableChange, intl }) => {
return (
<EuiMonitoringTable
className="alertsTable"
rows={alerts}
columns={getColumns(angular.kbnUrl, angular.scope)}
sorting={{
...sorting,
sort: {
...sorting.sort,
field: 'metadata.severity',
direction: EUI_SORT_DESCENDING,
}
}}
pagination={pagination}
search={{
box: {
incremental: true,
placeholder: intl.formatMessage({
id: 'xpack.monitoring.alerts.filterAlertsPlaceholder',
defaultMessage: 'Filter Alerts…'
})

},
}}
onTableChange={onTableChange}
/>
);
};

export const Alerts = injectI18n(AlertsUI);
7 changes: 7 additions & 0 deletions x-pack/plugins/monitoring/public/components/alerts/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/*
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
* or more contributor license agreements. Licensed under the Elastic License;
* you may not use this file except in compliance with the Elastic License.
*/

export { Alerts } from './alerts';
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ import {
EuiSpacer,
EuiPage,
EuiPageBody,
EuiFlexGroup
EuiFlexGroup,
EuiPageContent
} from '@elastic/eui';
import { Status } from './status';

Expand Down Expand Up @@ -46,13 +47,15 @@ export function ApmServerInstance({ summary, metrics, ...props }) {
));

return (
<EuiPage style={{ backgroundColor: 'white' }}>
<EuiPage>
<EuiPageBody>
<Status stats={summary}/>
<EuiSpacer size="s"/>
<EuiFlexGroup wrap>
{charts}
</EuiFlexGroup>
<EuiPageContent>
<Status stats={summary}/>
<EuiSpacer size="s"/>
<EuiFlexGroup wrap>
{charts}
</EuiFlexGroup>
</EuiPageContent>
</EuiPageBody>
</EuiPage>
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,31 +29,31 @@ function StatusUI({ stats, intl }) {
defaultMessage: 'Name',
}),
value: name,
dataTestSubj: 'name'
'data-test-subj': 'name'
},
{
label: intl.formatMessage({
id: 'xpack.monitoring.apm.instance.status.outputLabel',
defaultMessage: 'Output',
}),
value: output,
dataTestSubj: 'output'
'data-test-subj': 'output'
},
{
label: intl.formatMessage({
id: 'xpack.monitoring.apm.instance.status.versionLabel',
defaultMessage: 'Version',
}),
value: version,
dataTestSubj: 'version'
'data-test-subj': 'version'
},
{
label: intl.formatMessage({
id: 'xpack.monitoring.apm.instance.status.uptimeLabel',
defaultMessage: 'Uptime',
}),
value: formatMetric(uptime, 'time_since'),
dataTestSubj: 'uptime'
'data-test-subj': 'uptime'
},
{
label: intl.formatMessage({
Expand All @@ -65,7 +65,7 @@ function StatusUI({ stats, intl }) {
defaultMessage: '{timeOfLastEvent} ago' }, {
timeOfLastEvent: formatTimestampToDuration(+moment(timeOfLastEvent), CALCULATE_DURATION_SINCE)
}),
dataTestSubj: 'timeOfLastEvent',
'data-test-subj': 'timeOfLastEvent',
}
];

Expand Down
Loading