Riwayat proses dalam sistem Unix / Linux


11

Saya tahu itu ps -eflmenunjukkan proses yang berjalan pada sistem * nix.

Saya ingin memeriksa riwayat proses (masa lalu) yang telah dijalankan pada mesin tertentu, terutama dengan semua informasi yang psdisediakan (yaitu %CPU, %MEM).

Utilitas baris perintah apa yang dapat saya gunakan, apakah informasi ini disimpan di suatu tempat mirip dengan .bash_historyfile?


2
Pada * nix , itu agaknya ps -efl. ps auxhanya untuk BSD / Linux.
— Stéphane Chazelas

Anda berpotensi mengatur SNMP dan sesuatu untuk polling daemon SNMP secara berkala untuk mencapai ini. Saya telah melakukan ini untuk penggunaan Memori untuk proses selama periode waktu tertentu.
— Lawrence

seperti yang dijelaskan di sini: serverfault.com/questions/386956/pid-history-of-a-process , beberapa proses menerbitkan PID di sana ke syslog (atau dapat dibuat untuk melakukannya).
— billc

Jawaban:


5

Coba atop. Itu dapat menyimpan sejarah yang dapat dikonfigurasi dari berbagai informasi sistem (proses, dan CPU, memori, disk dan penggunaan jaringan). Catatan: tentu saja tidak bisa merekam semuanya; itu hanya membutuhkan "snapshot" secara berkala.

EDIT: Dalam hal ini tidak jelas, ada atopdaemon yang melakukan snapshot berkala, disimpan di /var/log/atop(direktori yang digunakan di bawah Debian).


2
Mungkin patut diperhatikan: tidak bisa melihat ke masa lalu, ia hanya melihat proses saat sedang berjalan.
— guntbert

3
@ Guntbert Karena secara berkala menyimpan apa yang dilihatnya dan orang dapat memutar ulang itu dengan -ropsi, itu cara untuk melihat ke masa lalu.
— vinc17

2
Benar (itu sebabnya saya katakan "mungkin"), tetapi itu tentu saja berfungsi hanya setelah memulai layanan, sedangkan OP mungkin mengharapkan untuk melihat apa yang terjadi bahkan sebelumnya.
— guntbert
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.