NEZ-1032 fix: Endpoint 新增页面 切换 project,module,asset 重置 metrics,logs配置

This commit is contained in:
@changcode
2021-09-28 17:42:09 +08:00
parent cd72fad4b7
commit 66730b5800

View File

@@ -58,6 +58,7 @@
show-field="name" show-field="name"
v-model="editEndpoint.assetId" v-model="editEndpoint.assetId"
class="form-control" class="form-control"
ref="sp"
:result-format="resultFormat" :result-format="resultFormat"
></v-selectpage> ></v-selectpage>
</el-form-item> </el-form-item>
@@ -121,7 +122,7 @@
</el-form-item> </el-form-item>
<!--path--> <!--path-->
<el-form-item :label='$t("project.endpoint.path")' class="half-form-item" prop="configs.metrics_path"> <el-form-item :label='$t("project.endpoint.path")' class="half-form-item" prop="configs.metrics_path">
<el-input id="module-box-input-path" v-model="editEndpoint.configs[0].config.metrics_path" placeholder="" size="small" disabled></el-input> <el-input id="module-box-input-path" v-model="editEndpoint.configs[0].config.metrics_path" placeholder="" size="small" :disabled="editEndpoint.configs[0].config.protocol != 'http'"></el-input>
</el-form-item> </el-form-item>
<!--port--> <!--port-->
<el-form-item :label='$t("project.endpoint.port")' class="half-form-item" prop="configs.0.config.port" :rules="[ <el-form-item :label='$t("project.endpoint.port")' class="half-form-item" prop="configs.0.config.port" :rules="[
@@ -619,6 +620,7 @@ export default {
activeName: 'Basic', activeName: 'Basic',
activeNameLogs: ['Basic'], activeNameLogs: ['Basic'],
expandedWalkData: [], expandedWalkData: [],
editEndpointReset: {},
language: localStorage.getItem('nz-language'), language: localStorage.getItem('nz-language'),
radio: 'password', radio: 'password',
editEndpoint: {}, editEndpoint: {},
@@ -1093,6 +1095,10 @@ export default {
this.getModuleList() this.getModuleList()
if (this.editEndpoint.moduleId) { if (this.editEndpoint.moduleId) {
this.editEndpoint.moduleId = '' this.editEndpoint.moduleId = ''
this.editEndpoint.name = ''
this.editEndpoint.assetName = ''
this.editEndpoint.assetId = ''
this.$refs.sp.remove()
this.$refs.moduleForm.clearValidate('moduleId') this.$refs.moduleForm.clearValidate('moduleId')
} }
}, },
@@ -1351,79 +1357,75 @@ export default {
} }
if (this.editEndpoint.moduleId && this.editEndpoint.assetId) { if (this.editEndpoint.moduleId && this.editEndpoint.assetId) {
this.$post('/monitor/endpoint/render', { moduleIds: this.editEndpoint.moduleId, assetIds: this.editEndpoint.assetId }).then(res => { this.$post('/monitor/endpoint/render', { moduleIds: this.editEndpoint.moduleId, assetIds: this.editEndpoint.assetId }).then(res => {
if (JSON.stringify(this.editEndpoint.configs) === JSON.stringify(this.blankObject.configs)) { this.editEndpoint.configs = JSON.parse(res.data.list[0].configs)
this.editEndpoint.configs = JSON.parse(res.data.list[0].configs) this.activeNameLogs = this.editEndpoint.configs[1].config.map(() => 'Basic')
this.activeNameLogs = this.editEndpoint.configs[1].config.map(() => 'Basic') this.editEndpoint.configs[1].config.forEach(item => {
this.editEndpoint.configs[1].config.forEach(item => { item.labelModule = []
item.labelModule = [] if (JSON.stringify(item.labels) !== '{}' && item.labels) {
if (JSON.stringify(item.labels) !== '{}' && item.labels) { Object.keys(item.labels).forEach(key => {
Object.keys(item.labels).forEach(key => { item.labelModule.push({ key, value: item.labels[key] })
item.labelModule.push({ key, value: item.labels[key] })
})
} else {
item.labelModule.push({ key: '', value: '' })
}
item.pipeline && item.pipeline.forEach((pipeline) => {
if (pipeline.type === 'labels') {
const labelsArr = []
if (JSON.stringify(pipeline.labels) !== '{}' && pipeline.labels) {
Object.keys(pipeline.labels).forEach(key => {
labelsArr.push({ key, value: pipeline.labels[key] })
})
} else {
labelsArr.push({ key: '', value: '' })
}
pipeline.labels = labelsArr
}
if (pipeline.type === 'json') {
const expressionsArr = []
if (JSON.stringify(pipeline.expressions) !== '{}' && pipeline.expressions) {
Object.keys(pipeline.expressions).forEach(key => {
expressionsArr.push({ key, value: pipeline.expressions[key] })
})
} else {
expressionsArr.push({ key: '', value: '' })
}
pipeline.expressions = expressionsArr
}
})
if (item.type === 'file') {
item.unit = ''
item.appName = ''
item.listenAddress = ''
} else if (item.type === 'journal') {
item.fileName = ''
item.appName = ''
item.listenAddress = ''
} else if (item.type === 'syslog') {
item.fileName = ''
item.unit = ''
}
})
this.editEndpoint.paramObj = []
this.editEndpoint.labelModule = []
this.editEndpoint.configs[0].config.relabel_config && this.editEndpoint.configs[0].config.relabel_config.forEach(item => {
item.showAllRelabelOption = false
item.tags = ''
})
if (JSON.stringify(this.editEndpoint.configs[0].config.labels) !== '{}' && this.editEndpoint.configs[0].config.labels) {
Object.keys(this.editEndpoint.configs[0].config.labels).forEach(key => {
this.editEndpoint.labelModule.push({ key, value: this.editEndpoint.configs[0].config.labels[key] })
}) })
} else { } else {
this.editEndpoint.labelModule.push({ key: '', value: '' }) item.labelModule.push({ key: '', value: '' })
} }
if (JSON.stringify(this.editEndpoint.configs[0].config.params) !== '{}' && this.editEndpoint.configs[0].config.params) { item.pipeline && item.pipeline.forEach((pipeline) => {
Object.keys(this.editEndpoint.configs[0].config.params).forEach(key => { if (pipeline.type === 'labels') {
this.editEndpoint.paramObj.push({ key, value: this.editEndpoint.configs[0].config.params[key] }) const labelsArr = []
}) if (JSON.stringify(pipeline.labels) !== '{}' && pipeline.labels) {
} else { Object.keys(pipeline.labels).forEach(key => {
this.editEndpoint.paramObj.push({ key: '', value: [] }) labelsArr.push({ key, value: pipeline.labels[key] })
})
} else {
labelsArr.push({ key: '', value: '' })
}
pipeline.labels = labelsArr
}
if (pipeline.type === 'json') {
const expressionsArr = []
if (JSON.stringify(pipeline.expressions) !== '{}' && pipeline.expressions) {
Object.keys(pipeline.expressions).forEach(key => {
expressionsArr.push({ key, value: pipeline.expressions[key] })
})
} else {
expressionsArr.push({ key: '', value: '' })
}
pipeline.expressions = expressionsArr
}
})
if (item.type === 'file') {
item.unit = ''
item.appName = ''
item.listenAddress = ''
} else if (item.type === 'journal') {
item.fileName = ''
item.appName = ''
item.listenAddress = ''
} else if (item.type === 'syslog') {
item.fileName = ''
item.unit = ''
} }
})
this.editEndpoint.paramObj = []
this.editEndpoint.labelModule = []
this.editEndpoint.configs[0].config.relabel_config && this.editEndpoint.configs[0].config.relabel_config.forEach(item => {
item.showAllRelabelOption = false
item.tags = ''
})
if (JSON.stringify(this.editEndpoint.configs[0].config.labels) !== '{}' && this.editEndpoint.configs[0].config.labels) {
Object.keys(this.editEndpoint.configs[0].config.labels).forEach(key => {
this.editEndpoint.labelModule.push({ key, value: this.editEndpoint.configs[0].config.labels[key] })
})
} else {
this.editEndpoint.labelModule.push({ key: '', value: '' })
} }
if (!this.editEndpoint.name) { if (JSON.stringify(this.editEndpoint.configs[0].config.params) !== '{}' && this.editEndpoint.configs[0].config.params) {
this.editEndpoint.name = res.data.list[0].name Object.keys(this.editEndpoint.configs[0].config.params).forEach(key => {
this.editEndpoint.paramObj.push({ key, value: this.editEndpoint.configs[0].config.params[key] })
})
} else {
this.editEndpoint.paramObj.push({ key: '', value: [] })
} }
this.editEndpoint.name = res.data.list[0].name
// if (!this.editEndpoint.chartIds) { // if (!this.editEndpoint.chartIds) {
// this.editEndpoint.chartIds = res.data.list[0].module.chartIds // this.editEndpoint.chartIds = res.data.list[0].module.chartIds
// } // }