🔨 修改文本描述.

This commit is contained in:
lijiahangmax
2025-10-07 15:46:53 +08:00
parent 773d95207f
commit 1d5c579e64
20 changed files with 85 additions and 75 deletions

View File

@@ -48,13 +48,13 @@ import javax.annotation.Resource;
import java.util.List; import java.util.List;
/** /**
* 告警记录 api * 告警事件 api
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0
* @since 2025-9-17 21:31 * @since 2025-9-17 21:31
*/ */
@Tag(name = "monitor - 告警记录服务") @Tag(name = "monitor - 告警事件服务")
@Slf4j @Slf4j
@Validated @Validated
@RestWrapper @RestWrapper
@@ -67,7 +67,7 @@ public class AlarmEventController {
@IgnoreLog(IgnoreLogMode.RET) @IgnoreLog(IgnoreLogMode.RET)
@PostMapping("/query") @PostMapping("/query")
@Operation(summary = "分页查询告警记录") @Operation(summary = "分页查询告警事件")
@PreAuthorize("@ss.hasPermission('monitor:alarm-event:query')") @PreAuthorize("@ss.hasPermission('monitor:alarm-event:query')")
public DataGrid<AlarmEventVO> getAlarmEventPage(@Validated(Page.class) @RequestBody AlarmEventQueryRequest request) { public DataGrid<AlarmEventVO> getAlarmEventPage(@Validated(Page.class) @RequestBody AlarmEventQueryRequest request) {
return alarmEventService.getAlarmEventPage(request); return alarmEventService.getAlarmEventPage(request);
@@ -76,7 +76,7 @@ public class AlarmEventController {
@IgnoreLog(IgnoreLogMode.RET) @IgnoreLog(IgnoreLogMode.RET)
@OperatorLog(AlarmEventOperatorType.HANDLE) @OperatorLog(AlarmEventOperatorType.HANDLE)
@PostMapping("/handle") @PostMapping("/handle")
@Operation(summary = "处理告警记录") @Operation(summary = "处理告警事件")
@PreAuthorize("@ss.hasPermission('monitor:alarm-event:handle')") @PreAuthorize("@ss.hasPermission('monitor:alarm-event:handle')")
public Integer handleAlarmEvent(@Validated @RequestBody AlarmEventHandleRequest request) { public Integer handleAlarmEvent(@Validated @RequestBody AlarmEventHandleRequest request) {
return alarmEventService.handleAlarmEvent(request); return alarmEventService.handleAlarmEvent(request);
@@ -92,7 +92,7 @@ public class AlarmEventController {
} }
@PostMapping("/count") @PostMapping("/count")
@Operation(summary = "查询告警记录数量") @Operation(summary = "查询告警事件数量")
@PreAuthorize("@ss.hasPermission('monitor:alarm-event:query')") @PreAuthorize("@ss.hasPermission('monitor:alarm-event:query')")
public Long getAlarmEventCount(@Validated @RequestBody AlarmEventQueryRequest request) { public Long getAlarmEventCount(@Validated @RequestBody AlarmEventQueryRequest request) {
return alarmEventService.getAlarmEventCount(request); return alarmEventService.getAlarmEventCount(request);
@@ -101,7 +101,7 @@ public class AlarmEventController {
@DemoDisableApi @DemoDisableApi
@OperatorLog(AlarmEventOperatorType.DELETE) @OperatorLog(AlarmEventOperatorType.DELETE)
@DeleteMapping("/delete") @DeleteMapping("/delete")
@Operation(summary = "删除告警记录") @Operation(summary = "删除告警事件")
@Parameter(name = "id", description = "id", required = true) @Parameter(name = "id", description = "id", required = true)
@PreAuthorize("@ss.hasPermission('monitor:alarm-event:delete')") @PreAuthorize("@ss.hasPermission('monitor:alarm-event:delete')")
public Integer deleteAlarmEvent(@RequestParam("id") Long id) { public Integer deleteAlarmEvent(@RequestParam("id") Long id) {
@@ -111,7 +111,7 @@ public class AlarmEventController {
@DemoDisableApi @DemoDisableApi
@OperatorLog(AlarmEventOperatorType.DELETE) @OperatorLog(AlarmEventOperatorType.DELETE)
@DeleteMapping("/batch-delete") @DeleteMapping("/batch-delete")
@Operation(summary = "批量删除告警记录") @Operation(summary = "批量删除告警事件")
@Parameter(name = "idList", description = "idList", required = true) @Parameter(name = "idList", description = "idList", required = true)
@PreAuthorize("@ss.hasPermission('monitor:alarm-event:delete')") @PreAuthorize("@ss.hasPermission('monitor:alarm-event:delete')")
public Integer batchDeleteAlarmEvent(@RequestParam("idList") List<Long> idList) { public Integer batchDeleteAlarmEvent(@RequestParam("idList") List<Long> idList) {
@@ -121,7 +121,7 @@ public class AlarmEventController {
@DemoDisableApi @DemoDisableApi
@OperatorLog(AlarmEventOperatorType.CLEAR) @OperatorLog(AlarmEventOperatorType.CLEAR)
@PostMapping("/clear") @PostMapping("/clear")
@Operation(summary = "清理告警记录") @Operation(summary = "清理告警事件")
@PreAuthorize("@ss.hasPermission('monitor:alarm-event:management:clear')") @PreAuthorize("@ss.hasPermission('monitor:alarm-event:management:clear')")
public Integer clearAlarmEvent(@Validated @RequestBody AlarmEventClearRequest request) { public Integer clearAlarmEvent(@Validated @RequestBody AlarmEventClearRequest request) {
return alarmEventService.clearAlarmEvent(request); return alarmEventService.clearAlarmEvent(request);

View File

@@ -34,7 +34,7 @@ import org.mapstruct.factory.Mappers;
import java.util.List; import java.util.List;
/** /**
* 监控告警记录 内部对象转换器 * 监控告警事件 内部对象转换器
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0

View File

@@ -32,7 +32,7 @@ import java.util.Date;
import java.util.List; import java.util.List;
/** /**
* 监控告警记录 Mapper 接口 * 监控告警事件 Mapper 接口
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0

View File

@@ -30,7 +30,7 @@ import static org.dromara.visor.framework.biz.operator.log.core.enums.OperatorRi
import static org.dromara.visor.framework.biz.operator.log.core.enums.OperatorRiskLevel.L; import static org.dromara.visor.framework.biz.operator.log.core.enums.OperatorRiskLevel.L;
/** /**
* 监控告警记录 操作日志类型 * 监控告警事件 操作日志类型
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0
@@ -51,9 +51,9 @@ public class AlarmEventOperatorType extends InitializingOperatorTypes {
public OperatorType[] types() { public OperatorType[] types() {
return new OperatorType[]{ return new OperatorType[]{
new OperatorType(L, HANDLE, "设置告警状态为 ${status} <sb>${count}</sb> 条"), new OperatorType(L, HANDLE, "设置告警状态为 ${status} <sb>${count}</sb> 条"),
new OperatorType(L, SET_FALSE, "设置告警记录为误报 <sb>${count}</sb> 条"), new OperatorType(L, SET_FALSE, "设置告警事件为误报 <sb>${count}</sb> 条"),
new OperatorType(H, DELETE, "删除告警记录 <sb>${count}</sb> 条"), new OperatorType(H, DELETE, "删除告警事件 <sb>${count}</sb> 条"),
new OperatorType(H, CLEAR, "清理告警记录 <sb>${count}</sb> 条"), new OperatorType(H, CLEAR, "清理告警事件 <sb>${count}</sb> 条"),
}; };
} }

View File

@@ -36,7 +36,7 @@ import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
/** /**
* 监控告警记录 实体对象 * 监控告警事件 实体对象
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0
@@ -48,7 +48,7 @@ import java.util.Date;
@AllArgsConstructor @AllArgsConstructor
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@TableName(value = "monitor_alarm_event", autoResultMap = true) @TableName(value = "monitor_alarm_event", autoResultMap = true)
@Schema(name = "AlarmEventDO", description = "监控告警记录 实体对象") @Schema(name = "AlarmEventDO", description = "监控告警事件 实体对象")
public class AlarmEventDO extends BaseDO { public class AlarmEventDO extends BaseDO {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

View File

@@ -32,7 +32,7 @@ import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
/** /**
* 监控告警记录 清理请求对象 * 监控告警事件 清理请求对象
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0
@@ -40,7 +40,7 @@ import javax.validation.constraints.NotNull;
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Schema(name = "AlarmEventClearRequest", description = "监控告警记录 清理请求对象") @Schema(name = "AlarmEventClearRequest", description = "监控告警事件 清理请求对象")
public class AlarmEventClearRequest extends AlarmEventQueryRequest implements DataClearRequest { public class AlarmEventClearRequest extends AlarmEventQueryRequest implements DataClearRequest {
@NotNull @NotNull

View File

@@ -38,7 +38,7 @@ import java.util.Date;
import java.util.List; import java.util.List;
/** /**
* 监控告警记录 更新请求对象 * 监控告警事件 更新请求对象
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0
@@ -48,7 +48,7 @@ import java.util.List;
@Builder @Builder
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
@Schema(name = "AlarmEventUpdateRequest", description = "监控告警记录 更新请求对象") @Schema(name = "AlarmEventUpdateRequest", description = "监控告警事件 更新请求对象")
public class AlarmEventHandleRequest implements Serializable { public class AlarmEventHandleRequest implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

View File

@@ -31,7 +31,7 @@ import javax.validation.constraints.Size;
import java.util.Date; import java.util.Date;
/** /**
* 监控告警记录 查询请求对象 * 监控告警事件 查询请求对象
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0
@@ -42,7 +42,7 @@ import java.util.Date;
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Schema(name = "AlarmEventQueryRequest", description = "监控告警记录 查询请求对象") @Schema(name = "AlarmEventQueryRequest", description = "监控告警事件 查询请求对象")
public class AlarmEventQueryRequest extends BaseQueryRequest { public class AlarmEventQueryRequest extends BaseQueryRequest {
@Schema(description = "id") @Schema(description = "id")

View File

@@ -33,7 +33,7 @@ import java.io.Serializable;
import java.util.List; import java.util.List;
/** /**
* 监控告警记录 设置误报请求对象 * 监控告警事件 设置误报请求对象
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0
@@ -43,7 +43,7 @@ import java.util.List;
@Builder @Builder
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
@Schema(name = "AlarmEventSetFalseRequest", description = "监控告警记录 设置误报请求对象") @Schema(name = "AlarmEventSetFalseRequest", description = "监控告警事件 设置误报请求对象")
public class AlarmEventSetFalseRequest implements Serializable { public class AlarmEventSetFalseRequest implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

View File

@@ -33,7 +33,7 @@ import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
/** /**
* 监控告警记录 视图响应对象 * 监控告警事件 视图响应对象
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0
@@ -43,7 +43,7 @@ import java.util.Date;
@Builder @Builder
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
@Schema(name = "AlarmEventVO", description = "监控告警记录 视图响应对象") @Schema(name = "AlarmEventVO", description = "监控告警事件 视图响应对象")
public class AlarmEventVO implements Serializable { public class AlarmEventVO implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

View File

@@ -23,7 +23,7 @@
package org.dromara.visor.module.monitor.enums; package org.dromara.visor.module.monitor.enums;
/** /**
* 告警记录处理状态 * 告警事件处理状态
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0

View File

@@ -35,7 +35,7 @@ import org.dromara.visor.module.monitor.entity.vo.AlarmEventVO;
import java.util.List; import java.util.List;
/** /**
* 监控告警记录 服务类 * 监控告警事件 服务类
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0
@@ -44,14 +44,14 @@ import java.util.List;
public interface AlarmEventService { public interface AlarmEventService {
/** /**
* 创建监控告警记录 * 创建监控告警事件
* *
* @param record record * @param record record
*/ */
void createAlarmEvent(AlarmEventDO record); void createAlarmEvent(AlarmEventDO record);
/** /**
* 处理告警记录 * 处理告警事件
* *
* @param request request * @param request request
* @return effect * @return effect
@@ -67,7 +67,7 @@ public interface AlarmEventService {
Integer setAlarmEventFalse(AlarmEventSetFalseRequest request); Integer setAlarmEventFalse(AlarmEventSetFalseRequest request);
/** /**
* 分页查询监控告警记录 * 分页查询监控告警事件
* *
* @param request request * @param request request
* @return rows * @return rows
@@ -75,7 +75,7 @@ public interface AlarmEventService {
DataGrid<AlarmEventVO> getAlarmEventPage(AlarmEventQueryRequest request); DataGrid<AlarmEventVO> getAlarmEventPage(AlarmEventQueryRequest request);
/** /**
* 查询监控告警记录数量 * 查询监控告警事件数量
* *
* @param request request * @param request request
* @return count * @return count
@@ -83,7 +83,7 @@ public interface AlarmEventService {
Long getAlarmEventCount(AlarmEventQueryRequest request); Long getAlarmEventCount(AlarmEventQueryRequest request);
/** /**
* 删除监控告警记录 * 删除监控告警事件
* *
* @param id id * @param id id
* @return effect * @return effect
@@ -91,7 +91,7 @@ public interface AlarmEventService {
Integer deleteAlarmEventById(Long id); Integer deleteAlarmEventById(Long id);
/** /**
* 批量删除监控告警记录 * 批量删除监控告警事件
* *
* @param idList idList * @param idList idList
* @return effect * @return effect
@@ -99,7 +99,7 @@ public interface AlarmEventService {
Integer deleteAlarmEventByIdList(List<Long> idList); Integer deleteAlarmEventByIdList(List<Long> idList);
/** /**
* 清理监控告警记录 * 清理监控告警事件
* *
* @param request request * @param request request
* @return effect * @return effect
@@ -107,7 +107,7 @@ public interface AlarmEventService {
Integer clearAlarmEvent(AlarmEventClearRequest request); Integer clearAlarmEvent(AlarmEventClearRequest request);
/** /**
* 获取策略告警记录数量 * 获取策略告警事件数量
* *
* @param policyIdList policyIdList * @param policyIdList policyIdList
* @param startDay startDay * @param startDay startDay

View File

@@ -62,7 +62,7 @@ import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
* 监控告警记录 服务实现类 * 监控告警事件 服务实现类
* *
* @author Jiahang Li * @author Jiahang Li
* @version 1.0.0 * @version 1.0.0

View File

@@ -4,7 +4,7 @@ import axios from 'axios';
import qs from 'query-string'; import qs from 'query-string';
/** /**
* 告警记录处理请求 * 告警事件处理请求
*/ */
export interface AlarmEventHandleRequest { export interface AlarmEventHandleRequest {
idList?: Array<number>; idList?: Array<number>;
@@ -14,14 +14,14 @@ export interface AlarmEventHandleRequest {
} }
/** /**
* 告警记录误报请求 * 告警事件误报请求
*/ */
export interface AlarmEventFalseAlarmRequest { export interface AlarmEventFalseAlarmRequest {
idList?: Array<number>; idList?: Array<number>;
} }
/** /**
* 告警记录查询请求 * 告警事件查询请求
*/ */
export interface AlarmEventQueryRequest extends Pagination, OrderDirection { export interface AlarmEventQueryRequest extends Pagination, OrderDirection {
id?: number; id?: number;
@@ -39,13 +39,13 @@ export interface AlarmEventQueryRequest extends Pagination, OrderDirection {
} }
/** /**
* 告警记录清理请求 * 告警事件清理请求
*/ */
export interface AlarmEventClearRequest extends AlarmEventQueryRequest, ClearRequest { export interface AlarmEventClearRequest extends AlarmEventQueryRequest, ClearRequest {
} }
/** /**
* 告警记录查询响应 * 告警事件查询响应
*/ */
export interface AlarmEventQueryResponse extends TableData { export interface AlarmEventQueryResponse extends TableData {
id: number; id: number;
@@ -75,7 +75,7 @@ export interface AlarmEventQueryResponse extends TableData {
} }
/** /**
* 处理告警记录 * 处理告警事件
*/ */
export function handleAlarmEvent(request: AlarmEventHandleRequest) { export function handleAlarmEvent(request: AlarmEventHandleRequest) {
return axios.post<number>('/monitor/alarm-event/handle', request); return axios.post<number>('/monitor/alarm-event/handle', request);
@@ -89,28 +89,28 @@ export function setAlarmEventFalse(request: AlarmEventFalseAlarmRequest) {
} }
/** /**
* 分页查询告警记录 * 分页查询告警事件
*/ */
export function getAlarmEventPage(request: AlarmEventQueryRequest) { export function getAlarmEventPage(request: AlarmEventQueryRequest) {
return axios.post<DataGrid<AlarmEventQueryResponse>>('/monitor/alarm-event/query', request); return axios.post<DataGrid<AlarmEventQueryResponse>>('/monitor/alarm-event/query', request);
} }
/** /**
* 查询告警记录数量 * 查询告警事件数量
*/ */
export function getAlarmEventCount(request: AlarmEventQueryRequest) { export function getAlarmEventCount(request: AlarmEventQueryRequest) {
return axios.post<number>('/monitor/alarm-event/count', request); return axios.post<number>('/monitor/alarm-event/count', request);
} }
/** /**
* 删除告警记录 * 删除告警事件
*/ */
export function deleteAlarmEvent(id: number) { export function deleteAlarmEvent(id: number) {
return axios.delete<number>('/monitor/alarm-event/delete', { params: { id } }); return axios.delete<number>('/monitor/alarm-event/delete', { params: { id } });
} }
/** /**
* 批量删除告警记录 * 批量删除告警事件
*/ */
export function batchDeleteAlarmEvent(idList: Array<number>) { export function batchDeleteAlarmEvent(idList: Array<number>) {
return axios.delete<number>('/monitor/alarm-event/batch-delete', { return axios.delete<number>('/monitor/alarm-event/batch-delete', {
@@ -122,7 +122,7 @@ export function batchDeleteAlarmEvent(idList: Array<number>) {
} }
/** /**
* 清理告警记录 * 清理告警事件
*/ */
export function clearMonitorAlarmEvent(request: AlarmEventClearRequest) { export function clearMonitorAlarmEvent(request: AlarmEventClearRequest) {
return axios.post<number>('/monitor/alarm-event/clear', request); return axios.post<number>('/monitor/alarm-event/clear', request);

View File

@@ -6,7 +6,7 @@
<div class="table-left-bar-handle"> <div class="table-left-bar-handle">
<!-- 标题 --> <!-- 标题 -->
<div class="table-title"> <div class="table-title">
告警记录列表 告警事件列表
</div> </div>
</div> </div>
<!-- 右侧操作 --> <!-- 右侧操作 -->

View File

@@ -14,7 +14,7 @@ export const FalseAlarm = {
// 告警条件 字典项 // 告警条件 字典项
export const TriggerConditionKey = 'alarmTriggerCondition'; export const TriggerConditionKey = 'alarmTriggerCondition';
// 告警记录处理状态 字典项 // 告警事件处理状态 字典项
export const HandleStatusKey = 'alarmEventHandleStatus'; export const HandleStatusKey = 'alarmEventHandleStatus';
// 是否为误报 字典项 // 是否为误报 字典项

View File

@@ -35,21 +35,26 @@
<a-form-item v-if="formModel.allEffect === 0" <a-form-item v-if="formModel.allEffect === 0"
:field="'tag-' + (index + 1)" :field="'tag-' + (index + 1)"
:label="'指标标签-' + (index + 1)"> :label="'指标标签-' + (index + 1)">
<a-space :size="12"> <a-space :size="12" class="tag-wrapper">
<!-- 标签名称 --> <!-- 标签名称 -->
<a-input v-model="tag.key" <a-input v-model="tag.key"
style="width: 128px;" style="width: 108px;"
placeholder="指标标签名称" /> placeholder="标签名称" />
<!-- 标签值 --> <!-- 标签值 -->
<a-select v-model="tag.value" <a-select v-model="tag.value"
class="tag-values" class="tag-values"
style="width: 260px" style="width: 260px"
:max-tag-count="2" :max-tag-count="2"
:options="measurementTags[measurement] || []" :options="[measurement] || []"
placeholder="标签值" placeholder="输入或选择标签值"
tag-nowrap
multiple multiple
allow-create /> allow-create>
<template #empty>
<a-empty>
请输入标签值
</a-empty>
</template>
</a-select>
<!-- 移除 --> <!-- 移除 -->
<a-button title="移除" <a-button title="移除"
style="width: 32px" style="width: 32px"
@@ -200,7 +205,6 @@
import { assignOmitRecord } from '@/utils'; import { assignOmitRecord } from '@/utils';
import { TriggerConditionKey, LevelKey, DefaultCondition, DefaultLevel, } from '../types/const'; import { TriggerConditionKey, LevelKey, DefaultCondition, DefaultLevel, } from '../types/const';
import { createAlarmRule, updateAlarmRule } from '@/api/monitor/alarm-rule'; import { createAlarmRule, updateAlarmRule } from '@/api/monitor/alarm-rule';
import { isBoolean } from '@/utils/is';
import { Message } from '@arco-design/web-vue'; import { Message } from '@arco-design/web-vue';
import { useDictStore, useCacheStore } from '@/store'; import { useDictStore, useCacheStore } from '@/store';
import { getMonitorHostPolicyRuleTags } from '@/api/monitor/monitor-host'; import { getMonitorHostPolicyRuleTags } from '@/api/monitor/monitor-host';
@@ -220,7 +224,7 @@
const tags = ref<Array<RuleTag>>([]); const tags = ref<Array<RuleTag>>([]);
const hasTags = ref(false); const hasTags = ref(false);
const measurement = ref(''); const measurement = ref('');
const measurementTags = ref<Record<string, string[]>>({}); const = ref<Record<string, string[]>>({});
const defaultForm = (): AlarmRuleUpdateRequest => { const defaultForm = (): AlarmRuleUpdateRequest => {
return { return {
@@ -326,13 +330,13 @@
// 加载全部标签 // 加载全部标签
const loadTags = () => { const loadTags = () => {
const tags = measurementTags.value[measurement.value]; const tags = .value[measurement.value];
if (tags) { if (tags) {
return; return;
} }
// 加载标签 // 加载标签
getMonitorHostPolicyRuleTags(formModel.value.policyId as number, measurement.value).then(({ data }) => { getMonitorHostPolicyRuleTags(formModel.value.policyId as number, measurement.value).then(({ data }) => {
measurementTags.value[measurement.value as any] = data; .value[measurement.value as any] = data;
}); });
}; };
@@ -420,6 +424,11 @@
margin-right: 12px; margin-right: 12px;
} }
.tag-wrapper {
width: 100%;
justify-content: space-between;
}
.alarm-level-select, .condition-select { .alarm-level-select, .condition-select {
:deep(.arco-select-view-suffix) { :deep(.arco-select-view-suffix) {
@@ -430,4 +439,5 @@
:deep(.tag-values .arco-select-view-inner) { :deep(.tag-values .arco-select-view-inner) {
flex-wrap: nowrap !important; flex-wrap: nowrap !important;
} }
</style> </style>

View File

@@ -9,7 +9,7 @@
:hide-content="true"> :hide-content="true">
<a-tab-pane :key="TabKeys.OVERVIEW" title="主机概览" /> <a-tab-pane :key="TabKeys.OVERVIEW" title="主机概览" />
<a-tab-pane :key="TabKeys.CHART" title="监控图表" /> <a-tab-pane :key="TabKeys.CHART" title="监控图表" />
<a-tab-pane :key="TabKeys.ALARM" title="告警记录" /> <a-tab-pane :key="TabKeys.ALARM" title="告警事件" />
</a-tabs> </a-tabs>
<a-divider direction="vertical" <a-divider direction="vertical"
style="height: 22px; margin: 0 16px 0 8px;" style="height: 22px; margin: 0 16px 0 8px;"
@@ -42,7 +42,7 @@
</div> </div>
<!-- 右侧 --> <!-- 右侧 -->
<div class="header-right"> <div class="header-right">
<!-- 告警记录标签 --> <!-- 告警事件标签 -->
<div v-if="activeKey === TabKeys.OVERVIEW" class="handle-wrapper"> <div v-if="activeKey === TabKeys.OVERVIEW" class="handle-wrapper">
<a-tag v-if="overrideTimestamp">更新时间: {{ dateFormat(new Date(overrideTimestamp)) }}</a-tag> <a-tag v-if="overrideTimestamp">更新时间: {{ dateFormat(new Date(overrideTimestamp)) }}</a-tag>
</div> </div>

View File

@@ -580,7 +580,7 @@ CREATE TABLE `monitor_alarm_event`
) ENGINE = InnoDB ) ENGINE = InnoDB
AUTO_INCREMENT = 1 AUTO_INCREMENT = 1
CHARACTER SET = utf8mb4 CHARACTER SET = utf8mb4
COLLATE = utf8mb4_unicode_ci COMMENT = '监控告警记录' COLLATE = utf8mb4_unicode_ci COMMENT = '监控告警事件'
ROW_FORMAT = Dynamic; ROW_FORMAT = Dynamic;
-- ---------------------------- -- ----------------------------

View File

@@ -143,7 +143,7 @@ INSERT INTO `dict_key` VALUES (86, 'notifyBizType', 'STRING', '[]', '通知业
INSERT INTO `dict_key` VALUES (87, 'notifyChannelType', 'STRING', '[{\"name\": \"color\", \"type\": \"COLOR\"}, {\"name\": \"notifyType\", \"type\": \"STRING\"}, {\"name\": \"templateTips\", \"type\": \"STRING\"}]', '通知渠道类型', '2025-09-13 13:35:03', '2025-09-20 22:26:20', 'admin', 'admin', 0); INSERT INTO `dict_key` VALUES (87, 'notifyChannelType', 'STRING', '[{\"name\": \"color\", \"type\": \"COLOR\"}, {\"name\": \"notifyType\", \"type\": \"STRING\"}, {\"name\": \"templateTips\", \"type\": \"STRING\"}]', '通知渠道类型', '2025-09-13 13:35:03', '2025-09-20 22:26:20', 'admin', 'admin', 0);
INSERT INTO `dict_key` VALUES (88, 'alarmTriggerCondition', 'STRING', '[]', '告警条件', '2025-09-14 05:36:35', '2025-09-14 05:36:35', 'admin', 'admin', 0); INSERT INTO `dict_key` VALUES (88, 'alarmTriggerCondition', 'STRING', '[]', '告警条件', '2025-09-14 05:36:35', '2025-09-14 05:36:35', 'admin', 'admin', 0);
INSERT INTO `dict_key` VALUES (89, 'alarmLevel', 'INTEGER', '[{\"name\": \"level\", \"type\": \"STRING\"}, {\"name\": \"color\", \"type\": \"STRING\"}]', '告警等级', '2025-09-14 05:36:36', '2025-09-14 05:36:36', 'admin', 'admin', 0); INSERT INTO `dict_key` VALUES (89, 'alarmLevel', 'INTEGER', '[{\"name\": \"level\", \"type\": \"STRING\"}, {\"name\": \"color\", \"type\": \"STRING\"}]', '告警等级', '2025-09-14 05:36:36', '2025-09-14 05:36:36', 'admin', 'admin', 0);
INSERT INTO `dict_key` VALUES (90, 'alarmEventHandleStatus', 'STRING', '[{\"name\": \"color\", \"type\": \"STRING\"}]', '告警记录处理状态', '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0); INSERT INTO `dict_key` VALUES (90, 'alarmEventHandleStatus', 'STRING', '[{\"name\": \"color\", \"type\": \"STRING\"}]', '告警事件处理状态', '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0);
INSERT INTO `dict_key` VALUES (92, 'falseAlarm', 'INTEGER', '[]', '是否为误报', '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0); INSERT INTO `dict_key` VALUES (92, 'falseAlarm', 'INTEGER', '[]', '是否为误报', '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0);
-- 字典值 -- 字典值
@@ -574,11 +574,11 @@ INSERT INTO `dict_value` VALUES (600, 89, 'alarmLevel', '3', '警告', '{\"color
INSERT INTO `dict_value` VALUES (601, 89, 'alarmLevel', '4', '信息', '{\"color\": \"gray\", \"level\": \"Info\"}', 50, '2025-09-14 05:36:36', '2025-09-14 05:36:36', 'admin', 'admin', 0); INSERT INTO `dict_value` VALUES (601, 89, 'alarmLevel', '4', '信息', '{\"color\": \"gray\", \"level\": \"Info\"}', 50, '2025-09-14 05:36:36', '2025-09-14 05:36:36', 'admin', 'admin', 0);
INSERT INTO `dict_value` VALUES (602, 2, 'operatorLogType', 'alarm-policy:update-rule-switch', '更新监控告警规则开关', '{}', 80, '2025-09-14 05:36:35', '2025-09-14 06:35:40', 'admin', 'admin', 0); INSERT INTO `dict_value` VALUES (602, 2, 'operatorLogType', 'alarm-policy:update-rule-switch', '更新监控告警规则开关', '{}', 80, '2025-09-14 05:36:35', '2025-09-14 06:35:40', 'admin', 'admin', 0);
INSERT INTO `dict_value` VALUES (603, 87, 'notifyChannelType', 'WEBSITE', '站内信', '{\"color\": \"arcoblue\", \"notifyType\": \"website\", \"templateTips\": \"普通文本格式, 文本颜色以及参数请参考文档\"}', 5, '2025-09-13 13:35:03', '2025-09-20 22:54:37', 'admin', 'admin', 0); INSERT INTO `dict_value` VALUES (603, 87, 'notifyChannelType', 'WEBSITE', '站内信', '{\"color\": \"arcoblue\", \"notifyType\": \"website\", \"templateTips\": \"普通文本格式, 文本颜色以及参数请参考文档\"}', 5, '2025-09-13 13:35:03', '2025-09-20 22:54:37', 'admin', 'admin', 0);
INSERT INTO `dict_value` VALUES (604, 1, 'operatorLogModule', 'monitor:alarm-event', '告警记录', '{}', 2200, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0); INSERT INTO `dict_value` VALUES (604, 1, 'operatorLogModule', 'monitor:alarm-event', '告警事件', '{}', 2200, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0);
INSERT INTO `dict_value` VALUES (605, 2, 'operatorLogType', 'alarm-event:handle', '处理告警记录', '{}', 10, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0); INSERT INTO `dict_value` VALUES (605, 2, 'operatorLogType', 'alarm-event:handle', '处理告警事件', '{}', 10, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0);
INSERT INTO `dict_value` VALUES (606, 2, 'operatorLogType', 'alarm-event:set-false', '设置告警记录误报', '{}', 20, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0); INSERT INTO `dict_value` VALUES (606, 2, 'operatorLogType', 'alarm-event:set-false', '设置告警事件误报', '{}', 20, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0);
INSERT INTO `dict_value` VALUES (607, 2, 'operatorLogType', 'alarm-event:delete', '删除告警记录', '{}', 30, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0); INSERT INTO `dict_value` VALUES (607, 2, 'operatorLogType', 'alarm-event:delete', '删除告警事件', '{}', 30, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0);
INSERT INTO `dict_value` VALUES (608, 2, 'operatorLogType', 'alarm-event:clear', '清理告警记录', '{}', 40, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0); INSERT INTO `dict_value` VALUES (608, 2, 'operatorLogType', 'alarm-event:clear', '清理告警事件', '{}', 40, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0);
INSERT INTO `dict_value` VALUES (609, 90, 'alarmEventHandleStatus', 'NEW', '新告警', '{\"color\": \"red\"}', 10, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0); INSERT INTO `dict_value` VALUES (609, 90, 'alarmEventHandleStatus', 'NEW', '新告警', '{\"color\": \"red\"}', 10, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0);
INSERT INTO `dict_value` VALUES (610, 90, 'alarmEventHandleStatus', 'CONFIRMED', '已确认', '{\"color\": \"orangered\"}', 20, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0); INSERT INTO `dict_value` VALUES (610, 90, 'alarmEventHandleStatus', 'CONFIRMED', '已确认', '{\"color\": \"orangered\"}', 20, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0);
INSERT INTO `dict_value` VALUES (611, 90, 'alarmEventHandleStatus', 'RESOLVE', '已解决', '{\"color\": \"green\"}', 30, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0); INSERT INTO `dict_value` VALUES (611, 90, 'alarmEventHandleStatus', 'RESOLVE', '已解决', '{\"color\": \"green\"}', 30, '2025-09-17 16:20:03', '2025-09-17 16:20:03', 'admin', 'admin', 0);
@@ -733,8 +733,8 @@ INSERT INTO `system_menu` VALUES (304, 300, '复制告警策略', 'monitor:alarm
INSERT INTO `system_menu` VALUES (305, 300, '删除告警策略', 'monitor:alarm-policy:delete', 3, 50, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-13 16:13:36', '2025-09-13 17:10:41', 'admin', 'admin', 0); INSERT INTO `system_menu` VALUES (305, 300, '删除告警策略', 'monitor:alarm-policy:delete', 3, 50, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-13 16:13:36', '2025-09-13 17:10:41', 'admin', 'admin', 0);
INSERT INTO `system_menu` VALUES (306, 300, '修改告警规则', 'monitor:alarm-policy:update-rule', 3, 60, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-14 14:34:25', '2025-09-14 14:34:25', 'admin', 'admin', 0); INSERT INTO `system_menu` VALUES (306, 300, '修改告警规则', 'monitor:alarm-policy:update-rule', 3, 60, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-14 14:34:25', '2025-09-14 14:34:25', 'admin', 'admin', 0);
INSERT INTO `system_menu` VALUES (307, 282, '告警规则', NULL, 2, 21, 0, 1, 1, 0, 'IconExperiment', NULL, 'alarmRule', '2025-09-15 00:01:55', '2025-09-20 22:12:16', 'admin', 'admin', 0); INSERT INTO `system_menu` VALUES (307, 282, '告警规则', NULL, 2, 21, 0, 1, 1, 0, 'IconExperiment', NULL, 'alarmRule', '2025-09-15 00:01:55', '2025-09-20 22:12:16', 'admin', 'admin', 0);
INSERT INTO `system_menu` VALUES (308, 282, '告警记录', NULL, 2, 30, 1, 1, 1, 0, 'IconNotification', NULL, 'alarmEvent', '2025-09-17 16:06:34', '2025-09-20 22:11:32', 'admin', 'admin', 0); INSERT INTO `system_menu` VALUES (308, 282, '告警事件', NULL, 2, 30, 1, 1, 1, 0, 'IconNotification', NULL, 'alarmEvent', '2025-09-17 16:06:34', '2025-09-20 22:11:32', 'admin', 'admin', 0);
INSERT INTO `system_menu` VALUES (309, 308, '查询告警记录', 'monitor:alarm-event:query', 3, 10, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-17 16:06:34', '2025-09-17 16:06:34', 'admin', 'admin', 0); INSERT INTO `system_menu` VALUES (309, 308, '查询告警事件', 'monitor:alarm-event:query', 3, 10, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-17 16:06:34', '2025-09-17 16:06:34', 'admin', 'admin', 0);
INSERT INTO `system_menu` VALUES (310, 308, '处理告警记录', 'monitor:alarm-event:handle', 3, 20, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-17 16:06:34', '2025-09-17 16:06:34', 'admin', 'admin', 0); INSERT INTO `system_menu` VALUES (310, 308, '处理告警事件', 'monitor:alarm-event:handle', 3, 20, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-17 16:06:34', '2025-09-17 16:06:34', 'admin', 'admin', 0);
INSERT INTO `system_menu` VALUES (311, 308, '删除告警记录', 'monitor:alarm-event:delete', 3, 30, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-17 16:06:34', '2025-09-17 16:06:34', 'admin', 'admin', 0); INSERT INTO `system_menu` VALUES (311, 308, '删除告警事件', 'monitor:alarm-event:delete', 3, 30, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-17 16:06:34', '2025-09-17 16:06:34', 'admin', 'admin', 0);
INSERT INTO `system_menu` VALUES (312, 308, '清理告警记录', 'monitor:alarm-event:management:clear', 3, 40, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-17 16:06:34', '2025-09-17 16:06:34', 'admin', 'admin', 0); INSERT INTO `system_menu` VALUES (312, 308, '清理告警事件', 'monitor:alarm-event:management:clear', 3, 40, 1, 1, 1, 0, NULL, NULL, NULL, '2025-09-17 16:06:34', '2025-09-17 16:06:34', 'admin', 'admin', 0);