一、清除历史告警的几种方法
方法1:使用reset alarm history命令(推荐)
# 清除所有历史告警
<H3C> reset alarm history
# 清除特定时间段的历史告警
<H3C> reset alarm history before 2025-01-29
<H3C> reset alarm history before 10:00:00
<H3C> reset alarm history before 2025-01-29 10:00:00
方法2:通过系统维护命令
# 清除告警日志(某些设备支持)
<H3C> reset alarm-log
# 清除诊断信息(包含告警历史)
<H3C> reset diagnostic-information
方法3:清除日志缓冲区
# 清除日志缓冲区(可能包含告警信息)
<H3C> reset logbuffer
# 清除安全日志
<H3C> reset security-logfile
二、查看清除前的告警信息
在清除之前,建议先导出或查看当前告警:
1. 导出告警信息
# 查看所有历史告警
<H3C> display alarm history
# 导出到文件
<H3C> display alarm history > flash:/alarm_history_20250129.txt
# 通过TFTP导出
<H3C> copy flash:/alarm_history_20250129.txt tftp://192.168.1.100/
# 查看特定类型的告警
<H3C> display alarm history | include Critical
<H3C> display alarm history | include 2025-01-29
<H3C> display alarm history | exclude Minor
2. 查看告警统计
# 查看告警摘要
<H3C> display alarm summary
# 查看各等级告警数量
<H3C> display alarm statistics
三、分设备型号的清除方法
1. 华三交换机系列
# S系列交换机
<Sysname> reset alarm history
# MSR系列路由器
<MSR> reset alarm history
# CR系列核心交换机
<CR> reset alarm history
2. 华三防火墙系列
# SecPath防火墙
<SecPath> reset alarm history
# M9000防火墙
<M9000> reset alarm-log history
3. 华三无线AC
# 无线控制器
<AC> reset alarm history
# 或通过日志功能
<AC> reset log alarm
四、清除后的验证
# 1. 清除后立即验证
<H3C> reset alarm history
<H3C> display alarm history
# 应该显示:No alarm information
# 2. 查看存储空间
<H3C> dir flash:/
# 检查告警日志文件是否被删除
# 3. 查看系统日志确认清除操作
<H3C> display logbuffer | include alarm
# 应该有类似:Alarm history cleared
五、批量清除脚本
如果需要定期自动清除,可以创建脚本:
1. 命令行脚本
#!/bin/bash
# 清除H3C设备告警历史脚本
HOSTS=("192.168.1.1" "192.168.1.2" "192.168.1.3")
USERNAME="admin"
PASSWORD="password"
LOG_FILE="/var/log/alarm_clear.log"
for HOST in ${HOSTS[@]}; do
echo "Clearing alarm history on $HOST" >> $LOG_FILE
echo "Date: $(date)" >> $LOG_FILE
# 通过SSH执行命令
sshpass -p "$PASSWORD" ssh -o StrictHostKeyChecking=no $USERNAME@$HOST << 'EOF'
display alarm history | tail -20 > flash:/alarm_backup_$(date +%Y%m%d).txt
reset alarm history
display alarm history
echo "Alarm history cleared at $(date)"
EOF
if [ $? -eq 0 ]; then
echo "Success: $HOST" >> $LOG_FILE
else
echo "Failed: $HOST" >> $LOG_FILE
fi
done
2. Python自动化脚本
import paramiko
import datetime
import os
def clear_alarm_history(host, username, password, port=22):
"""清除H3C设备告警历史"""
try:
# 创建SSH连接
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(host, port, username, password, timeout=10)
# 创建交互式shell
channel = ssh.invoke_shell()
# 备份当前告警
commands = [
'display alarm history',
'reset alarm history',
'display alarm history',
'save',
'y\n'
]
for cmd in commands:
channel.send(cmd + '\n')
time.sleep(1)
output = channel.recv(9999).decode('utf-8')
print(f"[{host}] {cmd}: {output[:100]}...")
ssh.close()
return True
except Exception as e:
print(f"Error clearing alarm on {host}: {e}")
return False
# 批量清除
devices = [
{'host': '192.168.1.1', 'user': 'admin', 'pass': 'admin123'},
{'host': '192.168.1.2', 'user': 'admin', 'pass': 'admin123'},
]
for device in devices:
clear_alarm_history(device['host'], device['user'], device['pass'])
六、注意事项
1. 清除前的检查
# 确认是否有未处理的紧急告警
<H3C> display alarm | include Critical|Major
# 检查告警是否已恢复
<H3C> display alarm active
<H3C> display alarm statistics
2. 保存配置
# 清除后保存配置(某些设备需要)
<H3C> save
# 或强制保存
<H3C> save force
3. 权限要求
需要管理员权限(level-3)
有些设备需要进入系统视图
七、替代方案:告警归档
如果不希望完全清除,可以归档:
1. 导出告警到服务器
# 通过FTP/TFTP导出
<H3C> copy alarm.log tftp://192.168.1.100/alarm_archive_20250129.log
# 通过SFTP导出
<H3C> copy alarm.log sftp://admin@192.168.1.100/alarm_archive.log
2. 自动归档脚本
# 创建定时任务自动归档
job ARCHIVE-ALARM
view monitor
command 1 display alarm history > flash:/alarm_$(date).txt
command 2 copy flash:/alarm_$(date).txt tftp://192.168.1.100/
command 3 reset alarm history
command 4 delete /unreserved flash:/alarm_*.txt
scheduler schedule DAILY-ARCHIVE
job ARCHIVE-ALARM
time repeating at 23:59 daily
八、常见问题解决
Q1:reset alarm history命令不存在?
# 尝试不同版本的命令
<H3C> reset alarm-log history
<H3C> reset alarm-record
<H3C> clear alarm history
<H3C> delete alarm history
Q2:清除后设备重启,告警历史又出现了?
# 这种情况说明告警保存在配置文件中
<H3C> display saved-configuration | include alarm
# 需要清除配置文件中的告警设置
<H3C> undo alarm enable
<H3C> save
Q3:如何只清除特定类型的告警?
# 没有直接命令,但可以通过脚本筛选
# 或者先导出,然后重新生成
<H3C> display alarm history | exclude Minor > flash:/temp.log
<H3C> reset alarm history
九、最佳实践
1. 定期维护计划
# 每周自动清除(保留7天)
0 2 * * 0 /scripts/clear_alarm.sh
2. 告警管理流程
1. 每周一:检查告警历史
2. 确认无未处理紧急告警
3. 导出告警到日志服务器
4. 清除设备上的告警历史
5. 记录清除操作
3. 监控与告警
# 配置告警阈值监控
alarm threshold cpu-usage 80
alarm threshold memory-usage 90
# 配置告警通知
snmp-agent trap enable alarm
snmp-agent target-host trap address udp-domain 192.168.1.100 params securityname public
十、联系H3C技术支持
如果遇到问题,联系技术支持时需要提供:
# 设备信息
display version
display device
# 告警信息
display alarm history
display alarm statistics
# 配置信息
display current-configuration | include alarm
技术支持热线:400-810-0504
总结
核心命令:reset alarm history
操作流程:
先导出或查看当前告警
确认可以清除
执行清除命令
验证清除结果
保存配置
注意事项:
清除前务必备份重要告警
确认清除不影响故障排查
建立定期维护机制
不同设备型号可能命令略有差异
如果reset alarm history命令不可用,尝试使用reset alarm-log或联系H3C技术支持获取针对您设备型号的具体方法。
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论