CPUSTAT - Memantau penggunaan CPU dengan menjalankan proses di Linux
- 2080
- 556
- Clarence Tromp
Cpustat adalah program ukuran prestasi sistem yang kuat untuk linux, yang ditulis menggunakan bahasa pengaturcaraan Go. Ia cuba untuk mendedahkan penggunaan dan ketepuan CPU dengan cara yang berkesan, menggunakan kaedah ketepuan dan kesilapan (penggunaan) penggunaan (metodologi untuk menganalisis prestasi mana -mana sistem).
Ia mengekstrak sampel frekuensi yang lebih tinggi dari setiap proses yang dilaksanakan pada sistem dan kemudian meringkaskan sampel ini pada frekuensi yang lebih rendah. Sebagai contoh, ia dapat mengukur setiap proses setiap 200ms dan meringkaskan sampel ini setiap 5 detik, termasuk nilai min/purata/maksimum untuk metrik tertentu.
Cadangan Baca: 20 Alat baris arahan untuk memantau prestasi linux
Cpustat output data dalam dua cara yang mungkin: senarai teks tulen selang ringkasan dan papan pemuka menatal berwarna -warni setiap sampel.
Cara memasang cpustat di linux
Awak mesti ada Pergi (Golang) dipasang pada sistem linux anda untuk digunakan cpustat, Klik pada pautan di bawah untuk mengikuti langkah pemasangan Golang iaitu jika anda tidak memasangnya:
- Pasang Golang (GO Language Programming) di Linux
Sebaik sahaja anda memasang Pergi, Taipkan pergi ambil perintah di bawah untuk memasangnya, arahan ini akan memasang cpustat binari di dalam anda Gobin berubah -ubah:
# pergi mendapatkan github.com/uber-common/cpustat
Cara menggunakan cpustat di linux
Apabila proses pemasangan selesai, jalankan cpustat Seperti berikut dengan keistimewaan akar menggunakan arahan sudo iaitu jika anda mengawal sistem sebagai pengguna bukan akar, jika tidak, anda akan mendapat ralat seperti yang ditunjukkan:
$ $ Gobin/cpustat Program ini menggunakan antara muka NetLink TaskStats, jadi ia mesti dijalankan sebagai root.
Catatan: Untuk berlari cpustat Serta semua program GO lain yang telah anda pasangkan pada sistem anda seperti arahan lain, termasuk Gobin pemboleh ubah dalam anda Jalan pembolehubah persekitaran. Buka pautan di bawah untuk mengetahui cara menetapkan pembolehubah laluan di Linux.
- Ketahui Cara Menetapkan Pembolehubah Laluan $ Anda secara kekal di Linux
Ini adalah caranya cpustat kerja; The /Proc
Direktori dipersoalkan untuk mendapatkan senarai ID proses semasa untuk setiap selang, dan:
- Untuk setiap PID, baca /Proc/PID/STAT, kemudian mengira perbezaan dari sampel sebelumnya.
- Sekiranya ia adalah PID baru, baca /Proc/PID/Cmdline.
- Untuk setiap PID, hantar mesej netlink untuk mengambil tugas tugas, mengira perbezaan dari sampel sebelumnya.
- ambil /Proc/Stat untuk mendapatkan statistik sistem keseluruhan.
Sekali lagi, setiap selang tidur diselaraskan untuk menyumbang jumlah masa yang digunakan untuk mengambil semua statistik ini. Selain itu, setiap sampel juga merekodkan masa yang diperlukan untuk skala setiap pengukuran dengan masa berlalu sebenar antara sampel. Ini cuba untuk menyumbang kelewatan di cpustat sendiri.
Semasa berlari tanpa sebarang hujah, cpustat Akan memaparkan perkara berikut secara lalai: Selang pensampelan: 200ms, Ringkasan Selang: 2s (10 sampel), menunjukkan 10 proc, penapis pengguna: semua, penapis PID: semua seperti yang ditunjukkan dalam tangkapan skrin di bawah:
$ sudo $ gobin/cpustatCPUSTAT - Monitor penggunaan CPU Linux
Dari output di atas, berikut adalah makna metrik ringkasan seluruh sistem yang dipaparkan sebelum medan:
- usr - mod pengguna min/avg/max menjalankan masa sebagai peratusan CPU.
- sys - Mod Sistem Min/AVG/Max menjalankan masa sebagai peratusan CPU.
- Bagus - MOD MIN/AVG/MAX MODe Rendah Priority Run Time sebagai peratusan CPU.
- terbiar - mod pengguna min/avg/max menjalankan masa sebagai peratusan CPU.
- Iowait - MIN/AVG/MAX Masa kelewatan menunggu cakera io.
- Prun - Min/AVG/Max Mengira proses dalam keadaan runnable (sama dengan purata beban).
- Pblock - Min/AVG/Max Count Proses disekat pada cakera io.
- pstart - Bilangan proses/benang bermula dalam selang ringkasan ini.
Masih dari output di atas, untuk proses tertentu, lajur yang berbeza bermaksud:
- nama - Nama proses biasa dari/proc/pid/stat atau/proc/pid/cmdline.
- pid - ID proses, juga disebut sebagai "TGID".
- min - Sampel Masa Pengguna+Terendah untuk PID, diukur dari/Proc/PID/STAT. Skala adalah peratusan CPU.
- maks - Sampel tertinggi pengguna+masa sistem untuk PID ini, juga diukur dari/Proc/PID/STAT.
- usr - Purata masa pengguna untuk PID sepanjang tempoh ringkasan, diukur dari/Proc/PID/STAT.
- sys - Masa sistem purata untuk PID sepanjang tempoh ringkasan, diukur dari/Proc/PID/STAT.
- Bagus - Menunjukkan nilai "bagus" semasa untuk proses, diukur dari/proc/pid/stat. Lebih tinggi bermaksud "lebih baik".
- Runq - masa proses dan semua benangnya dibelanjakan tetapi menunggu untuk dijalankan, diukur dari tugas melalui netlink. Skala adalah peratusan CPU.
- iow - masa proses dan semua benangnya yang dibelanjakan disekat oleh cakera io, diukur dari taskStats melalui netlink. Skala adalah peratusan CPU, purata sepanjang selang ringkasan.
- bertukar - masa proses dan semua benangnya menghabiskan menunggu untuk ditukar, diukur dari tugas melalui netlink. Skala adalah peratusan CPU, purata sepanjang selang ringkasan.
- VCX dan ICX - Jumlah bilangan suis konteks sukarela dengan proses dan semua benangnya sepanjang selang ringkasan, diukur dari tugas melalui netlink.
- RSS - Nilai RSS semasa diambil dari/Proc/PID/STAT. Ia adalah jumlah memori proses ini menggunakan.
- ctime - Jumlah Pengguna+SYS CPU Masa yang digunakan oleh menunggu kanak -kanak yang keluar semasa selang ringkasan ini, diukur dari/proc/pid/stat.
Perhatikan bahawa proses kanak -kanak yang lama sering boleh mengelirukan pengukuran ini, kerana masa dilaporkan hanya apabila proses anak keluar. Walau bagaimanapun, ini berguna untuk mengukur kesan pekerjaan kron yang kerap dan pemeriksaan kesihatan di mana masa CPU sering digunakan oleh banyak proses kanak -kanak.
- Thrd - Bilangan benang pada akhir selang ringkasan, diukur dari/proc/pid/stat.
- Sam - Bilangan sampel untuk proses ini termasuk dalam selang ringkasan. Proses yang baru -baru ini bermula atau keluar mungkin dapat dilihat untuk sampel yang lebih sedikit daripada selang ringkasan.
Perintah berikut memaparkan proses pengguna akar 10 teratas yang berjalan pada sistem:
$ sudo $ gobin/cpustat -u rootCari proses berjalan pengguna akar
Untuk memaparkan output dalam mod terminal mewah, gunakan -t
Bendera seperti berikut:
$ sudo $ gobin/cpustat -u roo -tPenggunaan proses berjalan pengguna akar
Untuk melihat bilangan proses X atas (lalai adalah 10), anda boleh menggunakan -n
Bendera, arahan berikut menunjukkan proses 20 Linux teratas yang berjalan pada sistem:
$ sudo $ gobin/cpustat -n 20
Anda juga boleh menulis profil CPU ke fail menggunakan -cpuprofile
pilihan seperti berikut dan kemudian gunakan arahan CAT untuk melihat fail:
$ sudo $ gobin/cpustat -cpuprofile cpuprof.TXT $ CAT CPUPROF.txt
Untuk memaparkan maklumat bantuan, gunakan -h
Bendera seperti berikut:
$ sudo $ gobin/cpustat -h
Cari maklumat tambahan dari repositori Cpustat GitHub: https: // github.com/uber-common/cpustat
Itu sahaja! Dalam artikel ini, kami menunjukkan kepada anda cara memasang dan menggunakan cpustat, alat pengukuran prestasi sistem yang berguna untuk linux. Kongsi pendapat anda dengan kami melalui bahagian komen di bawah.
- « Komander Awan - Pengurus Fail Web untuk mengawal fail dan program Linux melalui penyemak imbas
- NTFY - Dapatkan Makluman Desktop atau Telefon Semasa Perintah Lama Selesai »