Windows查看并导出事件日志
程序报错、服务启动失败或连接异常时,应先保存对应时段的Windows事件日志,再做可能改变现场的操作。事件日志能提供时间、来源和错误内容,但一条错误或一次异常关机记录,不能单独证明故障责任或根因。本文教按时间筛选并导出,不清空日志。
先记下发生时间和环境
- 异常开始和结束时间,以及服务器时区;向支持描述时同时写明北京时间或其他明确时区。
- 操作发生在哪台实例、哪个Windows账号、哪个应用或服务上。
- 完整错误文字和已经做过的操作,不只截取“失败”两个字。
- 与故障相关的应用日志另行保存;Windows系统日志不包含所有程序自己的详细记录。
在事件查看器筛选
- 在服务器按Win+R运行eventvwr.msc。打开“Windows日志→系统”,查看驱动、系统组件和服务相关记录;程序问题再看“应用程序”。
- 在右侧选择“筛选当前日志”。把“已记录”设置为自定义时间范围,包含异常之前和恢复之后的一段时间,避免只选到单个瞬间。
- 按需要选择级别或事件来源,但第一次采集不要把信息级别一概排除,周边正常启动、停止记录也可能有用。
- 点击相关事件,阅读下方“常规”和“详细信息”。记录事件ID、来源、时间及完整说明,不能把不同来源的同一数字ID当成相同问题。
保存可供分析的文件
- 在已经筛选的通道右侧选择保存筛选后日志的功能,保存为.evtx,文件名写明实例、通道和时间范围。
- 导出时如询问是否保存显示信息,可按接收方分析环境选择相应语言信息。保留原.evtx,截图只作为重点提示。
- 分别保存必要的“系统”和“应用程序”通道。涉及特定组件时,在“应用程序和服务日志”中打开对应通道,不盲目导出整个系统全部日志。
- 将导出的文件在事件查看器中重新打开,确认时间范围和关键事件可读取,原始文件在自己控制的目录留存;工单中先提供必要错误文字和脱敏截图。
使用命令导出整个通道
如果图形界面不可用,可以在管理员PowerShell导出通道。下面会导出整个System和Application通道,而不是刚才图形界面的筛选结果;提交前评估文件体积和敏感信息范围。
$out = Join-Path $env:USERPROFILE "Desktop\BaoleLogs"
New-Item -ItemType Directory -Path $out -Force | Out-Null
wevtutil epl System "$out\System.evtx"
wevtutil epl Application "$out\Application.evtx"
导出不会清空现有日志。不要把epl误改成cl;cl是清除操作,不是保存证据。命令报拒绝访问时,先确认权限和通道名称,不通过关闭日志服务绕过。
工单中附上什么
正文写明实例ID、明确时区下的异常时间、完整错误、业务影响和复现步骤,粘贴必要的错误片段或上传脱敏截图。目前工单表单列出的附件格式为jpg、gif、jpeg、png,不能直接把.evtx、txt或压缩包当作工单附件上传。原始.evtx和应用日志先在自己控制的位置留存;确需提供原文件时,先向支持核实官方安全接收方式。日志可能包含用户名、内部地址和业务路径,不公开上传完整安全日志。异常重启类问题可继续阅读相应专题,保留现场优先于反复重启。