Это анализатор стектрейсов и логов. Он позволяет читать стектрейсы. Он создает фоновый подпроцесс, который проверяет, работает ли еще процесс игры; когда он перестает работать, выполняются проверки.
Он ищет:
- Отсутствующие зависимости (Missing Dependencies)
- Проблемные драйверы (Bad Drivers)
- Проблемы с ранним окном (EarlyWindowIssues)
- Работает с ModLauncher (MCForge и производные) 1.13+, FabricMC и FeatureCreep
- Бесплатный и с открытым исходным кодом (Free and Open Source)
- Поддерживает Español, English, Arabic, Portuguese, Russian, Chinese, Persian, Korean, Japanese, Esperanto и другие языки.
- Сломанные конфигурации SpongeMixin (Broken SpongeMixin Configs)
- Сервисы ModLauncher + SpongeMixins в стектрейсе
- Jar-файлы в строках
- Если в строках нет файла мода, он проверяет modid (это常见 в средах разработки и ориентированных на разработку лаунчерах)
- Если этого не существует, он проверяет пакеты в этой строке
- Разделяет фатальные и нефатальные трассировки, рекомендуя prioritise фатальные
- Имеет систему уровней и номеров строк; трассировки с более высоким уровнем следует prioritise над трассировками с более низким уровнем, на одном уровне следует prioritise трассировки с меньшим номером строки (ln), как указано.
- Имеет списки запрещенных (denylists) префиксов для пакетов, чтобы остановить включение пакетов лаунчера, modid и jar в вывод.
- Находит фатальные ошибки "class not found"
- Работает со многими различными форматами логов от разных лаунчеров
- Упрощает поиск причины сбоя
- Настраиваемый графический интерфейс на основе HTML, который могут настраивать редакторы модпаков (просто перейдите в crash_detector/pantilla.htm и отредактируйте его, сохраняя содержимое внутри {})
- Показывает, где находятся ваши логи
- Возможность поделиться своим отчетом со ссылками на логи с использованием различных API и сайтов для логирования, таких как securelogger.net, mclo.gs, paste.mikumikudance.jp и других сайтов логирования, которые поддерживаются API для MCLogs API и stikked, путем редактирования конфигурационного файла в папке crash_detector
- Проверяет другие распространенные проблемы, такие как старые версии ASM и несоответствующие версии Java.
- Клиентская анонимизация логов находится в бета-версии, но включена по умолчанию; она удаляет конфиденциальную информацию, такую как access tokens, UUID, имена пользователей и IP-адреса, перед их загрузкой на сайт логов. Это все еще бета, поэтому могут существовать проблемы.
- NullPointerException
- Недостаточно памяти (Low Memory)
- Возможность загрузки логов с вашего собственного компьютера или из других источников (sideload)
- Возможность чтения логов по ссылкам в сообщениях Markdown (таких как Discord, QQ, Slack, AI или Crash Assistant)
- Возможность просмотра списка модов (modlist)
- Возможность сравнения списка модов с последнего запуска и последнего успешного запуска.
- Кнопка "Mods", которая позволяет сравнивать список модов из любых 2 запусков с момента установки CrashDetector
- Обнаружение ошибки "IPV4 Not preferred" и патч, который можно включить. (Распространенная проблема с Groovy Modloader)
- Возможность редактирования конфигурации в графическом интерфейсе
- Сканер модов MCreator
- Различия в списках ID сервера и клиента, препятствующие подключению пользователя к серверу.
- Возможность искать моды с отсутствующими классами с использованием API NeoForge Waifu (1 поиск в минуту)
- Возможность искать ссылки на поля и методы во всех ваших модах
- Возможность просматривать структуру всех ваших модов, включая Jar in Jar, классы, методы и поля.
- Система расширений для создания собственных расширений для добавления дополнительной функциональности в CrashDetector; подробности смотрите в этом интерфейсе.
- Недопустимые символы или фразы в mods.toml
- Недопустимые трансформеры доступа (Invalid access transformers)
- Попытка загрузить класс для клиента на сервере или наоборот
- Отсутствующие поля в mods.toml
- Несовпадение modid в mods.toml с аннотацией @Mod
- Отсутствие метаданных для modid в mods.toml (часто вызвано неправильным modid в [[dependencies.modid]])
- Слушатели не найдены в классе (No listeners found in class)
- Ошибка SoundPhysicsMod со sound system
- UnionFileSystem$UncheckedIOException java.util.zip.ZipException: zip END header not found (Часто вызвано поврежденной установкой модпака, особенно в некоторых лаунчерах)
- GeckoLib/AzureLib инициализированы слишком рано с Fabric Mod на MCForge
- Совместимость с C2ME
ПЛАНИРУЕМЫЙ КОНТЕНТ
- Интеграция с MixerLogger
- Поддержка большего количества лаунчеров
- Просмотрщик логов с цветами и фоном на основе holotalk
Ему все еще требуется некоторое тестирование, больше реального использования и улучшение внешнего вида, но в конечном итоге должно стать возможным иметь такой анализатор стектрейсов.
Примечания:
Не тестировался на quilt-loader и библиотеке логирования QSL.
Если лаунчер не сохраняет логи в файл, как MultiMC/PrismMC, появится диалоговое окно, позволяющее скопировать консоль разработки/лог Minecraft в него для анализа.
На Java 8 (常见 для 1.16.5 и ранее) в Vanilla Launcher и многих подобных лаунчерах обмен отчетами на официальном endpoint не работает из-за ошибки SSL,常见 в старых сборках на Java 8. Это похожая причина, по которой многие старые сборки Java нельзя использовать с установщиками MCForge.
На Java 8 (常见 для 1.16.5 и ранее) некоторые методы сканирования процесса и поиска бинарного файла Java ненадежны. Я планирую повысить надежность. Однако, он тестировался на 1.16.5 MCForge на MacOS 10.14 Mojave.
Поиск строк в папках в Windows, включая бинарные файлы
Возможность делиться логами
УВЕДОМЛЕНИЕ О КОНФИДЕНЦИАЛЬНОСТИ: ЕСЛИ ВЫ ИСПОЛЬЗУЕТЕ КНОПКУ "SHARE REPORT", ВЫ ЗАГРУЖАЕТЕ КОПИЮ ВАШЕГО ОТЧЕТА НА НАШ САЙТ asbestosstar.egoism.jp/crash_detector/ И ОНА ХРАНИТСЯ ТАМ В ТЕЧЕНИЕ 3 ДНЕЙ. ЛОГИ ЗАГРУЖАЮТСЯ НА SECURELOGGER.NET НА НЕКОТОРОЕ ВРЕМЯ. ЕСЛИ ВЫ НЕ ЖЕЛАЕТЕ, ЧТОБЫ ВАШИ ЛОГИ ЗАГРУЖАЛИСЬ, НЕ ИСПОЛЬЗУЙТЕ КНОПКУ "SHARE". ОТЧЕТ СОДЕРЖИТ СЛЕДУЮЩУЮ ИНФОРМАЦИЮ:
ССЫЛКИ НА ВАШИ ЛОГИ
СОДЕРЖИМОЕ ЭКРАНА В СЕРЕДИНЕ НАШЕГО ГРАФИЧЕСКОГО ИНТЕРФЕЙСА
По умолчанию Crash Detector настроен на анонимизацию ваших логов на стороне клиента; это можно включить или отключить в конфигурации в нижней части экрана share. Он удалит конфиденциальную информацию, такую как access tokens, UUID, имена пользователей и IP-адреса, перед их загрузкой на сайт логов. Это все еще бета, поэтому могут существовать проблемы. Вы также можете сменить сайт для логов и endpoints для отчетов здесь. Вы также можете использовать пользовательский сайт для логов, если он поддерживается выбранным API, путем редактирования конфигурационного файла в папке crash_detector.
Если вы получили Crash Detector в составе модпака, обязательно ознакомьтесь с этими настройками, так как разработчики модпаков могут их изменять.