LINUX.ORG.RU

TTop 1.2.0 — система мониторинга: добавлена информация о Docker, триггеры на события

 , , ,

TTop 1.2.0 — система мониторинга: добавлена информация о Docker, триггеры на события

4

1

TTop — система мониторинга со сбором исторических данных, триггерами и интерфейсом в стиле top.

Последняя версия утилиты приобрела следующий набор фич:

  • если процесс запущен в Docker, то это отражается в интерфейсе
  • фильтр поиска (кнопка /) теперь поддерживает поиск по специальным маркерам @u – поиск по пользователю u, #d – поиск по контейнеру d. А так же независимый поиск по отдельным словам
  • исправлено некоторое количество багов, связанное с отображением
  • изменена цветовая схема
  • уменьшем размер статической сборки – 929kb

Из старых функций: доступны триггеры оповещения о состоянии системы.

Как пример, информация в Telegram: https://user-images.githubusercontent.com/4949069/215402008-eb0325f9-3e6e-4908-a6aa-d7b3b64f09db.png

Специально для LOR: вы можете проголосовать за https://aur.archlinux.org/packages/ttop для будущего попадания пакета в дистрибутив

Установка статической сборки:

wget https://github.com/inv2004/ttop/releases/latest/download/ttop
chmod +x ttop
mv ttop ~/bin/          # add into PATH if necessary
ttop --on               # enable data collector in user's systemd.timers or crontab

Arch:

yay -S ttop

>>> Подробности



Проверено: hobbit ()
Последнее исправление: CYB3R (всего исправлений: 9)

у меня как-то не клеится смысл тулзы. вроде TUI - запустил, посмотрел закрыл. При этом Saving historical snapshots via systemd.timer or crontab - зачем TUI-тулзе функционал демона? ок, если он есть, то не увидел у тулзы работы в фоне с отвязкой от терминала. Триггеры - это вроде как продолжение функционала демона, тогда зачем TUI?

Не, как практический пример при изучении языка - вполне хорошее упражнение. Но вот конечный результат вызывает вопрос ибо в нем смешаны два домена - пользовательский и служебный.

Вот для такого

Как пример, информация в Telegram: https://user-images.githubusercontent.com/4949069/215402008-eb0325f9-3e6e-4908-a6aa-d7b3b64f09db.png

достаточно шелл скрипта с кроном.

ergo ★★★
()
Последнее исправление: ergo (всего исправлений: 1)
Ответ на: комментарий от Werenter

В btop нельзя данные назад отматывать, например, и следит за ними он не постоянно. Несколько разную цель преследуют эти инструменты

dikey0ficial
()
Ответ на: комментарий от bo4ok

Можно и логарифмом, можно и битовыми сдвигами. Можно и попроще, что-то вроде такого (Nim не знаю, сильно тапками не кидайтесь):

const 
  KB = 1024
  MB = KB * KB
  GB = MB * KB
  TB = GB * KB
  PB = TB * KB

proc formatBytesToReadableSize*(bytes: int): (float, string) =
  let floatValue = bytes.float

  case bytes
  of bytes < KB:
    (floatValue, "b")
  of bytes < MB:
    (bytes / KB, "KB")
  of bytes < GB:
    (bytes / MB, "MB")
  of bytes < TB:
    (bytes / GB, "GB")
  of bytes < PB:
    (bytes / TB, "TB")
  else:
    (floatValue, ".")
unfo ★★★★★
()
Последнее исправление: unfo (всего исправлений: 2)
Ответ на: комментарий от unfo

И главное – тесты. С ними и код станет читабельнее, поскольку многое придется рефакторить.

unfo ★★★★★
()

Какой-то комбайнище.
Набор процессов «впечатляет»… Автор индус?

mrjaggers
()
./ttop
bash: ./ttop: не удаётся запустить бинарный файл: Ошибка формата выполняемого файла

а под 386\686 что нибудь есть?

amd_amd ★★★★★
()
Последнее исправление: amd_amd (всего исправлений: 1)

некоторое количество багов, связанное с

уменьшем размер

Автор таки индус.

всего исправлений: 9

Проверяющий, впрочем, тоже.

mrjaggers
()
Ответ на: комментарий от ergo

Tui отдельно, сборщик статистики отдельно, хотя это и в одном бинарнике

inv2004
() автор топика

уменьшем размер статической сборки – 929kb

Тем временем, вспомогательная библиотека на typescript, которая только и умеет, что создавать S3 buckets с определёнными свойствами, занимает 470 Мб из которых 464 — node_modules. Сразу видно где серьёзная работа, а где студенческая поделка.

ugoday ★★★★★
()
Ответ на: комментарий от unfo

Я согласен, жутковато выглядит - исправлю. Особенно нижняя граница, проверка которой тут не нужна

inv2004
() автор топика
Последнее исправление: inv2004 (всего исправлений: 1)

Неужели нельзя было обойтись без последней супер-пупер версии нима?

$ sudo apt-get install nim
$ git clone https://github.com/inv2004/ttop
$ cd ttop
$ nimble -d:release build
  Verifying dependencies for ttop@1.2.0
       Tip: 1 messages have been suppressed, use --verbose to show them.
     Error: Unsatisfied dependency: nim (>= 1.6.12)

$ nim --version
Nim Compiler Version 1.6.10 

Почти :) Статический бинарник разумеется качать не буду… Скачивать ним и ставить где-то в /usr/local тоже не хочу

sena ★★
()
Последнее исправление: sena (всего исправлений: 1)
Ответ на: комментарий от inv2004
$ git pull --rebase
remote: Enumerating objects: 21, done.
remote: Counting objects: 100% (21/21), done.
remote: Compressing objects: 100% (15/15), done.
remote: Total 21 (delta 11), reused 12 (delta 6), pack-reused 0
Unpacking objects: 100% (21/21), 4.66 KiB | 340.00 KiB/s, done.
From https://github.com/inv2004/ttop
   1933a2d..4078ae9  main       -> origin/main
 * [new tag]         v1.2.2     -> v1.2.2
Updating 1933a2d..4078ae9
Fast-forward
 README.md           | 10 +++++++---
 src/ttop/format.nim | 29 ++++++++++-------------------
 ttop.nimble         |  6 +++---
 3 files changed, 20 insertions(+), 25 deletions(-)
$ nimble -d:release build
  Verifying dependencies for ttop@1.2.2
    Prompt: No local packages.json found, download it from internet? [y/N]
    Answer: y
Downloading Official package list
    Success Package list downloaded.
 Installing illwill@any version
Downloading https://github.com/johnnovak/illwill using git
  Verifying dependencies for illwill@0.3.1
       Tip: 7 messages have been suppressed, use --verbose to show them.
     Error: Unsatisfied dependency: nim (>= 1.6.12)
sena ★★
()
Ответ на: комментарий от andreyu

htop не работает с историческими данными. btop аналогично

inv2004
() автор топика
Ответ на: комментарий от sena

К сожалению это зависимость требует 1.6.12. видимо у меня она была собрана и не потребовала пересборки

inv2004
() автор топика
Ответ на: комментарий от sena

я ещё раз посмотрел - если ты про Arch, то да - проблема - получается в Extra лежит только 1.6.10, довольно старый

inv2004
() автор топика
Ответ на: комментарий от sena

Не думал что проблема такая сложная - пришлось повозиться: я форкнул зависимость которая требует 1.6.12 (без причины), и понизил версию

Теперь должно собираться в 1.6.10 - проверьте пожалуйста

inv2004
() автор топика
Последнее исправление: inv2004 (всего исправлений: 1)
Ответ на: комментарий от Lrrr

на архиве исходников? Попытался, но видимо тут надо не одно приседание для этого - попробую разобраться позже.

я так понимаю если прямо из git забирать - то мало кто ставит сумму

inv2004
() автор топика
Последнее исправление: inv2004 (всего исправлений: 1)
Ответ на: комментарий от LINUX-ORG-RU

в ttop 1.2.4 оптимизировал сборку дерева процессов - на глаз стало заметно меньше есть CPU (хотя и до этого было не много)

inv2004
() автор топика
Ответ на: комментарий от inv2004

Ну что сказать. Запускается, но жрёт память! Похоже утечка памяти.

sena ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.