Domanda Strumenti di monitoraggio del sistema per Ubuntu


Sto cercando strumenti di monitoraggio del sistema che sono GUI e Cli o Basato sul Web che include Di base  funzioni ad esempio

  • Uso della CPU

  • Utilizzo della RAM

  • Utilizzo swap

  • Utilizzo del disco (Spazio / I / O)

  • Monitoraggio del calore

So che ci sono molti strumenti che posso usare, ma sto cercando un singolo strumento che abbia queste funzioni di base.


135
2018-05-10 09:13


origine




risposte:


Sguardi: un occhio sul tuo sistema

sguardi è un software gratuito (concesso sotto licenza LGPL) per monitorare il tuo sistema operativo GNU / Linux o BSD da un'interfaccia testuale. Glances usa la libreria libstatgrab per recuperare informazioni dal tuo sistema ed è sviluppata in Python.

Installazione

Apri un terminale (Ctrl+alt+T) ed esegui i seguenti comandi:

Da Ubuntu 16.04 e successivi puoi semplicemente digitare sudo apt install glances, ma versione 2.3 avere questo bug. Altro:

Installazione facile degli script  sguardi

curl -L https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/install.sh | sudo /bin/bash

O

wget -O- https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/install.sh | sudo /bin/bash

Installazione manuale 

sudo apt-get install python-pip build-essential python-dev lm-sensors
sudo pip install psutil logutils bottle batinfo https://bitbucket.org/gleb_zhulik/py3sensors/get/tip.tar.gz zeroconf netifaces pymdstat influxdb elasticsearch potsdb statsd pystache docker-py pysnmp pika py-cpuinfo bernhard
sudo pip install glances

Utilizzo di base

Iniziare glances semplicemente scrivi glances nel terminale.

screenshot

In poche parole vedrai molte informazioni sulle risorse del tuo sistema: CPU, Load, Memory, Swap Network, Disk I / O e Process tutto in un'unica pagina, per impostazione predefinita il codice colore significa:

GREEN : the statistic is “OK”
BLUE : the statistic is “CAREFUL” (to watch)
VIOLET : the statistic is “WARNING” (alert)
RED : the statistic is “CRITICAL” (critical)

Quando Glance è in esecuzione, puoi premere alcuni tasti speciali per dare comandi ad esso:

c: Sort processes by CPU%  
m: Sort processes by MEM%  
p: Sort processes by name  
i: Sort processes by IO Rate  
d: Show/hide disk I/O stats  
f: Show/hide file system stats  
n: Show/hide network stats  
s: Show/hide sensors stats  
b: Bit/s or Byte/s for network IO  
w: Delete warning logs  
x: Delete warning and critical logs  
1: Global CPU or Per Core stats  
h: Show/hide this help message  
q: Quit (Esc and Ctrl-C also work)  
l: Show/hide log messages

Cpu, Ram, Swap Monitoring

screenshot

Monitoraggio del disco

screenshot

Sistema di monitoraggio del calore

Se si digita glances --help troverai ( -e Abilita il modulo sensori (solo per Linux))

glances -e

screenshot

screenshot

File di configurazione

È possibile impostare le soglie nel file di configurazione di Glances, su GNU / Linux, il file di configurazione predefinito si trova in /etc/glances/glances.conf.

Modalità client / server

Un'altra caratteristica interessante di questo strumento di monitoraggio è che è possibile avviarlo in modalità server digitando semplicemente glances -s, questo darà un output come il server di Glances è in esecuzione su 0.0.0.0:61209 e ora puoi collegarti ad esso da un altro computer usando le occhiate -c @server dove @server è l'indirizzo IP o il nome host del server.

Glances utilizza un server XML / RPC e può essere utilizzato da un altro software client. In modalità server, è possibile impostare l'indirizzo di binding (-B ADDRESS) e ascoltare la porta TCP (-p PORT), l'indirizzo di binding predefinito è 0.0.0.0 (Glances ascolterà su tutte le interfacce di rete) e la porta TCP è 61209. In modalità client, è possibile impostare la porta TCP del server (porta -p). In modalità client / server, i limiti sono impostati dal lato server. La versione 1.6 introduce una password opzionale per accedere al server (password -P) che se impostata sul server deve essere utilizzata anche sul client.

Altre fonti:  PyPI, Github, Linuxaria

Aggiornare

Monitorare il contenitore juju solo per esempio come sono le cose Immagine grande

Nel terminale n. 1, Glances è in esecuzione in modalità server, nel terminale n. 2 il contenitore juju è in esecuzione apt-get update& Nel terminale 3 glances -c 192.168.1.103 Glances è collegato al contenitore ip

screenshot

Guarda l'utilizzo della CPU

Le stesse occhiate sembrano richiedere picchi di tempo di utilizzo della cpu mentre sono attive, come evidenziato dal grafico di utilizzo del monitor integrato nel sistema. Se il grafico è accurato, allora usando gli sguardi si arrende circa 1/4 di una CPU su un sistema. Questo mio effetto è valido per coloro che stanno monitorando i carichi della CPU sui server.

glances cpu usage


174
2018-05-10 10:00



:), Sì, è @ B4NZ41 - Qasim
miglior strumento che ho visto .... - Dinesh VG
Consiglio vivamente contro il metodo di installazione "facile" suggerito qui! Piping dati da Internet a un interprete BASH privilegiato è molto insicuro. Se qualcuno ha configurato male il DNS o ha hacked bit.ly, potresti installare qualsiasi cosa sul tuo sistema e potresti non saperlo. - Luke Stanley
io non lo consiglio "Easy Script Installation", installa solo usando i pacchetti. - Pablo Bianchi
Per disinstallare appena sudo pip uninstall glances. - Pablo Bianchi


Indicatore-SysMonitor

Indicatore-SysMonitor fa un po ', ma lo fa bene. Una volta installato ed eseguito, visualizza l'utilizzo della CPU e della RAM sul pannello superiore. Semplice.

enter image description here

Scarica da Qui

Conky 

Uno dei miei preferiti personali

enter image description here

screenlet troverete un mucchio di monitor CPU e RAM in stile diverso inclusi negli screenlet, tutto disponibile nel Software Center di Ubuntu.

enter image description here

sguardi

Installare:

sudo apt-get install python-pip build-essential python-dev
sudo pip install Glances
sudo pip install PySensors

enter image description here

vmstat

Visualizza informazioni su CPU, memoria, processi, ecc.

iostat

Questo strumento da riga di comando visualizzerà statistiche sulla CPU, informazioni I / O per le partizioni del disco rigido, Network File System (NFS), ecc. Per installare iostat, eseguire questo comando:

sudo apt-get install sysstat

Per avviare il report, eseguire questo comando:

iostat

Per controllare solo le statistiche della CPU, utilizzare questo comando:

iostat -c

Per ulteriori parametri, utilizzare questo comando:

iostat --help

mpstat

L'utilità della riga di comando mpstat mostrerà l'utilizzo medio della CPU per processore. Per eseguirlo, usa semplicemente questo comando:

mpstat

Per l'utilizzo della CPU per processore, utilizzare questo comando:

mpstat -P ALL

saidar

Saidar consente inoltre di monitorare le attività del dispositivo di sistema tramite la riga di comando.

enter image description here

È possibile installare è con questo comando:

sudo apt-get install saidar

Per iniziare il monitoraggio, esegui questo comando:

saidar -c -d 1

Le statistiche verranno aggiornate ogni secondo.

GKrellM

GKrellM è un widget personalizzabile con vari temi che vengono visualizzati sulle informazioni del dispositivo del sistema desktop (CPU, temperatura, memoria, rete, ecc.).

enter image description here

Per installare GKrellM, esegui questo comando:

sudo apt-get install gkrellm

Monitorix

Monitorix è un'altra applicazione con un'interfaccia utente basata sul Web per il monitoraggio dei dispositivi di sistema.

enter image description here

Installalo con questi comandi:

sudo add-apt-repository ppa:upubuntu-com/ppa
sudo apt-get update
sudo apt-get install monitorix

Avvia Monitorix tramite questo URL:

http://localhost/monitorix/


31
2018-03-08 09:43



@Qasim Grazie amico. sono contento di ciò - Maythux
Le occhiate sono buone. Quello che mi mostra a volte è qualche registro critico. Dove trovare qual è il problema? Dove sono i log? AVVERTENZA | Registri critici (dura 9 voci) 2016-03-23 ​​19:09:48> 23-03-2017 19:09:54 Utente CPU (72.7 / 76.6 / 80.6) 2016-03-23 ​​19:09:28> 23/03/2016, 19:09:32 CPU IOwait (62.5 / 62.5 / 62.5) 23-03-2017 19:08:45> 23-03-2017 19:08:48 Utente CPU (86.3 / 86.3 / 86.3) ~ 23/03/2016 19:08:16> ___________________ CARICO 5 min (1.0 / 1.1 / 1.2) - Inizio processo: php5-cgi 2016-03-23 ​​19:08:09> 23-03-2016 19:08: 19 CPU IOwait (74.3 / 74.6 / 75.0) - Kangarooo
@Thuener È meglio per te solo leggere e cercare prima questo commento senza senso e sì è ppa :: upubuntu-com / ppa ... rimanda a questo link launchpad.net/~upubuntu-com/+archive/ubuntu/ppa  e penso che sia meglio per te rimuovere il downvote :) - Maythux
Ho usato GKrellM e mi piace molto, specialmente il display del sensore di temperatura. Vorrei che fossero grafici, tuttavia mi consente di sapere come funziona il mio portatile in quanto ha un problema di surriscaldamento. - Heather92065


Di seguito sono riportati gli strumenti per il monitoraggio di un sistema Linux

  1. Comandi di sistema come top, free -m, vmstat, iostat, iotop, sar, netstat ecc. Nulla si avvicina a queste utility linux quando si esegue il debug di un problema. Questi comandi ti danno un'immagine chiara che sta andando all'interno del tuo server
  2. Leone marino: Agent esegue tutti i comandi menzionati in # 1 (anche definiti dall'utente) e le uscite di questi comandi sono accessibili in una bellissima interfaccia web. Questo strumento è utile quando si esegue il debug su centinaia di server poiché l'installazione è chiara. E 'GRATUITO
  3. Nagios: È la madre di tutti gli strumenti di monitoraggio / avviso. È molto personalizzazione ma molto difficile da configurare per i principianti. Esistono set di strumenti chiamati plugin nagios che coprono praticamente tutte le metriche importanti di Linux
  4. Munin
  5. Densità del server: un servizio a pagamento basato sul cloud che raccoglie importanti metriche Linux e offre agli utenti la possibilità di scrivere propri plugin.
  6. Nuova reliquia: un altro servizio di monitoraggio ben noto.
  7. Zabbix

19
2017-11-20 13:30





Negli ultimi anni ho usato:

Indicatore di carico del sistema

enter image description here

Disponibile da Centro Software


9
2018-02-22 21:50



bello: indicatore di carico del sistema - Qasim


superiore

top sta monitorando il software, elencando tutti i processi con l'utilizzo della CPU / RAM, l'utilizzo complessivo della CPU / RAM e altro Inoltre è per lo più installato di default

htop

htop è come una versione estesa di top. Ha tutte le caratteristiche di cui sopra, ma puoi vedere i processi figli e personalizzare la visualizzazione di tutto. Ha anche colori.

iotop

iotop è specifico per il monitoraggio di I / O hard rive Elenca tutti i processi e mostra il loro utilizzo del disco rigido per leggere e scrivere.


7
2018-05-10 10:43



dov'è il monitoraggio del calore? e nella tua risposta hai già incluso 3 utilità ... controlla la domanda ** sto cercando un singolo strumento che abbia qualche funzione di base ** - Qasim
Con i tre strumenti sto solo dando diverse opzioni per l'OP, ma sono deluso nel dire che nessuno di questi ha il monitoraggio del calore - BeryJu
almeno hai provato a rispondere alla domanda ... grazie - Qasim
google (ubuntu di Saidar) - Qasim


Potresti provare Sysmon. Sebbene non sia elegante come Glance, è molto semplice e facile da usare.

Se vuoi sporcarti e fare un po 'di scripting in python, ecco alcune basi del monitoraggio del sistema con Python per iniziare.

Avrai bisogno di un modulo esterno chiamato psutil per monitorare la maggior parte delle cose. È più semplice utilizzare un programma di installazione di moduli esterni invece di creare dalla fonte.

Nota: questi esempi sono scritti in Python 2.7

sudo apt-get install pip
sudo pip install psutil

Ora che abbiamo installato i moduli, possiamo iniziare la codifica.

Per prima cosa, crea un file chiamato usage.py.

gedit ~/usage.py

Inizia con l'importazione psutil

import psutil

Quindi, creare una funzione per monitorare la percentuale in cui i core della CPU sono in esecuzione.

def cpu_perc(): 

    cpu_perc = psutil.cpu_percent(interval=1, percpu=True) 
    for i in range(len(cpu_perc)):
        print "CPU Core", str(i+1),":", str(cpu_perc[i]), "%"

Diamoci un po ', vero?

La prima riga, cpu_num = psutil.cpu_percent(interval=1, percpu=True), trova la percentuale in cui i core della CPU sono in esecuzione e la assegna a una lista chiamata cpu_perc.

Questo ciclo proprio qui

for i in range(len(cpu_num)):
    print "CPU Core", str(i+1),":", str(cpu_perc[i]), "%"

è un ciclo for che stampa la percentuale attuale di ciascun core della CPU.

Aggiungiamo l'utilizzo della RAM.

Crea una funzione chiamata ram_perc.

def ram_perc():
    mem = psutil.virtual_memory()
    mem_perc = mem.percent
    print "RAM: ", mem_perc, "%"

psutil.virtual_memory fornisce un set di dati contenente dati diversi sulla RAM del tuo computer.

Successivamente, puoi aggiungere alcuni fatti sulla tua rete.

def net():
    net = psutil.net_io_counters()
    mbytes_sent = float(net.bytes_sent) / 1048576
    mbytes_recv = float(net.bytes_recv) / 1048576
    print "MB sent: ", mbytes_sent
    print "MB received: ", mbytes_recv

Da psutil.net_io_counters() ci fornisce solo informazioni sui pacchetti inviati e ricevuti in byte, alcune conversioni erano necessarie.

Per ottenere alcune informazioni sullo spazio di scambio, aggiungi questa funzione.

def swap_perc():
    swap = psutil.swap_memory()
    swap_perc = swap.percent

Questo è abbastanza semplice.

La temperatura è piuttosto difficile da fare, quindi potrebbe essere necessario fare qualche ricerca per capire cosa funzionerà con il tuo hardware. Dovrai visualizzare il contenuto di un determinato file.

L'utilizzo del disco è molto più semplice della temperatura. Tutto quello che devi fare è passare il disco che vuoi monitorare (es: /) attraverso una determinata funzione.

def disks():
    if len(sys.argv) > 1:
        for disk in range(1, len(sys.argv)):
            tmp = psutil.disk_usage(sys.argv[disk])
            print sys.argv[disk], "\n"
            print "Megabytes total: ",
            print str(float(tmp.total) / 1048576)
            print "Megabytes used: ",
            print str(float(tmp.used) / 1048576)
            print "Megabytes free: ",
            print str(float(tmp.free) / 1048576)
            print "Percentage used: ",
            print tmp.percent, "\n"

L'output originale di psutil.disk_usage è questo,

>>>psutil.disk_usage('/')
sdiskusage(total=21378641920, used=4809781248, free=15482871808, percent=22.5)

ma puoi anche solo ricevere total, used, free, o percent.

Il programma completato: (le funzioni di cui sopra sono state combinate)

import psutil, os, sys
mem_perc = 0 #init var
swap_perc = 0 #init var
mbytes_sent = 0 #init var
mbytes_recv = 0 #init var
cpu_perc = 0 #init var
swap = 0 #init var
mem = 0 #init var
net = 0 #init var



def disp(degree):
    global cpu_perc
    global swap
    global swap_perc
    global mem
    global mem_perc
    global net
    global mbytes_sent
    global mbytes_recv

    cpu_perc = psutil.cpu_percent(interval=1, percpu=True)
    swap = psutil.swap_memory()
    swap_perc = swap.percent
    mem = psutil.virtual_memory()
    mem_perc = mem.percent
    net = psutil.net_io_counters()
    mbytes_sent = float(net.bytes_sent) / 1048576
    mbytes_recv = float(net.bytes_recv) / 1048576

    os.system('clear') #clear the screen

    print "-"*30
    print "CPU"
    print "-"*30
    print "CPU Temperature: " , degree, "'C"
    for i in range(len(cpu_perc)):
        print "CPU Core", str(i+1),":", str(cpu_perc[i]), "%"

    print "-"*30
    print "MEMORY"
    print "-"*30
    print "RAM: ", mem_perc, "%"
    print "Swap: ", swap_perc, "%"
    print "-"*30
    print "NETWORK"
    print "-"*30
    print "MB sent: ", mbytes_sent
    print "MB received: ", mbytes_recv
    print "-"*30
    print "DISKS"
    print "-"*30

    if len(sys.argv) > 1:
        for disk in range(1, len(sys.argv)):
            tmp = psutil.disk_usage(sys.argv[disk])
            print sys.argv[disk], "\n"
            print "Megabytes total: ",
            print str(float(tmp.total) / 1048576)
            print "Megabytes used: ",
            print str(float(tmp.used) / 1048576)
            print "Megabytes free: ",
            print str(float(tmp.free) / 1048576)
            print "Percentage used: ",
            print tmp.percent, "\n"

def main():
    print("Press Ctrl+C to exit")
    while True:
        temp = open("/sys/class/thermal/thermal_zone0/temp").read().strip().lstrip('temperature :').rstrip(' C')
        temp = float(temp) / 1000
        disp(temp)

main()

La linea temp = open("/sys/class/thermal/thermal_zone0/temp").read().strip().lstrip('temperature :').rstrip(' C') potrebbe non funzionare con la configurazione hardware.

Esegui questo programma dalla riga di comando. Passare i dischi che si desidera monitorare come argomenti dalla riga di comando.

$ python usage.py /

Press Ctrl+C to exit

------------------------------
CPU
------------------------------
CPU Temperature:  39.0 'C
CPU Core 1 : 4.8 %
CPU Core 2 : 1.0 %
CPU Core 3 : 0.0 %
CPU Core 4 : 4.9 %
------------------------------
MEMORY
------------------------------
RAM:  33.6 %
Swap:  6.4 %
------------------------------
NETWORK
------------------------------
MB sent:  2.93382358551
MB received:  17.2131490707
------------------------------
DISKS
------------------------------
/ 

Megabytes total:  13952.484375
Megabytes used:  8542.6640625
Megabytes free:  4678.5703125
Percentage used:  61.2 

/media/calvin/Data 

Megabytes total:  326810.996094
Megabytes used:  57536.953125
Megabytes free:  269274.042969
Percentage used:  17.6 

Spero che questo ti aiuti! Commenta se hai qualche domanda.

https://github.com/calthecoder/sysmon-1.0.1


4
2018-06-13 20:43



Sebbene questo link possa rispondere alla domanda, è meglio includere qui le parti essenziali della risposta e fornire il link per riferimento. Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia. - Ron
@Ron - Ok, aggiungerò una modifica al mio post e mostrerò le parti di scripting di base di sysmon in un paio di giorni. Grazie per il consiglio! - calthecoder
Check-out meta.askubuntu.com/questions/13900/.... Che cosa hai provato, esattamente? - muru
@muru - Nevermind, ora sta funzionando. Grazie per il link! - calthecoder
@muru - Ma, per rispondere alla tua domanda, ho avviato il blocco di codice con tre apici inversi, seguito dalla lingua in cui volevo evidenziare la sintassi e terminato con tre apici inversi. - calthecoder


Pacchetto SYSTAT ha uno strumento chiamato sar questo fa tutto ciò che vuoi. Può anche raccogliere dati storici in modo da poter vedere cosa è successo qualche tempo fa.


2
2018-05-10 13:22



thegeekstuff.com/2011/03/sar-examples - Qasim


Leone marino può essere utile strumento in quanto ha comandi incorporati per monitorare le prestazioni del server, nonché è possibile aggiungere i propri comandi personalizzati, scirpts e output di registro. È molto facile da configurare e scoprire cosa è andato storto in un momento specifico.

2


2
2017-07-08 07:48





io raccomando http://conky.sourceforge.net/

Molto facile da configurare e utilizzo minimo delle risorse.


1
2018-05-27 12:30



Mentre questo può teoricamente rispondere alla domanda, sarebbe preferibile per includere qui le parti essenziali della risposta e fornire il link per riferimento. - Warren Hill


C'è uno strumento integrato chiamato gnome-system-monitor. Può fare tutto ciò che hai menzionato, ad eccezione del monitoraggio del calore.


1
2018-03-08 10:18