diff --git a/src/assets/css/components/index.scss b/src/assets/css/components/index.scss index 103d3aa6..87fcef18 100644 --- a/src/assets/css/components/index.scss +++ b/src/assets/css/components/index.scss @@ -60,4 +60,6 @@ @import './views/charts2/npmEventsByType'; @import './views/charts2/npmRecentEvents'; @import './views/charts2/npmAppEventTable'; +@import './views/charts2/npmRelatedSessions'; +@import './views/charts2/npmTrafficLine'; //@import '../chart'; diff --git a/src/assets/css/components/views/charts2/npmRecentEvents.scss b/src/assets/css/components/views/charts2/npmRecentEvents.scss index fae8d737..04a287b6 100644 --- a/src/assets/css/components/views/charts2/npmRecentEvents.scss +++ b/src/assets/css/components/views/charts2/npmRecentEvents.scss @@ -26,6 +26,20 @@ tr td { padding: 7.5px 0; } + .el-table__empty-block .el-table__empty-text { + line-height: 25px; + .table-no-data { + .icon { + width: 30px; + height: 30px; + } + .table-no-data__title { + font-size: 14px; + color: #575757; + font-weight: 400; + } + } + } } } .data-recent-table { diff --git a/src/assets/css/components/views/charts2/npmRelatedSessions.scss b/src/assets/css/components/views/charts2/npmRelatedSessions.scss new file mode 100644 index 00000000..970bb896 --- /dev/null +++ b/src/assets/css/components/views/charts2/npmRelatedSessions.scss @@ -0,0 +1,86 @@ +.npm-sessions { + height: 100%; + width: 100%; + .npm-sessions-title { + font-size: 14px; + color: #353636; + font-weight: 500; + } + .npm-sessions-div { + display: flex; + margin: 10px 0 10px 0; + width: 100%; + height: 12px; + .npm-sessions-div-red { + height: 100%; + background: #E26154; + border: 1px solid #E26154; + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; + border-left: none; + } + .npm-sessions-div-green { + height: 100%; + background: #7E9F54; + border: 1px solid #7E9F54; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; + border-right: none; + } + } + + .npm-sessions-body { + display: flex; + justify-content: space-between; + .npm-sessions-body-left { + display: flex; + .npm-sessions-as-clients.right { + margin-right: 45px; + } + .npm-sessions-as-clients { + display: flex; + flex-direction: column; + align-items: center; + .npm-sessions-as-client { + display: flex; + align-items: center; + .npm-sessions-as-client-i18n { + ont-size: 12px; + color: #717171; + font-weight: 400; + } + .npm-sessions-as-client-percent { + font-size: 18px; + color: #353636; + font-weight: 700; + } + .npm-sessions-as-client-green,.npm-sessions-as-client-red { + width: 8px; + height: 8px; + border-radius: 50%; + } + .npm-sessions-as-client-green { + background: green; + } + .npm-sessions-as-client-red { + background: red; + } + } + } + } + .npm-sessions-body-right { + text-align: right; + .npm-sessions-Progress-number { + font-size: 14px; + color: #353636; + font-weight: 700; + } + .npm-sessions-Progress-unit { + font-size: 12px; + color: #717171; + font-weight: 400; + } + } + + } +} diff --git a/src/assets/css/components/views/charts2/npmTrafficLine.scss b/src/assets/css/components/views/charts2/npmTrafficLine.scss new file mode 100644 index 00000000..2d07ee86 --- /dev/null +++ b/src/assets/css/components/views/charts2/npmTrafficLine.scss @@ -0,0 +1,32 @@ +.npm-traffic-line { + height: 100%; + width: 100%; + .npm-traffic-line-title { + font-size: 14px; + color: #353636; + font-weight: 600; + height: 32px; + } + .npm-traffic-line-body { + border: 1px solid #E2E5EC; + border-radius: 4px; + height: calc(100% - 32px); + width: 100%; + .chart-drawing { + height: 100%; + width: 100%; + .echarts-tooltip.echarts-tooltip-dark { + .cn-chart-tooltip { + display: flex; + justify-content: space-between; + .cn-chart-tooltip-value.cn-chart-tooltip__color { + font-size: 12px; + color: #353636; + line-height: 21px; + font-weight: 600; + } + } + } + } + } +} diff --git a/src/utils/api.js b/src/utils/api.js index b49de665..cec8de27 100644 --- a/src/utils/api.js +++ b/src/utils/api.js @@ -158,7 +158,11 @@ export const api = { appHttpResponseDelay: '/interface/application/performance/overview/appHttpResponseDelay', appSslConDelay: '/interface/application/performance/overview/appSslConDelay', appTcpLostlenPercent: '/interface/application/performance/overview/appTcpLostlenPercent', - appPacketRetransPercent: '/interface/application/performance/overview/appPacketRetransPercent' + appPacketRetransPercent: '/interface/application/performance/overview/appPacketRetransPercent', + // 各维度下钻会话统计 + relatedSessions: '/interface/application/performance/relatedSessions', + // 各维度下钻流量曲线图 + trafficGraph: '/interface/application/performance/overview/drilldown/drilldown/dimension/trafficGraph' }, location: { // 折线图 @@ -167,7 +171,7 @@ export const api = { httpResponseLatency: '/interface/application/performance/location/httpResponseLatency', sslHandshakeLatency: '/interface/application/performance/location/sslHandshakeLatency', packetsLoss: '/interface/application/performance/location/packetsLoss', - packetsRetrains: '/interface/application/performance/location/packetsRetrains', + packetsRetrains: '/interface/application/performance/location/packetsRetrains' }, events: { list: '/interface/overview/event/list', diff --git a/src/views/charts/charts/tools.js b/src/views/charts/charts/tools.js index b8a15ea0..3626edcf 100644 --- a/src/views/charts/charts/tools.js +++ b/src/views/charts/charts/tools.js @@ -484,3 +484,27 @@ export function stackedLineTooltipFormatter (params) { str += '' return str } +export function trafficLineTooltipFormatter (params) { + let str = '