Compare commits

...

8 Commits

Author SHA1 Message Date
chenjinsong
2c70330695 fix: 修复双向链路配置下,链路下钻后id不对的问题 2024-06-18 18:15:23 +08:00
陈劲松
04baa432e2 Merge branch 'cherry-pick-d82e69b8' into 'dev-24.04-alydemo'
CN-1669 fix: 去除链路界面多余的npm接口请求。

See merge request cyber-narrator/cn-ui!80
2024-06-18 06:28:58 +00:00
刘洪洪
068230b159 CN-1669 fix: 去除链路界面多余的npm接口请求。
(cherry picked from commit d82e69b8f4)
2024-06-18 06:28:52 +00:00
陈劲松
04032496ad Merge branch 'cherry-pick-77886f54' into 'dev-24.04-alydemo'
CN-1669 fix: 1、修复超时登录url编码异常导致的界面报错问题;2、去除链路界面多余的npm接口请求。

See merge request cyber-narrator/cn-ui!78
2024-06-18 02:42:09 +00:00
刘洪洪
d3f2d58e1a CN-1669 fix: 1、修复超时登录url编码异常导致的界面报错问题;2、去除链路界面多余的npm接口请求。
(cherry picked from commit 77886f54c2)
2024-06-18 02:42:02 +00:00
chenjinsong
1a8f983585 fix: 修复链路下钻后第一个图漏加filter条件的问题 2024-06-17 16:32:51 +08:00
chenjinsong
ee393e331f fix: 修复链路第二个block悬浮框主题色错误问题 2024-06-16 17:03:06 +08:00
chenjinsong
1d2a2279c6 fix: 实体总量用假数据显示 2024-06-16 15:56:24 +08:00
5 changed files with 41 additions and 14 deletions

View File

@@ -466,6 +466,15 @@ export default {
},
setup () {
const { query } = useRoute()
const newQuery = query
// 重刷界面后url里参数带空格的部分会被转为+,此处将+再转为空格。后续观察是否存在原本参数带+被误转的
Object.keys(newQuery).forEach(item => {
if (newQuery[item] && newQuery[item].indexOf('+') > -1) {
newQuery[item] = newQuery[item].replaceAll('+', ' ')
}
})
const newUrl = urlParamsHandler(window.location.href, query, newQuery)
overwriteUrl(newUrl)
// 获取url携带的range、startTime、endTime
const rangeParam = query.range
const startTimeParam = query.startTime

View File

@@ -64,6 +64,7 @@
<div class="block-list__list" v-show="!nextHopNoData" v-else>
<el-popover
placement="bottom"
effect="dark"
trigger="hover"
popper-class="link-block__popper"
v-for="(item, index) in nextHopData"
@@ -236,12 +237,26 @@ export default {
}
})
this.linkNoData = data.length === 0
data.forEach(item => {
item.totalBitsRate = item.outBitsRate + item.inBitsRate
linkConfig.filter(info => info.interfaceName === item.interfaceName).forEach(info => {
item.linkId = info.linkId
if (!isTwoWay) {
data.forEach(item => {
item.totalBitsRate = item.outBitsRate + item.inBitsRate
linkConfig.filter(info => info.interfaceName === item.interfaceName).forEach(info => {
item.linkId = info.linkId
})
})
})
} else {
data.forEach(item => {
item.totalBitsRate = item.outBitsRate + item.inBitsRate
item.isTwoWay = true
linkConfig.filter(info => info.interfaceName === item.interfaceName).forEach(info => {
if (info.direction === 0) {
item.outLinkId = info.linkId
} else if (info.direction === 1) {
item.inLinkId = info.linkId
}
})
})
}
const sorted = data.sort((a, b) => b.totalBitsRate - a.totalBitsRate)
const linkColors = colorGradientCalculation(this.gradientColor[0], this.gradientColor[1], sorted.map(s => s.totalBitsRate))
@@ -383,7 +398,9 @@ export default {
return width
},
drillLinkId (item) {
const queryCondition = `out_link_id = ${item.linkId} or in_link_id = ${item.linkId}`
const queryCondition = item.isTwoWay
? `out_link_id = ${item.outLinkId} or in_link_id = ${item.inLinkId}`
: `out_link_id = ${item.linkId} or in_link_id = ${item.linkId}`
beforeRouterPush()
this.$router.push({
query: {

View File

@@ -161,6 +161,7 @@ export default {
if (condition.length > 1) {
params.outParam = condition.find(c => c.indexOf('out_link_id') > -1 || c.indexOf('out_link_direction') > -1)
params.inParam = condition.find(c => c.indexOf('in_link_id') > -1 || c.indexOf('in_link_direction') > -1)
params.q = this.queryCondition
}
}
this.loading = true

View File

@@ -25,15 +25,15 @@
</div>
<div class="link-traffic-list-center">
<div class="link-traffic-list-center-label">{{$t('networkAppPerformance.tcpConnectionEstablishLatency')}}</div>
<div class="link-traffic-list-center-value" test-id="line-tcp">{{valueToRangeValue(Math.floor(linkTrafficListData.establishLatencyMs), unitTypes.time).join('')}}</div>
<div class="link-traffic-list-center-value" test-id="line-tcp">{{valueToRangeValue(linkTrafficListData.establishLatencyMs === null ? null : Math.floor(linkTrafficListData.establishLatencyMs), unitTypes.time).join('')}}</div>
</div>
<div class="link-traffic-list-center">
<div class="link-traffic-list-center-label">{{$t('networkAppPerformance.httpResponse')}}</div>
<div class="link-traffic-list-center-value" test-id="line-http">{{valueToRangeValue(Math.floor(linkTrafficListData.httpResponseLatency), unitTypes.time).join('')}}</div>
<div class="link-traffic-list-center-value" test-id="line-http">{{valueToRangeValue(linkTrafficListData.httpResponseLatency === null ? null : Math.floor(linkTrafficListData.httpResponseLatency), unitTypes.time).join('')}}</div>
</div>
<div class="link-traffic-list-center">
<div class="link-traffic-list-center-label">{{$t('networkAppPerformance.sslResponseLatency')}}</div>
<div class="link-traffic-list-center-value" test-id="line-ssl">{{valueToRangeValue(Math.floor(linkTrafficListData.sslConLatency), unitTypes.time).join('')}}</div>
<div class="link-traffic-list-center-value" test-id="line-ssl">{{valueToRangeValue(linkTrafficListData.sslConLatency === null ? null : Math.floor(linkTrafficListData.sslConLatency), unitTypes.time).join('')}}</div>
</div>
<div class="link-traffic-list-center">
<div class="link-traffic-list-center-label">{{$t('networkAppPerformance.packetLoss')}}</div>
@@ -126,9 +126,9 @@ export default {
if (this.queryCondition) {
const condition = this.queryCondition.split(' or ')
if (condition.length > 1) {
// params.outParam = true
params.outParam = condition.find(c => c.indexOf('out_link_id') > -1 || c.indexOf('out_link_direction') > -1)
params.inParam = condition.find(c => c.indexOf('in_link_id') > -1 || c.indexOf('in_link_direction') > -1)
params.q = this.queryCondition
let bandwidthAll = 0
let inLinkId = null
let outLinkId = null

View File

@@ -728,10 +728,10 @@ export default {
axios.get(api.entity.entityList.entityTotal).then(response => {
if (response.status === 200) {
this.entityDomainTotal = response.data.data.domainCount
this.entityIpTotal = response.data.data.ipCount
this.entityAppTotal = response.data.data.appCount
this.entitySubscriberTotal = response.data.data.subscriberCount
this.entityDomainTotal = 1032544 // response.data.data.domainCount
this.entityIpTotal = 1900804 // response.data.data.ipCount
this.entityAppTotal = 837 // response.data.data.appCount
this.entitySubscriberTotal = 367 // response.data.data.subscriberCount
}
}).catch((e) => {
this.$message.error(e.response.data.message)