Автор Гілка: sping — TUI для пінгування сервісів  (Прочитано 681 раз)

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3906
  • Карма: +15/-0
  • Програміст
sping — це проста утиліта з красивим TUI, написана на пітоні, яка дозволяє пінгувати сайти або сервіси (по tcp, http, https), демонструє графік, та може надавати статистику в JSON.



Проєкт: https://gitlab.com/dseltzer/sping
[Fedora Linux]

Відсутній BeSiDa

  • Новачок
  • *
  • дописів: 27
  • Карма: +0/-0
Re: sping — TUI для пінгування сервісів
« Відповідей #1 : 2025-08-26 19:59:54 »
та може надавати статистику в JSON.
Надавати статистику чи самі по собі пінги за допомогою дсон робити (на скріншоті саме хттп запит джсона, коли не помиляюсь).

п.с. хоча приклад на скріншоті дивний, бо різні айпі і сенс ті результати називати саме статистикою?!

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 152
  • Карма: +5/-0
Re: sping — TUI для пінгування сервісів
« Відповідей #2 : 2025-08-26 20:04:08 »
відносно візуалізації пропущу (histogram інформативність під питанням),
відносно ж цифр що там заміряється (тут теж відклавши reliability мілісекундних замірів пайтоном):
- нп надішлемо два запити (---count 2) - перший буде в рази два більше з обміном tcp_handshake + head/ok, далі менше з head/ok, тобто max/average latency статистика якась буде - тільки інтерпретація не зовсім ясна яка з того буде зроблена

Відсутній BeSiDa

  • Новачок
  • *
  • дописів: 27
  • Карма: +0/-0
Re: sping — TUI для пінгування сервісів
« Відповідей #3 : 2025-08-26 20:12:55 »
tcp_handshake + head/ok, далі менше з head/ok, тобто max/average latency статистика якась буде - тільки інтерпретація не зовсім ясна яка з того буде зроблена
Ще невідомо яка там версія хттп. Хоч на малюнку "хттп" і без "с", але коли там 3я, то взагалі буде удп замість тсп, а коли 1.0 то кожен раз новий конекшин. Теж дивно що з того. Лише може коли воно стає більше секунди.
Але для якогось відео може бути красивим фоном :)

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 152
  • Карма: +5/-0
Re: sping — TUI для пінгування сервісів
« Відповідей #4 : 2025-08-26 20:23:40 »
Цитата
Надавати статистику чи самі по собі пінги за допомогою дсон робити
мабуть тільки надавати статистику (json output), бо "пінг" умовний залежить від багатьох факторів як і опцій в http

Цитата
на скріншоті саме хттп запит джсона, коли не помиляюсь
тип data що в умовному "pong" отримано - application/json, в принципі любий інший mime тип відобразився також

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 152
  • Карма: +5/-0
Re: sping — TUI для пінгування сервісів
« Відповідей #5 : 2025-08-26 20:38:22 »
Цитата
Цитата
tcp_handshake + head/ok, далі менше з head/ok, тобто max/average latency статистика якась буде - тільки інтерпретація не зовсім ясна яка з того буде зроблена
Ще невідомо яка там версія хттп.
1.1 скоріш усього

Цитата
але коли там 3я, то взагалі буде удп замість тсп
і навіть якби був - те саме але на іншому рівні - свій quic handshake тоді буде, на який як і в попередньому випадку припаде додатковий час

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 152
  • Карма: +5/-0
Re: sping — TUI для пінгування сервісів
« Відповідей #6 : 2025-08-26 20:47:26 »
Цитата
Але для якогось відео може бути красивим фоном :)
інтерпретація з тетрісом на фоні булаб ясніша)

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3906
  • Карма: +15/-0
  • Програміст
Re: sping — TUI для пінгування сервісів
« Відповідей #7 : 2025-08-26 22:55:26 »
Графік хороший тим, що там тільки коливання, без основи. Коли пінґується через супутник, то я й так знаю що менше 600 не буде, не треба мені цього показувати. Також цією утилітою зручно міряти затримки по TCP чи HTTP/HTTPS, бо зараз часто пінґ по ICMP не співпадає з пінґом по TCP.

Погано, що не показує декілька сервісів одночасно, хоча б два.

Можете спробувати самі:

$ cat ~/bin/sping
#!/bin/bash
exec uvx --from service-ping-sping sping "$@"
[Fedora Linux]

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 152
  • Карма: +5/-0
Re: sping — TUI для пінгування сервісів
« Відповідей #8 : 2025-08-27 00:14:53 »
Цитата
Графік хороший тим, що там тільки коливання
для того jitter замірюють, і візуалізують щоб ясніше було графіками а не histogram

Цитата
Також цією утилітою зручно міряти затримки по TCP чи HTTP/HTTPS, бо зараз часто пінґ по ICMP не співпадає з пінґом по TCP
У випадку з "пінг по tcp" з відпрацюванням сервіса - занадто розпливчато що саме він вимірює реальне rtt до target, чи нп швидкість відпрацювання софтом

Цитата
Погано, що не показує декілька сервісів одночасно, хоча б два.
Можете спробувати самі:
$ cat ~/bin/sping
#!/bin/bash
exec uvx --from service-ping-sping sping "$@"
якщо це про збір статистики по декільком сайтам одночасно, а не про можливі варіанти візуалізації n-сайтів -
тоді.. тож шелл заюзан, щей bash, додайте що треба, нп для послідовного веб-"пінга" щось типу
./script_below SITE1 SITE2 ...
#!/bin/bash

PATH_TO_SPING="${PATH_TO_SPING:-sping}"
COUNT="${COUNT:-10}"

sp() {
    echo ">>> $1"
    "$PATH_TO_SPING" --count "$COUNT" "$1" | tail -2
}

declare -A re
while [ $# -gt 0 ]; do
    re["$1"]="$(sp "$1")"
    shift
done

for site in "${!re[@]}"; do
   echo "${re[$site]}"
   echo ""
done | head -n -1
« Змінено: 2025-08-27 00:40:33 від yvs115 »

Відсутній BeSiDa

  • Новачок
  • *
  • дописів: 27
  • Карма: +0/-0
Re: sping — TUI для пінгування сервісів
« Відповідей #9 : Вчора о 15:34:08 »
З гіфкою спінг головна ЛОУ жвавіша :)
Можна створити розділ "красиві малюнки, скриншоти та анімації з Лінукс" та виводити над Новинами на головну один пост (ті що кращі, відібрані модератором чи голосами за пост).

для того jitter замірюють, і візуалізують щоб ясніше було графіками а не histogram
То вже як кому до вподоби. Люди різним чином ефективніше сприймають інфу. Вібір краще. Відповідно до можливостей системи відображення (для консолі й так краще :) ).

Цитата
У випадку з "пінг по tcp" з відпрацюванням сервіса - занадто розпливчато що саме він вимірює реальне rtt до target, чи нп швидкість відпрацювання софтом
Там більше, це може бути швидкість лінку, втрати радіоканалу, навантаження та перекриття віфі діапазонів, роутинг локальної мережі та більш глобальних точок ІХ, навантаження на хостинг загалом та віртуалки чи клієнтский комп (той може бути у віртуалці або на проці 386 :))) ).
А от що не тільки іцмп то ок, бо сайт може бути за проксі чи НАТ-ом або реверс проксі чи впн. Чи взагалі всередині бути з мікросервісів що з різних інших компів (баз, кешів, стораджей, ...) тягнуть іншу.

Тобто технічно воно розпливчасте, а от суб'єктивно воно досить чітко відобразить "сприйняття користувача" (швидкість реагування на дію з інтерфейсу).

Можна ж таких програмок запустити багато на різні сайти або їх частини і одночасно бачити "стан своїх сайтів" (навіть коли там днс випарувався чи сертифікати) або "стан свого під'єднання до мережі (всі одназу пінги "впали" чи тільки частково з регіону та ін).
І можна не раз на секунду, а значно рідше.

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3906
  • Карма: +15/-0
  • Програміст
Re: sping — TUI для пінгування сервісів
« Відповідей #10 : Вчора о 17:20:56 »
З гіфкою спінг головна ЛОУ жвавіша :)
Можна створити розділ "красиві малюнки, скриншоти та анімації з Лінукс" та виводити над Новинами на головну один пост (ті що кращі, відібрані модератором чи голосами за пост).

Вже було таке, на попередній версії головної сторінки. Потім дописувачам це набридло, та і стільниці стали значно менш візуально привабливими, і воно заклякло, як зараз опитування.

Цитата
Там більше, це може бути швидкість лінку, втрати радіоканалу, навантаження та перекриття віфі діапазонів, роутинг локальної мережі та більш глобальних точок ІХ, навантаження на хостинг загалом та віртуалки чи клієнтский комп (той може бути у віртуалці або на проці 386 :))) ).

От прямо зараз мені trippy показує втрату 66% пакетів при проходженні через 77.75.151.21 на шляху до 1.1.1.1 по ICMP, тоді як ping (ICMP) та sping (http) показують що проблеми немає.

Цитата
Можна ж таких програмок запустити багато на різні сайти або їх частини і одночасно бачити "стан своїх сайтів" (навіть коли там днс випарувався чи сертифікати) або "стан свого під'єднання до мережі (всі одназу пінги "впали" чи тільки частково з регіону та ін).
І можна не раз на секунду, а значно рідше.

Ми так і робимо. Я для цього використовую vmping, але воно під Віндовс. Я його навіть переклав українською і трохи підправив: https://github.com/vlisivka/vmPing-ukrainian
« Змінено: Вчора о 17:23:16 від Володимир Лісівка »
[Fedora Linux]

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 152
  • Карма: +5/-0
Re: sping — TUI для пінгування сервісів
« Відповідей #11 : Вчора о 19:32:45 »
Цитата
Цитата
для того jitter замірюють
То вже як кому до вподоби. Люди різним чином ефективніше сприймають інфу.
Було "Графік хороший тим, що там тільки коливання", - в такому контексті то буде: очами грепати, діференціювати і статистику отримувати - "ефективно сприймають" що сказати)

Цитата
Цитата
візуалізують щоб ясніше було графіками а не histogram
Відповідно до можливостей системи відображення (для консолі й так краще :) ).
ключові слова - "щоб ясніше"
наявність графіків не заважає мати і гістограмний tui софт

Відсутній yvs115

  • Кореспондент
  • ***
  • дописів: 152
  • Карма: +5/-0
Re: sping — TUI для пінгування сервісів
« Відповідей #12 : Вчора о 19:37:04 »
Цитата
От прямо зараз мені trippy показує втрату 66% пакетів при проходженні через 77.75.151.21 на шляху до 1.1.1.1 по ICMP,
тоді як ping (ICMP) та sping (http) показують що проблеми немає.
статистика по трасі та кінцева точка це різні речі, і читаються по різному, включно з прото

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3906
  • Карма: +15/-0
  • Програміст
Re: sping — TUI для пінгування сервісів
« Відповідей #13 : Сьогодні о 11:02:54 »
Було "Графік хороший тим, що там тільки коливання", - в такому контексті то буде: очами грепати, діференціювати і статистику отримувати - "ефективно сприймають" що сказати)

Мені графік в sping подобається значно більше, ніж в trippy. В sping видно числами нижню межу та верхню межу, та які коливання в цих межах.
[Fedora Linux]