2023-03-20 18:52:42 +08:00
|
|
|
|
/**
|
|
|
|
|
|
* @name: 静态数据模板
|
|
|
|
|
|
* @description: 用于存放引用到的静态数据,如表格列名称、echarts的legend名称等
|
|
|
|
|
|
* 如有使用 this 的,js文件里不识别 this,需要引入对应方法,如this.$t引入i18n,this.$route 引入route
|
|
|
|
|
|
* @author: newhome
|
|
|
|
|
|
* @date: 2023-03-16 17:26:49
|
|
|
|
|
|
*/
|
|
|
|
|
|
// 如有使用this的
|
|
|
|
|
|
import i18n from '@/i18n'
|
2023-08-18 09:32:58 +08:00
|
|
|
|
import { storageKey, unitTypes } from '@/utils/constants'
|
2023-03-20 18:52:42 +08:00
|
|
|
|
const _this = i18n.global
|
|
|
|
|
|
_this.$t = _this.t
|
|
|
|
|
|
|
|
|
|
|
|
// NpmTrafficLine折线图数据
|
|
|
|
|
|
export const dataForNpmTrafficLine = {
|
|
|
|
|
|
tabs: [
|
|
|
|
|
|
{
|
2023-10-09 16:30:11 +08:00
|
|
|
|
name: 'network.total',
|
2023-03-20 18:52:42 +08:00
|
|
|
|
show: true,
|
|
|
|
|
|
positioning: 0,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: 'number'
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
2023-10-09 16:30:11 +08:00
|
|
|
|
name: 'network.inbound',
|
2023-03-20 18:52:42 +08:00
|
|
|
|
show: true,
|
|
|
|
|
|
positioning: 1,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: 'number'
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
2023-10-09 16:30:11 +08:00
|
|
|
|
name: 'network.outbound',
|
2023-03-20 18:52:42 +08:00
|
|
|
|
show: true,
|
|
|
|
|
|
positioning: 2,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: 'number'
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
2023-10-09 16:30:11 +08:00
|
|
|
|
name: 'network.internal',
|
2023-03-20 18:52:42 +08:00
|
|
|
|
show: true,
|
|
|
|
|
|
positioning: 3,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: 'number'
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
2023-10-09 16:30:11 +08:00
|
|
|
|
name: 'network.through',
|
2023-03-20 18:52:42 +08:00
|
|
|
|
show: true,
|
|
|
|
|
|
positioning: 4,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: 'number'
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
2023-10-09 16:30:11 +08:00
|
|
|
|
name: 'network.other',
|
2023-03-20 18:52:42 +08:00
|
|
|
|
show: true,
|
|
|
|
|
|
positioning: 5,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: 'number'
|
|
|
|
|
|
}
|
|
|
|
|
|
],
|
|
|
|
|
|
npmQuantity: [
|
2023-10-09 16:30:11 +08:00
|
|
|
|
{ name: 'networkAppPerformance.tcpConnectionEstablishLatency', show: true, positioning: 0, data: [], unitType: unitTypes.time, index: 0 },
|
|
|
|
|
|
{ name: 'networkAppPerformance.httpResponse', show: true, positioning: 0, data: [], unitType: unitTypes.time, index: 1 },
|
|
|
|
|
|
{ name: 'networkAppPerformance.sslResponseLatency', show: true, positioning: 0, data: [], unitType: unitTypes.time, index: 2 },
|
|
|
|
|
|
{ name: 'networkAppPerformance.packetLoss', show: true, positioning: 0, data: [], unitType: unitTypes.percent, index: 3 },
|
|
|
|
|
|
{ name: 'overall.packetRetrans', show: true, positioning: 0, data: [], unitType: unitTypes.percent, index: 4 }
|
2023-03-20 18:52:42 +08:00
|
|
|
|
],
|
|
|
|
|
|
metricOptions: [
|
2023-09-01 10:37:10 +08:00
|
|
|
|
/* { value: 'Bits/s', label: 'Bits/s' },
|
2023-03-20 18:52:42 +08:00
|
|
|
|
{ value: 'Packets/s', label: 'Packets/s' },
|
2023-09-01 10:37:10 +08:00
|
|
|
|
{ value: 'Sessions/s', label: 'Sessions/s' }, */
|
2023-10-09 16:30:11 +08:00
|
|
|
|
{ value: 'establishLatencyMs', label: 'networkAppPerformance.tcpConnectionEstablishLatency' },
|
|
|
|
|
|
{ value: 'httpResponseLatency', label: 'networkAppPerformance.httpResponse' },
|
|
|
|
|
|
{ value: 'sslConLatency', label: 'networkAppPerformance.sslResponseLatency' },
|
|
|
|
|
|
{ value: 'tcpLostlenPercent', label: 'networkAppPerformance.packetLoss' },
|
|
|
|
|
|
{ value: 'pktRetransPercent', label: 'overall.packetRetrans' }
|
2023-03-20 18:52:42 +08:00
|
|
|
|
]
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export const dataForNetworkOverviewLine = {
|
|
|
|
|
|
options2: [
|
|
|
|
|
|
{
|
|
|
|
|
|
value: 'Average',
|
|
|
|
|
|
label: 'Average'
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
value: '95th Percentile',
|
|
|
|
|
|
label: '95th Percentile'
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
value: 'Maximum',
|
|
|
|
|
|
label: 'Maximum'
|
|
|
|
|
|
}
|
|
|
|
|
|
],
|
|
|
|
|
|
tabsTemplate: [
|
|
|
|
|
|
{
|
|
|
|
|
|
analysis: {},
|
|
|
|
|
|
name: 'network.total',
|
|
|
|
|
|
class: 'total',
|
|
|
|
|
|
show: true,
|
|
|
|
|
|
invertTab: true,
|
|
|
|
|
|
positioning: 0,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: ''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
analysis: {},
|
|
|
|
|
|
name: 'network.inbound',
|
|
|
|
|
|
class: 'inbound',
|
|
|
|
|
|
show: true,
|
|
|
|
|
|
invertTab: true,
|
|
|
|
|
|
positioning: 1,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: ''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
analysis: {},
|
|
|
|
|
|
name: 'network.outbound',
|
|
|
|
|
|
class: 'outbound',
|
|
|
|
|
|
show: true,
|
|
|
|
|
|
invertTab: true,
|
|
|
|
|
|
positioning: 2,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: ''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
analysis: {},
|
|
|
|
|
|
name: 'network.internal',
|
|
|
|
|
|
class: 'internal',
|
|
|
|
|
|
show: true,
|
|
|
|
|
|
invertTab: true,
|
|
|
|
|
|
positioning: 3,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: ''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
analysis: {},
|
|
|
|
|
|
name: 'network.through',
|
|
|
|
|
|
class: 'through',
|
|
|
|
|
|
show: true,
|
|
|
|
|
|
invertTab: true,
|
|
|
|
|
|
positioning: 4,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: ''
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
analysis: {},
|
|
|
|
|
|
name: 'network.other',
|
|
|
|
|
|
class: 'other',
|
|
|
|
|
|
show: true,
|
|
|
|
|
|
invertTab: true,
|
|
|
|
|
|
positioning: 5,
|
|
|
|
|
|
data: [],
|
|
|
|
|
|
unitType: ''
|
|
|
|
|
|
}
|
|
|
|
|
|
]
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export const dataForLinkTrafficLine = {
|
|
|
|
|
|
options: [
|
|
|
|
|
|
{
|
|
|
|
|
|
value: 'Bits/s',
|
|
|
|
|
|
label: 'Bits/s'
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
value: 'Packets/s',
|
|
|
|
|
|
label: 'Packets/s'
|
|
|
|
|
|
}
|
|
|
|
|
|
],
|
|
|
|
|
|
tabs: [
|
2023-09-21 15:42:19 +08:00
|
|
|
|
{ analysis: {}, name: 'network.total', class: 'total', label: 'total', show: true, invertTab: true, positioning: 0, data: [], unitType: '' },
|
|
|
|
|
|
{ analysis: {}, name: 'linkMonitor.ingress', class: 'ingress', label: 'in', show: true, invertTab: true, positioning: 1, data: [], unitType: '' },
|
|
|
|
|
|
{ analysis: {}, name: 'linkMonitor.egress', class: 'egress', label: 'out', show: true, invertTab: true, positioning: 2, data: [], unitType: '' }
|
2023-03-20 18:52:42 +08:00
|
|
|
|
]
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export const dataForNpmLine = {
|
|
|
|
|
|
chartOptionLineData: [
|
2023-10-09 16:30:11 +08:00
|
|
|
|
{ legend: 'network.total', index: 0, invertTab: true, show: false, color: '#749F4D' },
|
|
|
|
|
|
{ legend: 'network.inbound', index: 1, invertTab: true, show: false, color: '#98709B' },
|
|
|
|
|
|
{ legend: 'network.outbound', index: 2, invertTab: true, show: false, color: '#E5A219' }
|
2023-03-20 18:52:42 +08:00
|
|
|
|
],
|
|
|
|
|
|
npmLineColor: [
|
|
|
|
|
|
{ legend: '', color: '#749F4D' },
|
|
|
|
|
|
{ legend: '', color: '#98709B' },
|
|
|
|
|
|
{ legend: '', color: '#E5A219' }
|
|
|
|
|
|
]
|
|
|
|
|
|
}
|
2023-03-21 11:21:29 +08:00
|
|
|
|
|
|
|
|
|
|
export const dataForDnsTrafficLine = {
|
|
|
|
|
|
options1: [
|
|
|
|
|
|
{
|
|
|
|
|
|
value: 'Bits/s',
|
|
|
|
|
|
label: 'Bits/s'
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
value: 'Queries/s',
|
|
|
|
|
|
label: 'Queries/s'
|
|
|
|
|
|
}
|
|
|
|
|
|
],
|
|
|
|
|
|
options2: [
|
|
|
|
|
|
{
|
|
|
|
|
|
value: 'Average',
|
|
|
|
|
|
label: 'Average'
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
value: '95th Percentile',
|
|
|
|
|
|
label: '95th Percentile'
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
value: 'Maximum',
|
|
|
|
|
|
label: 'Maximum'
|
|
|
|
|
|
}
|
|
|
|
|
|
],
|
|
|
|
|
|
tabs: [
|
|
|
|
|
|
{ analysis: {}, name: 'network.total', class: 'total', show: true, invertTab: true, positioning: 0, data: [], unitType: '' },
|
|
|
|
|
|
{ analysis: {}, name: 'network.inbound', class: 'inbound', show: true, invertTab: true, positioning: 1, data: [], unitType: '' },
|
|
|
|
|
|
{ analysis: {}, name: 'network.outbound', class: 'outbound', show: true, invertTab: true, positioning: 2, data: [], unitType: '' }
|
|
|
|
|
|
]
|
|
|
|
|
|
}
|
2023-03-24 16:37:12 +08:00
|
|
|
|
|
|
|
|
|
|
export const dataForNpmEventsHeader = {
|
|
|
|
|
|
chartData: [
|
|
|
|
|
|
{
|
|
|
|
|
|
eventSeverity: 'critical',
|
|
|
|
|
|
count: '-',
|
|
|
|
|
|
index: 0
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
eventSeverity: 'high',
|
|
|
|
|
|
count: '-',
|
|
|
|
|
|
index: 1
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
eventSeverity: 'medium',
|
|
|
|
|
|
count: '-',
|
|
|
|
|
|
index: 2
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
eventSeverity: 'low',
|
|
|
|
|
|
count: '-',
|
|
|
|
|
|
index: 3
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
eventSeverity: 'info',
|
|
|
|
|
|
count: '-',
|
|
|
|
|
|
index: 4
|
|
|
|
|
|
}
|
|
|
|
|
|
]
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export const dataForNpmRecentEvents = {
|
|
|
|
|
|
customTableTitles: [
|
|
|
|
|
|
{ label: 'network.severity', prop: 'eventSeverity' },
|
|
|
|
|
|
{ label: 'network.entity', prop: 'eventKey' },
|
|
|
|
|
|
{ label: 'detections.eventType', prop: 'eventType' }
|
|
|
|
|
|
],
|
|
|
|
|
|
// 下钻后
|
|
|
|
|
|
customTableTitles1: [
|
|
|
|
|
|
{ label: 'network.severity', prop: 'eventSeverity' },
|
|
|
|
|
|
{ label: 'detections.eventType', prop: 'eventType' },
|
|
|
|
|
|
{ label: 'detection.list.startTime', prop: 'startTime' }
|
|
|
|
|
|
]
|
|
|
|
|
|
}
|
|
|
|
|
|
export const dataForNpmNetworkQuantity = {
|
|
|
|
|
|
npmNetworkName: [
|
|
|
|
|
|
{ name: 'networkAppPerformance.tcpConnectionEstablishLatency' },
|
|
|
|
|
|
{ name: 'networkAppPerformance.httpResponse' },
|
|
|
|
|
|
{ name: 'networkAppPerformance.sslResponseLatency' },
|
|
|
|
|
|
{ name: 'networkAppPerformance.packetLoss' },
|
|
|
|
|
|
{ name: 'overall.packetRetrans' }
|
|
|
|
|
|
]
|
|
|
|
|
|
}
|
2023-08-18 09:32:58 +08:00
|
|
|
|
export const columnList1 = [
|
2023-06-16 16:33:58 +08:00
|
|
|
|
{
|
2023-07-10 17:47:38 +08:00
|
|
|
|
name: 'ip',
|
|
|
|
|
|
type: 'string',
|
2023-07-11 15:54:42 +08:00
|
|
|
|
label: 'IP',
|
2023-07-10 17:47:38 +08:00
|
|
|
|
doc: {
|
|
|
|
|
|
constraints: {
|
|
|
|
|
|
type: 'ip',
|
|
|
|
|
|
operator_functions: '=,in'
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2023-06-16 16:33:58 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
2023-07-10 17:47:38 +08:00
|
|
|
|
name: 'fqdn',
|
2023-06-16 16:33:58 +08:00
|
|
|
|
type: 'string',
|
2023-07-10 17:47:38 +08:00
|
|
|
|
label: 'Domain',
|
|
|
|
|
|
doc: {
|
|
|
|
|
|
constraints: {
|
|
|
|
|
|
type: 'domain',
|
|
|
|
|
|
operator_functions: '=,in'
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2023-06-16 16:33:58 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
2023-07-10 17:47:38 +08:00
|
|
|
|
name: 'app_name',
|
2023-06-16 16:33:58 +08:00
|
|
|
|
type: 'string',
|
2023-07-10 17:47:38 +08:00
|
|
|
|
label: 'App',
|
|
|
|
|
|
doc: {
|
|
|
|
|
|
constraints: {
|
|
|
|
|
|
operator_functions: '=,in'
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2023-06-16 16:33:58 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
2023-07-07 17:22:51 +08:00
|
|
|
|
name: 'region',
|
2023-06-16 16:33:58 +08:00
|
|
|
|
type: 'string',
|
2023-07-10 17:47:38 +08:00
|
|
|
|
label: 'City',
|
|
|
|
|
|
doc: {
|
|
|
|
|
|
constraints: {
|
|
|
|
|
|
operator_functions: '=,in'
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2023-06-16 16:33:58 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
2023-07-07 17:22:51 +08:00
|
|
|
|
name: 'country',
|
2023-06-16 16:33:58 +08:00
|
|
|
|
type: 'string',
|
2023-07-10 17:47:38 +08:00
|
|
|
|
label: 'Country',
|
|
|
|
|
|
doc: {
|
|
|
|
|
|
constraints: {
|
|
|
|
|
|
operator_functions: '=,in'
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2023-06-16 16:33:58 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
2023-07-10 17:47:38 +08:00
|
|
|
|
name: 'asn',
|
2023-06-16 16:33:58 +08:00
|
|
|
|
type: 'string',
|
2023-07-10 17:47:38 +08:00
|
|
|
|
label: 'ASN',
|
|
|
|
|
|
doc: {
|
|
|
|
|
|
constraints: {
|
|
|
|
|
|
operator_functions: '=,in'
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2023-06-16 16:33:58 +08:00
|
|
|
|
}
|
|
|
|
|
|
]
|
2023-08-18 09:32:58 +08:00
|
|
|
|
|
|
|
|
|
|
let schemaEntityExplore = localStorage.getItem(storageKey.schemaEntityExplore)
|
2023-08-22 10:34:18 +08:00
|
|
|
|
schemaEntityExplore = schemaEntityExplore ? JSON.parse(schemaEntityExplore).entityMetadata.searchColumns : columnList1
|
2023-08-18 09:32:58 +08:00
|
|
|
|
export const columnList = schemaEntityExplore
|
|
|
|
|
|
|
2023-06-16 16:33:58 +08:00
|
|
|
|
export const operatorList = ['=', '!=', /* '>', '<', '>=', '<=', */'IN', 'NOT IN', 'LIKE', 'NOT LIKE']
|
|
|
|
|
|
export const connectionList = [
|
|
|
|
|
|
{
|
|
|
|
|
|
value: 'AND',
|
|
|
|
|
|
label: 'AND'
|
|
|
|
|
|
}
|
2023-08-18 09:32:58 +08:00
|
|
|
|
// {
|
|
|
|
|
|
// value: 'OR',
|
|
|
|
|
|
// label: 'OR'
|
|
|
|
|
|
// }
|
2023-06-16 16:33:58 +08:00
|
|
|
|
]
|