Có cách nào để theo dõi lý do 'fseventsd' xử lý CPU không?


11

Tôi chạy Mac OSX 10.6 và nhận thấy rằng một quá trình 'fseventsd' đã lấy 100% CPU và 1,5G RAM. Thực hiện tìm kiếm trên google, tôi thấy rằng điều này có thể được gắn với Time Machine. Tuy nhiên, tôi không chạy Time Machine trên máy tính này.

Có cách nào để truy tìm nguồn gốc của lợn không? Nó đăng nhập vào bất cứ nơi nào? Khởi động lại 'đã khắc phục' sự cố, nhưng tôi chắc chắn rằng nó sẽ quay trở lại nếu tôi không thể hiểu tại sao nó lại bắt đầu ở nơi đầu tiên.

Cảm ơn trước.


Bạn đã bao giờ tìm thấy nguồn? Chúng tôi đang gặp vấn đề tương tự trên máy chủ báo tuyết của chúng tôi. Tôi có thể thử khởi động lại nhưng tôi không thể làm điều đó cho đến tối nay.
Greg W

Tôi đã không bật nó lên kể từ khi khởi động lại, may mắn thay, vì vậy tôi vẫn không biết nguồn
DTest

Tôi có cùng một vấn đề. Khởi động lại không giúp được gì. Sau 20 đến 30 phút, fseventsd bắt đầu lại để lấy 99% CPU. Macbook không im lặng nữa ...
Laurent K

Câu trả lời:


7

fseventd là quá trình ghi nhật ký sự kiện hệ thống tập tin, bạn có thể đọc rất nhiều về nó trong bài đánh giá ars technica của Mac OS X Leopard. Bạn có thể sử dụng các chương trình như fseventer để xem cùng loại đầu ra mà nó nhìn thấy.

Từ bài viết:

Khung FSEvents dựa trên một tiến trình daemon duy nhất, chạy liên tục được gọi là fseventsd đọc từ / dev / fsevents và ghi các sự kiện vào tệp nhật ký trên đĩa (được lưu trữ trong thư mục .fseventsd ở thư mục gốc của các sự kiện). Đó là nó. Đó là giải pháp siêu công nghệ cao: chỉ cần viết các sự kiện vào một tệp nhật ký. Chán, thực dụng, nhưng khá hiệu quả.

Bạn có thể kiểm tra nhật ký đó mặc dù tôi không biết nó sẽ hữu ích như thế nào đối với bạn. Tôi sẽ không ngạc nhiên khi thấy Time Machine, nơi xử lý nhiều tệp, và đôi khi nhiều tệp nhỏ, có thể gây ra một số vấn đề với các fsevents.


Hy vọng rằng đó không phải là cỗ máy thời gian, vì điều này bị vô hiệu hóa! Dù sao, tôi đang đọc trên fseventer, vì vậy cảm ơn vì lời đề nghị.
DTest

3

Một trong hai chương trình đã bị mắc kẹt trong một thay đổi viết vòng lặp rất hiệu quả gây ra fseventsdnhiều công việc hoặc chính nó là một vòng lặp vô hạn xử lý cấu trúc dữ liệu không thể giải quyết được trên một trong các khối được gắn.

Trong trường hợp trước - các chương trình như fseventer đọc cùng một luồng dữ liệu cũng có khả năng bị treo - giờ đây bạn sẽ có hai quy trình sử dụng 50% khi cố gắng xử lý một lượng dữ liệu vô hạn. (Đây là một điểm dữ liệu tuyệt vời nếu bạn chọc để xem có gì không ổn.) Thật khó chịu khi đặt câu hỏi tại sao lại syslogdlấy hết CPU - thường thì một số chương trình khác bị hỏng khiến nó hoạt động rất nhiều.

Khi / nếu nó xảy ra một lần nữa - bắt đầu thoát khỏi chương trình và xem xét đăng xuất. Bạn sẽ biết liệu mục vi phạm là quy trình cấp hệ thống hay quy trình cấp người dùng. fs_usagecó thể hữu ích để xem những chương trình cụ thể nào nặng IO.

fsck từ khởi động vào chế độ người dùng thường được yêu cầu nếu bạn có các liên kết cứng tròn hoặc các shenanigans hệ thống tệp suy biến khác có thể gây ra loại đột biến này trong hoạt động.


Vâng, xin lỗi nếu tôi không rõ ràng, bạn chắc chắn không thể mở fseventer trong khi câu tục ngữ đánh vào người hâm mộ. Tôi chỉ có ý nghĩa nhiều hơn để cung cấp cho bạn một loại mực vào loại dữ liệu nào được ghi lại và có thể xem được, như fs_usage.
ConstantineK

Tôi thích học về fseventer - nhìn rất đẹp. Không có thất bại - chỉ là dữ liệu.
bmike

Ồ, cảm ơn vì lời khuyên về 'fs_usage'. Và vâng, tôi đoán rằng nó không thực sự gây ra tải, mà là một số chương trình khác. Tôi mong đợi một vòng lặp ở đâu đó. Bên cạnh đó, máy đã chạy tải bình thường trong 24 giờ hoặc lâu hơn và nó đã không xảy ra lần nữa.
DTest
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.