The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Представлен sysdig, новый инструмент для диагностики системных проблем

04.04.2014 13:23

Анонсирован первый выпуск sysdig, нового инструмента для диагностики проблем и изучения особенностей работы системы. Sysdig позволяет сохранить дамп активности системы за определённый промежуток времени, а затем на основании этого дампа детально проанализировать активность в системе, включая данные о системных вызовах, сетевых соединения, открытых файлах и т.п. Код проекта написан на языках Си и Си++ и распространяется под лицензией GPLv2.

Работа с программой напоминает расширенное использование инструментов strace, tcpdump и lsof, позволяющее связать данные о трафике, процессах, системных вызовах, файлах и пользователях. Для сбора данных о событиях в системе используется специальный модуль для ядра Linux, а также библиотеки libsinsp и libscap. Поддерживается задание гибких фильтров для отсеивания лишних данных и возможность создавать достаточно сложные правила выборки. Для определения расширенной логики выборки данных предоставляются средства для подключения скриптов на языке Lua.

Из примеров типовых сценариев использования sysdig можно отметить вывод деталей о входящих сетевых соединениях и связанных с ними процессах, определение работа с какими файлами приводит к наибольшей нагрузке на систему ввода/вывода, отображение деталей о трафике в привязке к процессу, отслеживание открытия файлов в указанной директории, просмотр списка файлов и директорий к которым обращался пользователь, изучение активности процесса, вывод системных вызовов/файлов/сетевых соединений, работа с которыми завершилась ошибкой и т.п.

Для реализации на базе sysdig более сложных сценариев доступна большая коллекция вспомогательных Lua-скриптов, в которой можно найти от реализаций систем монторинга трафика и отслеживания действий пользователя до скриптов для выявления конкретных проблем и специализированных генераторов отчётов в стиле утилиты top.


   sysdig -ctopprocs_net

   Bytes Process
   ------------------------------
   3.59KB wget
   2.50KB httpd
   1.94KB dropbox




  1. Главная ссылка к новости (http://draios.com/announcing-s...)
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/39492-sysdig
Ключевые слова: sysdig, monitoring, trace, tcpdump, systrace
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (29) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 13:48, 04/04/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Интересная штука, посмотрим как она себя покажет
     
  • 1.2, pavlinux (ok), 14:28, 04/04/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    ==== Building LuaJIT 2.0.2 ====
    HOSTCC    host/minilua.o
    ...

    Маньяки!  

    --- мазафака

    ld: lj_err_dyn.o: relocation R_X86_64_TPOFF32 against 'static_uex' can not be used
    when making a shared object; recompile with -fPIC
    lj_err_dyn.o: could not read symbols: Bad value

    ---
    А чёй-то я не вкурил, F_GETLK64 - это 12-й fcntl,  17-й - это F_GETOWNER_UIDS

    ./flags_table.c:        {"F_GETLK64", 17},
    ./ppm_events_public.h:#define PPM_FCNTL_F_GETLK64 17
    ./ppm_fillers.c:        case F_GETLK64:
    ./ppm_fillers.c:                return PPM_FCNTL_F_GETLK64;

     
     
  • 2.5, pavlinux (ok), 15:38, 04/04/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Короча, под 32-бита вся софтина заточена.




    diff --git a/driver/ppm_fillers.c b/driver/ppm_fillers.c
    index 8717786..2220032 100644
    --- a/driver/ppm_fillers.c
    +++ b/driver/ppm_fillers.c
    @@ -3085,12 +3085,14 @@ static inline u8 fcntl_cmd_to_scap(unsigned long cmd)
                    return PPM_FCNTL_F_SETSIG;
            case F_GETSIG:
                    return PPM_FCNTL_F_GETSIG;
    +#ifndef CONFIG_64BIT
            case F_GETLK64:
                    return PPM_FCNTL_F_GETLK64;
            case F_SETLK64:
                    return PPM_FCNTL_F_SETLK64;
            case F_SETLKW64:
                    return PPM_FCNTL_F_SETLKW64;
    +#endif
            case F_SETOWN_EX:
                    return PPM_FCNTL_F_SETOWN_EX;
            case F_GETOWN_EX:


    Ой, извиняйте, там же Фидорас,... обидел юродивого.

    Короча, очередная ху...ета по перехвату syscall и парсинга всего этого дела.

    Ах да, без CONFIG_TRACEPOINTS не работает!!! А трассировка сискалов на сервере,
    где эта приблуда нужна,... ну да, наверно это круто :)

     
     
  • 3.8, Аноним (-), 17:25, 04/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Проект только родился, подождите лет 5 хотя бы.
     
     
  • 4.10, Аноним (-), 18:05, 04/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    ...а там либо ишак сдохнет, либ..  wait, oh shi--
     
  • 4.15, pavlinux (ok), 02:19, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > подождите лет 5 хотя бы.

    Спокуха, разгребли... Чувак грамотный, сам нашёл ядрёный хедер и проверил :)

    Всем делать git pull !!!

     
     
  • 5.18, Аноним (-), 02:30, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    W00t, спасибо тебе каркуша, наконец то ты чем-то полезным занялся. Это ж ты чувака пнул? :)
     
     
  • 6.20, pavlinux (ok), 03:22, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Не пнёшь - не покатится!
    Он был уверен, что все работает и везде проверил, а тут пришёл я и насрал в карму. :)  
     
     
  • 7.22, Аноним (-), 06:08, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Не пнёшь - не покатится!

    Спасибо за то что есть и пинаешься! :)

    > и насpaл в карму. :)

    Все правильно сделал! :)

     
  • 3.16, Аноним (-), 02:26, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Ах да, без CONFIG_TRACEPOINTS не работает!!! А трассировка сискалов на сервере,
    > где эта приблуда нужна,... ну да, наверно это круто :)

    Погоди, ты хотел делать трассировку без поддержки трассировки? Здорово придумано :).

     
     
  • 4.21, pavlinux (ok), 03:35, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Я за юзерспейсные методы слежения, через LD_PRELOAD например иль песочницу.
    Если делать полноценную систему контроля и аудита это назовут Kaspersky Security.
    А какой оверхед от каспера знают все.  

    На девелоперской машине (мож на не нагруженных воркстейшонах) хоть пошаговая отладка,
    а на боевых серверах стрёмно, - ядро с трейспоинтами иль ftrace ... брррр.

     
     
  • 5.23, Аноним (-), 06:10, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Я за юзерспейсные методы слежения, через LD_PRELOAD например иль песочницу.

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

    > Если делать полноценную систему контроля и аудита это назовут Kaspersky Security.
    > А какой оверхед от каспера знают все.

    Что-то не помню чтобы каспер "продвинутый трассир с сборщиком статистики" выпускал. Его секурити - что угодно, только не...

    > а на боевых серверах стрёмно, - ядро с трейспоинтами иль ftrace ... брррр.

    Эта штука для случаев когда тебя уже настолько задолбала какая-то проблема, что лучше так чем как-то еще :).

     
  • 5.26, rob pike (?), 08:09, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >а на боевых серверах стрёмно

    А это смотря как делать. С DTrace на Solaris почему-то никому не было никогда стремно.

     
     
  • 6.28, Аноним (-), 08:58, 06/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > С DTrace на Solaris почему-то никому не было никогда стремно.

    Так они и ФС без fsck не боялись юзать. И зависимости от 1 вендора не боялись. А потом пришел оракл и прихлопнул весь этот блошатник своим тапком.

     
     
  • 7.29, rob pike (?), 10:29, 06/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Дело совсем не в отчаянности пользователей Соляриса, как вы это пытаетесь представить.

    >In the past seven years, I’ve used DTrace in production thousands of times, on hundreds of different systems. It’s running continuously, in production, to monitor every system in the new Joyent datacenters. It can also be configured to run continuously to monitor Oracle’s ZFS Storage Appliance. I’ve never known it to cause system crashes or hangs.
    >DTrace’s safety record was a product of the kernel engineering culture at Sun Microsystems, and of Bryan Cantrill: father of Dynamic Tracing and DTrace. Bryan wrote about DTrace Safety in 2005, explaining the risks and principle of production safety very clearly:
    >    DTrace must not be able to accidentally induce system failure. It is our strict adherence to this principle that allows DTrace to be used with confidence on production systems.

     
  • 2.27, iles (??), 10:49, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    а че это я...
    /fixed
     

  • 1.3, Аноним (-), 14:30, 04/04/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    О, наконец от интересный системный тул, а не очередной высep от бидонистов и прочих скрипткидисов.
     
  • 1.4, rob pike (?), 15:02, 04/04/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Там и интересней есть примеры, типа


    See the files where apache spent most time

        sysdig -c topfiles_time proc.name=httpd

    Show the directories that the user "root" visits

        sysdig -p"%evt.arg.path" "evt.type=chdir and user.name=root"

     
  • 1.6, XoRe (ok), 16:18, 04/04/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Интересная штука.
    Будет классно, если ей можно будет заменить strace+lsof+/proc.

    P.S. радует рекомендуемый способ установки
    curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | sudo bash

     
     
  • 2.7, SpiritOfStallman (ok), 17:04, 04/04/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Кого радует, а кого печалит.
     
  • 2.17, Аноним (-), 02:28, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Будет классно, если ей можно будет заменить strace+lsof+/proc.

    Ей много чего можно заменить. Как минимум top + netstat + lsof + что-нибудь еще.

    > P.S. радует рекомендуемый способ установки

    Ага, замечательно. Пакетные менеджеры? Не, не слышали!

     
     
  • 3.30, iscsi (?), 11:45, 06/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    >> Будет классно, если ей можно будет заменить strace+lsof+/proc.
    > Ей много чего можно заменить. Как минимум top + netstat + lsof
    > + что-нибудь еще.
    >> P.S. радует рекомендуемый способ установки
    > Ага, замечательно. Пакетные менеджеры? Не, не слышали!

    Загляни-ка во внутрь скрипта.

     
     
  • 4.31, XoRe (ok), 19:28, 07/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Загляни-ка во внутрь скрипта.

    Тут пробегал очень простой способ распространения бекдора веб сервером.
    В кроне раз в N минут стоит скрипт, который меняет index файл на файл с бекдором.
    А потом быстро возвращает исходный файл.
    Вот поломают этих ребят и положат по этому пути файл с echo 'rm -rf /*'...
    echo '...' | sudo bash
    Ну вы поняли.

    Просто ещё предлагают не сохранить на диск, а сразу выполнить.
    Что именно было по тому url'у в тот момент...
    Может быть весело, если там просто 40х, 50х ошибка с кучей стилей.

     

  • 1.13, Аноним (-), 23:26, 04/04/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    В ubuntu есть штука "отправлять дополнительные сведения" в canonical.
     
     
  • 2.14, Аноним (-), 00:40, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Я Canonical доверяю, поэтому отправляю. Им нужны статистики, железо, отзывы.
    А вот MS не доверяю, поэтому им ничего не отправляю.
     
  • 2.19, Аноним (-), 02:34, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > В ubuntu есть штука "отправлять дополнительные сведения" в canonical.

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

     

  • 1.24, Аноним (-), 06:57, 05/04/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Что за фигня? При сборке luajit случается какая-то форкбомба прямо, 5000 процессов - это лихо. Что за шит с luajit?
     
     
  • 2.25, Аноним (-), 07:14, 05/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Что за фигня? При сборке luajit случается какая-то форкбомба прямо, 5000 процессов
    > - это лихо. Что за шит с luajit?

    Понятно, cmakes strikes back - система сборки настолько горбатая, что шаг в сторону от RTFMника - и все ломается КЕМ. Люблю cmake - всегда с ним какое-нибудь гэ случается.

     
     
  • 3.32, arisu (ok), 20:40, 07/04/2014 [^] [^^] [^^^] [ответить]  
  • +/
    так там ещё и цмак? ясно, эту дрянь использовать не надо, авторы в глухом неадеквате.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру