В нашей подборке за неделю есть создание игры «не художником», автоматизированная разработка мусора, видео докладов с конференций, разработка, отладка, костыли и документация. Добро пожаловать!
Рубрика «отладка» - 13
Дайджест интересных материалов для мобильного разработчика #292 (25 марта — 31 марта)
2019-03-31 в 13:15, admin, рубрики: android studio, apple, firebase, kotlin, swift, unity, ux дизайн, Блог компании Everyday Tools, документация, искусственный интеллект, маркетинг мобильных приложений, отладка, разработка игр, разработка мобильных приложений, Разработка под android, разработка под iOS, тестированиеПолнофункциональная динамическая трассировка в Linux с использованием eBPF и bpftrace
2019-02-22 в 6:44, admin, рубрики: ITSumma, linux, Блог компании ITSumma, Настройка Linux, операционные системы, отладка, перевод, Программирование, системное администрирование, системное программирование, трассировка, чужой опыт
«В режиме трассировки программист видит последовательность выполнения команд и значения переменных на данном шаге выполнения программы, что позволяет легче обнаруживать ошибки» — сообщает нам Википедия. Сами будучи поклонниками Linux, мы регулярно сталкиваемся с вопросом, какими именно инструментами её лучше осуществлять. И хотим поделиться переводом статьи программиста Хонгли Лая, который рекомендует bpftrace. Забегая вперёд, скажу, что заканчивается статья лаконично: «bpftrace — это будущее». Так чем же он так впечатлил коллегу Лая? Развёрнутый ответ под катом.
Читать полностью »
Приключения с ptrace(2)
2019-02-17 в 18:49, admin, рубрики: api, ptrace, отладка, Разработка под Linux, системное программирование, хитрости На Хабре уже писали про перехват системных вызовов с помощью ptrace
; Алекса написал про это намного более развёрнутый пост, который я решил перевести.
С чего начать
Общение между отлаживаемой программой и отладчиком происходит при помощи сигналов. Это существенно усложняет и без того непростые вещи; ради развлечения можете прочесть раздел BUGS в man ptrace
.
Есть как минимум два разных способа начать отладку:
ptrace(PTRACE_TRACEME, 0, NULL, NULL)
сделает родителя текущего процесса отладчиком для него. Никакого содействия от родителя при этом не требуется;man
ненавязчиво советует: «A process probably shouldn't make this request if its parent isn't expecting to trace it.» (Где-нибудь ещё в манах вы видели фразу «probably shouldn't»?) Если у текущего процесса уже был отладчик, то вызов не удастся.ptrace(PTRACE_ATTACH, pid, NULL, NULL)
сделает текущий процесс отладчиком дляpid
. Если уpid
уже был отладчик, то вызов не удастся. Отлаживаемому процессу шлётсяSIGSTOP
, и он не продолжит работу, пока отладчик его не «разморозит».
Эти два метода полностью независимы; можно пользоваться либо одним, либо другим, но нет никакого смысла их сочетать.Читать полностью »
Как Project Infer от Facebook помогает искать баги в мобильных приложениях перед деплоем
2019-02-16 в 14:18, admin, рубрики: Facebook, Facebook API, Project Infer, skillbox, Блог компании Skillbox, деплой, отладка, ошибки, Программирование, Учебный процесс в IT
Несколько дней назад команда инженеров Facebook отличилась — ее удостоили награды Most Influential POPL Paper Award. В среде специалистов по машинному обучению это весьма почетно. Награду вручили за работу Compositional Shape Analysis by Means of Bi-abduction, которая раскрывает нюансы Project Infer. Сам проект предназначен для обнаружения и ликвидации багов в коде мобильного приложения перед его деплоем.
Баги в программном обеспечении для мобильных устройств обходятся очень дорого как разработчикам, так и пользователям. Что касается первых, то обнаружение проблемы в уже размещенном в каталогах приложении — ночной кошмар для любого специалиста. Конечно, софт тестируется, работу программ проверяют по определенным шаблонам. Но чаще разработчики не могут предусмотреть всего, и баги в приложении обнаруживаются уже после деплоя.
Читать полностью »
10 консольных команд, которые помогут дебажить JavaScript-код like a PRO
2019-02-14 в 11:01, admin, рубрики: debug tools, javascript, JS, Блог компании Skillbox, дебаггинг, отладка, Программирование, Учебный процесс в IT
Перевели статью Амита Соланки по отладке JavaScript-кода при помощи консольных команд. По словам автора, эти команды помогут значительно повысить производительность труда программиста при поиске багов и сэкономят кучу времени.
Давайте рассмотрим команды, которые действительно способны упростить жизнь любому программисту.
Читать полностью »
Повышаем информативность ошибок в Go – github.com-ztrue-tracerr
2019-02-12 в 11:36, admin, рубрики: debug, error handling, error log, errors, Go, golang, source maps, stacktrace, отладкаПосле многолетнего опыта работы с php и js, я привык иметь в ошибках стектрейс и смотреть на место, где произошла ошибка прямо из эррор-репорта. Пересев на Go пару лет назад, я был несколько удивлен, что в Go другие правила и нужно угадывать стектрейс по какой-нибудь строке типа `invalid character`. А если она произошла на проде и не известно, как ее воспроизвести, то это превращалось в целый аттракцион.
Поскольку я уверен, что ни один от этого страдал, то сделал пакет, который умеет так:
Отдельный уровень логирования для каждого запроса
2019-01-16 в 13:54, admin, рубрики: .net, логирование, отладкаЧитая Technology Radar от ThoughtWorks, я наткнулся на технику "Отдельный уровень логирования на каждый запрос (Log level per request)". Мы в Confirmit широко используем логирование, и мне стало интересно, как можно реализовать эту функциональность.
Читать полностью »
Плагин kubectl-debug для отладки в pod’ах Kubernetes
2019-01-15 в 10:37, admin, рубрики: devops, kubernetes, Блог компании Флант, отладка, системное администрирование
В конце прошлого года на Reddit представили плагин к kubectl, помогающий производить отладку в pod'ах кластера Kubernetes — kubectl-debug. Эта идея сразу же показалась интересной и полезной нашим инженерам, так что мы решили посмотреть на её воплощение и рады поделиться своими результатами с читателями хабры.Читать полностью »
Модернизация IDA Pro. Отладчик для Sega Mega Drive (часть 2)
2019-01-02 в 20:05, admin, рубрики: reverse engineering, sega genesis, sega mega drive, ассемблер, дизассемблер, Игры и игровые приставки, ненормальное программирование, отладка, Программирование, реверс-инжиниринг
Привет всем,
В предыдущей статье мы успешно модифицировали ядро эмулятора игр на Sega Mega Drive
/ Genesis
, добавив в него возможность отладки. Теперь пришёл черёд написания собственно плагина-отладчика для IDA Pro
, версия 7.0
. Приступим.Читать полностью »