Перейти к содержанию

Форматер стека вызовов

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

Входные данные
Выходные данные

Форматер стека вызовов

Вставьте необработанный стек вызовов — скопированный из терминала, агрегатора логов или отчета об ошибке — и этот инструмент переформатирует его так, чтобы действительно важные фреймы были легко найти. Работает с трассировками Java, JavaScript и Node.js, Python, C#, Go и Ruby, а также автоматически определяет соглашение на основе формы фреймов без необходимости выбирать язык.

Включите Свернуть фреймы библиотек, чтобы сгруппировать последовательные фреймы фреймворка и библиотеки — всё из node_modules, java.base, site-packages и подобные пути — в одну строку, или включите Показать только мой код, чтобы полностью их удалить. Ваш путь исходников позволяет указать папки или пакеты, которые действительно ваши, такие как src/ или com/myapp, переопределяя встроенный список библиотек. Нумеровать фреймы добавляет счетчик, Сокращать имена классов сокращает полностью квалифицированное имя класса до последних двух сегментов, а Показать первый фрейм выводит тип исключения, его сообщение и первый фрейм вашего кода над переформатированной трассировкой.

Трассировка, которая приехала испорченной на одной строке — вставленная из поля JSON лога с буквальными экранированиями \n вместо реальных разрывов строк — автоматически разворачивается перед форматированием, а цепочка исключений "Caused by" отображается как отступный список вместо плоской стены текста. Обрабатываются как Windows, так и Unix завершения строк, а счет под выводом сообщает, сколько фреймов поступило, сколько показано и сколько было свернуто.

Форматирование происходит полностью в вашем браузере — трассировка никогда не покидает ваше устройство, что важно, когда она может содержать внутренние пути файлов или имена классов. Скопируйте очищенный результат, загрузите его как файл .txt или отправьте его обратно на вход, чтобы отрегулировать параметры и переформатировать снова.

FAQ

Какие языки поддерживаются?
Java, JavaScript и Node.js, Python, C#, Go и Ruby, а также режим автоопределения, который выбирает нужное соглашение на основе формы фреймов в вашей трассировке.
Что считается фреймом "библиотеки"?
По умолчанию — всё, что соответствует известному фреймворку или пути зависимости — node_modules, java.base, site-packages и подобные. Установите Ваш путь исходников, чтобы назвать свои папки или пакеты, и всё остальное будет считаться библиотекой.
Работает ли с трассировкой, вставленной на одну строку?
Да. Если трассировка приходит с буквальными символами \n вместо реальных разрывов строк — что часто бывает при копировании из поля JSON лога — она автоматически разворачивается перед форматированием.
Мой стек вызовов загружается куда-то?
Нет. Форматирование работает полностью в вашем браузере, поэтому пути файлов, имена классов и любые другие детали в трассировке никогда не покидают ваше устройство.