The OpenNET Project / Index page

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

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

Анонсирован первый выпуск 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
Тип: К сведению
Ключевые слова: sysdig, monitoring, trace, tcpdump, systrace
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | 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-бита вся софтина заточена.

    [code]
    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:
    [/code]

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

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

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

     
     
  • 5.23, Аноним (-), 06:10, 05/04/2014 [^] [ответить]     [к модератору]  
  • +1 +/
    Ну да, упомянутая конструкция забуксует при нужде например отследить нечто на ша... весь текст скрыт [показать]
     
  • 5.26, rob pike (?), 08:09, 05/04/2014 [^] [ответить]    [к модератору]  
  • +1 +/
    >а на боевых серверах стрёмно

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

     
     
  • 6.28, Аноним (-), 08:58, 06/04/2014 [^] [ответить]     [к модератору]  
  • +/
    Так они и ФС без 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 [^] [ответить]     [к модератору]  
  • +/
    Ей много чего можно заменить Как минимум top netstat lsof что-нибудь еще ... весь текст скрыт [показать]
     
     
  • 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 +/
    Круто, но упомянутую утилю это не заменяет Да и отправлять потенциально чувстви... весь текст скрыт [показать]
     
  • 1.24, Аноним (-), 06:57, 05/04/2014 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Что за фигня? При сборке luajit случается какая-то форкбомба прямо, 5000 процессов - это лихо. Что за шит с luajit?
     
     
  • 2.25, Аноним (-), 07:14, 05/04/2014 [^] [ответить]     [к модератору]  
  • +/
    Понятно, cmakes strikes back - система сборки настолько горбатая, что шаг в стор... весь текст скрыт [показать]
     
     
  • 3.32, arisu (ok), 20:40, 07/04/2014 [^] [ответить]    [к модератору]  
  • +/
    так там ещё и цмак? ясно, эту дрянь использовать не надо, авторы в глухом неадеквате.
     

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


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