Я ищу инструменты системного мониторинга, которые являются GUI и CLI или веб-, которые включают основные функции, такие как:
Я знаю, что существует много инструментов, которые я могу использовать, но я ищу единственный инструмент, который имеет эти основные функции.
В моем случае этот ответ от по этой ссылке мне очень помог.
Раньше был пользователем Windows? Вам может понадобиться Ubuntu, эквивалентный диспетчеру задач Windows, и открыть его с помощью комбинации клавиш Ctrl + Alt + Del.
В Ubuntu есть встроенная утилита для мониторинга или уничтожения запущенных в системе процессов, которая действует как «Диспетчер задач», он называется Системный монитор.
Сочетание клавиш Ctrl + Alt + Del по умолчанию используется для вызова диалогового окна выхода из системы в Ubuntu Unity Desktop. Это не полезно для пользователей, которые привыкли к быстрому доступу к диспетчеру задач.
Чтобы изменить настройки клавиши, откройте утилиту «Клавиатура» в Unity Dash (или «Системные настройки» -> «Клавиатура»).
На вкладке «Ярлыки» -> «Пользовательские ярлыки» щелкните значок «плюс», чтобы добавить ярлык. Введите имя диспетчера задач и команду gnome-system-monitor.
После того, как он добавлен, щелкните там, где написано «Отключить», и нажмите Ctrl + Alt + Delete. Появится диалоговое окно «Клавиша быстрого доступа… уже используется для выхода из системы», нажмите «Переназначить», и все готово!
Команда free
- самая простая и простая в использовании команда для проверки использования памяти в linux / ubuntu.
free -m
Чтобы проверить использование памяти, нужно прочитать файл /proc/meminfo
.
cat /proc/meminfo
Команда vmstat
с опцией s
.
vmstat -s
Команда top
обычно используется для проверки использования памяти и процессора для каждого процесса.
top
Команда htop также показывает использование памяти наряду с различными другими деталями.
htop
Чтобы узнать аппаратную информацию об установленной оперативной памяти.
sudo dmidecode -t 17
проверьте инструмент мониторинга Linux eginnovations - http://www.eginnovations.com/web/linux-server-monitoring.htm
веб-интерфейс, прост в установке и даже поддержка виртуализации Linux.
Я думаю, вам стоит взглянуть на Agentless Monitor из AppPerfect, который охватывает различные аспекты мониторинга, такие как мониторинг приложений JAVA / J2EE, мониторинг серверов, мониторинг баз данных, мониторинг транзакций, мониторинг сети, мониторинг журналов, и мониторинг системы. Он бесплатный и простой в использовании.
Мне нравится использовать conky
, который можно настроить в любом случае:
Вы можете Google conky
и найти 787 000 просмотров. Есть что-то для всех.
В верхней части экрана появится надпись «Экран блокировки: 4 минуты Яркость: 2074». Они генерируются «Indicator-Sysmonitor», который позволяет отображать на индикаторе systray / application, используя скрипт bash.
Об обучении по настройке «Indicator-Sysmonitor» см .: Может ли BASH отображаться в systray в качестве индикатора приложения?
Glances - это бесплатное программное обеспечение (предоставляется по лицензии LGPL) для мониторинга операционной системы GNU / Linux или BSD из текстового интерфейса. Glances использует библиотеку libstatgrab для извлечения информации из вашей системы, и она разработана на Python.
Откройте терминал ( Ctrl kbd> + Alt kbd> + T kbd>) и выполните следующие команды:
[ 1142] В Ubuntu 16.04 и выше вы можете просто набратьsudo apt install glances
, но в версии 2.3 есть эта ошибка . Иное:
Установка Easy Script Взгляды
curl -L https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/install.sh | sudo /bin/bash
ИЛИ
wget -O- https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/install.sh | sudo /bin/bash
Установка вручную ]
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
Для запуска glances
просто введите glances
в терминале.
Вкратце вы увидите много информации о ресурсах вашей системы: ЦП, нагрузка, память, своп-сеть, дисковый ввод-вывод и процессы - все в одном На странице по умолчанию цветовой код означает:
GREEN : the statistic is “OK”
BLUE : the statistic is “CAREFUL” (to watch)
VIOLET : the statistic is “WARNING” (alert)
RED : the statistic is “CRITICAL” (critical)
Когда работает Glances, вы можете нажимать некоторые специальные клавиши, чтобы давать ему команды:
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
При вводе glances --help
вы найдете (-e
Включить модуль датчиков (только для Linux))
glances -e
Вы можете установить свои пороговые значения в файле конфигурации Glances, в GNU / Linux файл конфигурации по умолчанию находится в /etc/glances/glances.conf
.
Другая интересная особенность этого инструмента мониторинга заключается в том, что вы можете запустить его в режиме сервера, просто набрав glances -s
, это даст вывод, как работает сервер Glances на 0.0 .0.0: 61209 и теперь вы можете подключиться к нему с другого компьютера, используя glances -c @server, где @server - это IP-адрес или имя хоста сервера.
Glances использует сервер XML / RPC и может использоваться другим клиентским программным обеспечением. В режиме сервера вы можете установить адрес привязки (-B ADDRESS) и прослушиваемый порт TCP (-p PORT), адрес привязки по умолчанию - 0.0.0.0 (Glances будет прослушивать все сетевые интерфейсы), а порт TCP - 61209. В В режиме клиента вы можете установить TCP-порт сервера (-p порт). В режиме клиент / сервер ограничения устанавливаются на стороне сервера. В версии 1.6 введен необязательный пароль для доступа к серверу (-P пароль), который, если он установлен на сервере, должен использоваться и на клиенте.
Дополнительные источники: PyPI , Github , Linuxaria
Мониторинг контейнера juju, например, как все выглядит Large Image
В терминале № 1 Glances работает в режиме сервера, В терминале № 2 контейнер juju работает apt-get update
& амп; В терминале 3 glances -c 192.168.1.103
Glances подключен к IP-контейнеру
Кажется, что Glances сам по себе требует периодических всплесков использования процессора, в то время как быть активным, о чем свидетельствует график использования встроенного системного монитора. Если график точный - тогда, используя взгляды, можно потерять около 1/4 процессора в системе. Это может повлиять на тех, кто следит за загрузкой процессора на серверах.
Nagios, кажется, самый популярный и настраиваемый, но я бы не стал выбирать его для GUI.
Решение Zabbix с открытым исходным кодом отслеживает все, что вы упомянули, а также предоставляет графики на основе времени для мониторинга производительности.
Если вы ищете еще более чистый графический интерфейс, посмотрите Zenoss. Zenoss - это веб-инструмент с открытым исходным кодом, но он предлагает сервисный анализ и анализ первопричин с помощью собственного инструмента.
Я рекомендую http://conky.sourceforge.net/
Очень прост в настройке и минимальном использовании ресурсов.
Существует встроенный инструмент под названием gnome-system-monitor
. Он может делать все, что вы упомянули, кроме мониторинга температуры.
Пакет systat имеет инструмент под названием sar
, который делает все, что вы хотите. Он также может собирать исторические данные, чтобы вы могли увидеть, что произошло некоторое время назад.
top
top - это программное обеспечение для мониторинга, в котором перечислены все процессы с использованием ЦП / ОЗУ, общим использованием ЦП / ОЗУ и т. Д. Кроме того, оно в основном установлено по умолчанию
htop
htop похож на расширенную версию top. Он имеет все функции, описанные выше, но вы можете видеть дочерние процессы и настраивать отображение всего. У этого также есть цвета.
iotop
iotop специально для мониторинга жесткого ввода-вывода В нем перечислены все процессы и показано их использование на жестком диске для чтения и записи.
Вы могли бы хотеть попробовать sysmon. Хотя не столь необычный как Взгляды, это очень просто и просто в использовании.
Если Вы хотите испачкаться и сделать небольшие сценарии в Python, вот некоторые основы системного мониторинга с Python для запущения Вас.
Вам будет нужен внешний названный модуль psutil
контролировать большинство вещей. Является самым легким использовать внешний установщик модуля вместо того, чтобы создать из источника.
Примечание: Эти примеры записаны в Python 2.7
sudo apt-get install pip
sudo pip install psutil
Теперь, когда нам установили модули, мы можем начать кодировать.
Во-первых, создайте названный файл usage.py
.
gedit ~/usage.py
Запустите путем импорта psutil
import psutil
Затем создайте функцию для контроля процента, в котором работают ядра процессора.
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]), "%"
Давайте сломаем это немного, не так ли?
Первая строка, cpu_num = psutil.cpu_percent(interval=1, percpu=True)
, находит процент, в котором работают ядра в Вашем ЦП, и присваивает его названному списку cpu_perc
.
Этот цикл прямо здесь
for i in range(len(cpu_num)):
print "CPU Core", str(i+1),":", str(cpu_perc[i]), "%"
для цикла, который распечатывает текущий процент каждого из Ваших ядер процессора.
Давайте добавим Использование оперативной памяти.
Создайте вызванную функцию ram_perc
.
def ram_perc():
mem = psutil.virtual_memory()
mem_perc = mem.percent
print "RAM: ", mem_perc, "%"
psutil.virtual_memory
дает набор данных, содержащий различные факты о RAM в Вашем компьютере.
Затем, можно добавить некоторые факты о сети.
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
С тех пор psutil.net_io_counters()
только дает нам информацию о пакетах, отправленных и полученных в байтах, некоторое преобразование было необходимо.
Для получения некоторой информации об области подкачки добавьте эту функцию.
def swap_perc():
swap = psutil.swap_memory()
swap_perc = swap.percent
Этот довольно прост.
Температуру довольно трудно сделать, таким образом, Вы, возможно, должны провести некоторое собственное исследование для выяснения то, что будет работать с аппаратными средствами. Необходимо будет отобразить содержание определенного файла.
Использование диска намного легче, чем температура. Все, что необходимо сделать, должно передать диск, который Вы хотите контролировать (т.е.: /
) через определенную функцию.
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"
Исходный вывод psutil.disk_usage
это,
>>>psutil.disk_usage('/')
sdiskusage(total=21378641920, used=4809781248, free=15482871808, percent=22.5)
но можно также просто получить total
, used
, free
, или percent
.
Завершенная программа: (вышеупомянутые функции были объединены),
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()
Строка temp = open("/sys/class/thermal/thermal_zone0/temp").read().strip().lstrip('temperature :').rstrip(' C')
не мог бы работать с Вашей аппаратной конфигурацией.
Запустите эту программу из командной строки. Передайте диски, которые Вы хотите контролировать как аргументы от командной строки.
$ 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
Надеюсь, это поможет! Комментарий, если у Вас есть какие-либо вопросы.
За последние несколько лет я использовал:
, доступных в Центр программного обеспечения
Следующее является инструментами для контроля системы Linux
top
, free -m
, vmstat
, iostat
, iotop
, sar
, netstat
и т.д. Ничто не подходит к этим утилита Linux при отладке проблемы. Они управляют, дают Вам четкое изображение, которое входит в Ваш сервериндикатор-SysMonitor
Индикатор-SysMonitor делает немного, но делает это хорошо. После установки и запуска он отображает использование процессора и оперативной памяти на верхней панели. Простой.
Скачать с здесь
Conky
Один из моих любимых
]
Снимок экрана Вы найдете набор мониторов ЦП и ОЗУ в разных стилях, включенных в пакет screenlets-all, доступный в Центре программного обеспечения Ubuntu. [тысяча сто двадцать семь]
Взгляды
Для установки:
sudo apt-get install python-pip build-essential python-dev
sudo pip install Glances
sudo pip install PySensors
[ 1132] VMSTAT
Отображение информации о процессоре, памяти, процессах и т. Д.
IOSTAT
Этот инструмент командной строки будет отображать статистику о вашем ЦП, информацию ввода-вывода для разделов жесткого диска, сетевой файловой системы (NFS) и т. Д. Чтобы установить iostat, выполните эту команду:
sudo apt-get install sysstat
Чтобы запустить отчет, выполните следующую команду:
iostat
Чтобы проверить только статистику ЦП, используйте эту команду:
iostat -c
Для дополнительных параметров используйте эту команду:
iostat --help
MPSTAT
Утилита командной строки mpstat будет отображать среднее использование ЦП на процессор. Чтобы запустить его, просто используйте эту команду:
mpstat
Для использования ЦП на процессор, используйте эту команду:
mpstat -P ALL
Saidar
Сайдар также позволяет отслеживать действия системного устройства через командную строку.
Вы можете установить с помощью этой команды:
sudo apt-get install saidar
Чтобы запустить мониторинг, выполните эту команду:
saidar -c -d 1
Статистика будет обновляться каждую секунду.
GKrellM
GKrellM - это настраиваемый виджет с различными темами, который отображает информацию об устройстве вашего настольного компьютера (ЦП, температура, память, сеть и т. Д.).
Чтобы установить GKrellM, выполните следующую команду:
sudo apt-get install gkrellm
Monitorix
Monitorix - это еще одно приложение с веб-интерфейс пользователя для мониторинга системных устройств.
Установите его с помощью следующих команд:
sudo add-apt-repository ppa:upubuntu-com/ppa
sudo apt-get update
sudo apt-get install monitorix
Запустите Monitorix по этому URL:
http://localhost/monitorix/
& nbsp;
SeaLion может быть удобным инструментом, поскольку он имеет встроенные команды для мониторинга производительности вашего сервера, а также вы можете добавлять свои собственные команды, scirpts и вывод журнала. Это очень легко настроить и узнать, что пошло не так в определенное время.
Я был ошеломлен, увидев, что нет простого, элегантного и продвинутого системного монитора с графическим интерфейсом, такого как Windows TaskManager. KSysGaurd в KDE великолепен, но без него требуются плагины для установки новых функций, это похоже на gnome-system-monitor. KSysGaurd имеет расширенные возможности, но не очень простые. Лично мне не понравились ни KSysGaurd, ни Gnome-system-monitor.
Я пошел и попытался создать простой элегантный графический интерфейс, такой как диспетчер задач Windows. Посмотрите мой подход к тому же самому: https://github.com/KrispyCamel4u/SysMonTask
Обновление: теперь я добавил пользовательские процессы в версии 1.1.0
я отфильтровал фоновые процессы (с некоторыми исключениями) и показал только пользовательские процессы (пользовательский родительский и дочерний процессы, как в окнах), которые упрощает обнаружение процессов, которые вас интересуют, вместо того, чтобы узнавать из пула всех процессов, которые показывает gnome-system-monitor.
Кроме того, он включает агрегаты (в заголовке столбца) всех процессов.
Есть только несколько процессов, которые являются своего рода фоном, но все же появляются: Исключения :(
Предложения по улучшению приветствуются.
Спасибо