Computer >> Máy Tính >  >> Hệ thống >> máy chủ Windows

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Dịch vụ báo cáo lỗi Windows (WER) được sử dụng để thu thập thông tin gỡ lỗi về lỗi hệ thống và ứng dụng của bên thứ ba, đồng thời gửi báo cáo lỗi đến máy chủ Microsoft. Thông tin này sẽ được MSFT phân tích và nếu có giải pháp, nó sẽ được gửi đến người dùng thông qua Phản hồi báo cáo lỗi của Windows. Trên thực tế, ít người sử dụng tính năng này, mặc dù Microsoft luôn để mặc định bật dịch vụ WER trong các phiên bản Windows mới nhất. Trong hầu hết các trường hợp, mọi người nhớ về WER khi họ nhìn thấy C:\ ProgramData \ Microsoft \ Windows \ WER \ ReportQueue \ chiếm nhiều dung lượng trên ổ đĩa hệ thống (lên đến vài chục GB) mặc dù tính năng nén NTFS được bật cho thư mục này theo mặc định.

Nội dung:

  • Dịch vụ báo cáo lỗi của Windows
  • Cách xóa thư mục WER \ ReportQueue trên Windows?
  • Tắt báo cáo lỗi Windows trên Windows Server
  • Cách tắt hoặc bật báo cáo lỗi trên Windows 10?
  • Cách tắt báo cáo lỗi Windows tự động qua GPO?

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Dịch vụ Báo cáo Lỗi Windows

Báo cáo lỗi Windows hiển thị hộp thoại khi xảy ra lỗi ứng dụng, nhắc bạn gửi báo cáo lỗi cho Microsoft. Khi bạn thấy “YourAppName.exe has stopped working, Windows is collecting more information about the problem ”Thông báo lỗi trong Windows, dịch vụ Báo cáo Lỗi Windows chạy công cụ WerFault.exe để thu thập dữ liệu gỡ lỗi (có thể bao gồm một kết xuất bộ nhớ).

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Dữ liệu người dùng được lưu vào hồ sơ người dùng:

%USERPROFILE%\AppData\Local\Microsoft\Windows\WER\

Và dữ liệu hệ thống chuyển đến thư mục ProgramData:

%ALLUSERSPROFILE%\Microsoft\Windows\WER\

Dịch vụ Báo cáo Lỗi Windows là một dịch vụ Windows riêng biệt. Bạn có thể kiểm tra trạng thái của dịch vụ bằng lệnh PowerShell:

Get-Service WerSvc

Trong thư mục WER \ ReportQueue \ có rất nhiều thư mục có tên ở định dạng sau:

  • Critical_6.3.9600.11285_ {ID} _00000000_cab_3212dd23
  • Critical_powershell.exe_ {ID} _cab_332a45c5
  • Critical_sqlservr.exe __ {ID} _cab_b3a200181
  • NonCritical_7.9.9600.11285 __ {ID} _0bfab19a
  • AppCrash_cmd.exe_ {ID} _dba332ad_12eb5425

Như bạn có thể thấy, tên thư mục chứa mức độ nghiêm trọng của sự kiện và tên của tệp EXE cụ thể đã bị lỗi. Trong tất cả các thư mục, có một tệp được gọi là Report.wer , trong đó có mô tả về các lỗi và một số tệp với thông tin bổ sung.

Cách xóa thư mục WER \ ReportQueue trên Windows?

Thông thường, kích thước của mỗi thư mục nhỏ, nhưng trong một số trường hợp, kết xuất bộ nhớ được tạo ra cho một quá trình có vấn đề chiếm nhiều dung lượng. Ảnh chụp màn hình bên dưới cho thấy kích thước của memory.hdmp là khoảng 610 MB. Một vài kết xuất như vậy có thể chiếm vài gigabyte trên ổ đĩa hệ thống.

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Để xóa tất cả các lỗi và nhật ký này bằng các công cụ tích hợp, hãy mở Bảng điều khiển và đi tới Hệ thống và bảo mật -> Bảo mật và bảo trì -> Bảo trì -> Xem lịch sử độ tin cậy -> Xem tất cả báo cáo sự cố, sau đó nhấp vào Xóa tất cả các báo cáo sự cố .

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Để nhanh chóng giải phóng một số dung lượng ổ đĩa, bạn có thể xóa thủ công các tệp nhật ký và gỡ lỗi được tạo bởi dịch vụ WER trong các thư mục sau:

  • C:\ ProgramData \ Microsoft \ Windows \ WER \ ReportArchive \
  • C:\ ProgramData \ Microsoft \ Windows \ WER \ ReportQueue \

Các lệnh PowerShell sau sẽ xóa tất cả các tệp cũ hơn 30 ngày khỏi thư mục WER:

Get-ChildItem -Path  'C:\ProgramData\Microsoft\Windows\WER\ReportArchive' -Recurse | Where-Object CreationTime -lt (Get-Date).AddDays(-30) | Remove-Item -Force -Recurse
Get-ChildItem -Path  'C:\ProgramData\Microsoft\Windows\WER\ReportQueue' -Recurse | Where-Object CreationTime -lt (Get-Date).AddDays(-30) | Remove-Item -Force –Recurse

Để xóa các thư mục WER trong tất cả hồ sơ người dùng, hãy sử dụng tập lệnh PowerShell sau:

$users = Get-ChildItem c:\users|where{$_.name -notmatch 'Public|default'}
foreach ($user in $users){
Get-ChildItem "C:\Users\$User\AppData\Local\Microsoft\Windows\WER\ " –Recurse -ErrorAction SilentlyContinue | Remove-Item –force –Recurse
}

Tắt báo cáo lỗi Windows trên Windows Server

Trên Windows Server 2019/2016 / 2012R2, bạn có thể quản lý trạng thái dịch vụ WER bằng PowerShell. Bạn có thể tắt dịch vụ báo cáo lỗi của Windows:

Get-Service WerSvc| stop-service –passthru -force
Set-Service WerSvc –startuptype manual –passthru

Nhưng có nhiều cách tốt hơn để tắt WER trên Windows. Phiên bản PowerShell 4.0 thêm một mô-đun WindowsErrorReporting riêng biệt:

Get-Command -Module WindowsErrorReporting

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Bạn có thể kiểm tra trạng thái của dịch vụ Báo cáo lỗi Windows bằng lệnh:

Get-WindowsErrorReporting

Để tắt WER, hãy chạy:

Disable-WindowsErrorReporting

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Trên Windows Server 2012 R2, bạn có thể tắt Báo cáo lỗi Windows thông qua bảng điều khiển (Bảng điều khiển -> Hệ thống và bảo mật -> Trung tâm hành động -> Bảo trì -> Cài đặt -> chọn Tôi không muốn tham gia và không tham gia ' t hỏi lại tôi .

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Cách tắt hoặc bật báo cáo lỗi trên Windows 10?

Trong Windows 10, bạn không thể vô hiệu hóa Báo cáo lỗi thông qua Bảng điều khiển. Bạn có thể kiểm tra trạng thái thành phần trong Bảng điều khiển -> Hệ thống &Bảo mật -> Bảo mật và Bảo trì -> Bảo trì . Như bạn có thể thấy, phần Báo cáo sự cố tham số được bật.

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Bạn có thể tắt Báo cáo lỗi Windows trên Windows 10 thông qua sổ đăng ký. Để thực hiện, hãy tạo một tham số DWORD (32-bit) mới với tên Đã tắt và giá trị 1 trong khóa đăng ký HKLM \ SOFTWARE \ Microsoft \ Windows \ Windows Báo cáo lỗi.

Bạn có thể tắt tính năng thu thập lỗi của Windows cho người dùng cụ thể bằng lệnh:
reg add "HKCU\Software\Microsoft\Windows\Windows Error Reporting" /v "Disabled" /t REG_DWORD /d "1" /f

Hoặc tắt WER cho mọi người:
reg add "HKLM\Software\Microsoft\Windows\Windows Error Reporting" /v "Disabled" /t REG_DWORD /d "1" /f

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Bây giờ, hãy kiểm tra trạng thái của Báo cáo sự cố trong Control Panel một lần nữa. Nó phải được Tắt .

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Bạn có thể triển khai tham số đăng ký này cho các máy tính miền thông qua GPO.

Cách tắt báo cáo lỗi Windows tự động qua GPO?

Bạn có thể tắt ghi nhật ký bằng dịch vụ Báo cáo Lỗi của Windows thông qua Chính sách Nhóm. Mở cục bộ (gpedit.msc ) hoặc GPO miền (gpmc.msc ) và chuyển đến phần GPO sau Cấu hình máy tính -> Mẫu quản trị -> Cấu phần Windows -> Báo cáo lỗi Windows . Tìm chính sách có tên Tắt báo cáo lỗi Windows và đặt nó thành Đã bật . Điều này sẽ tắt tính năng thu thập dữ liệu của Windows và báo cáo lỗi.

Có một chính sách tương tự trong phần Cấu hình người dùng.

Làm thế nào để vô hiệu hóa báo cáo lỗi Windows và xóa thư mục WER \ ReportQueue trên Windows?

Cập nhật cài đặt GPO (không cần khởi động lại).

Do đó, Windows sẽ không tạo ra các thông báo lỗi ứng dụng và hệ thống nữa và sẽ không được gửi đến Microsoft nữa.