Официальная Go-библиотека Datadog для APM-трейсинга, непрерывного профилирования и мониторинга безопасности приложений.
alibaba/arthas
Инструмент для диагностики Java-приложений в работающей JVM: помогает находить проблемы без изменения кода и перезапуска.
- Звёзды
- 37,586
- Форки
- 7,643
- Открытые issues
- 486
- Последний коммит
- позавчера
Что это?
Arthas — инструмент для диагностики Java-приложений с открытым исходным кодом от Alibaba. Он подключается к работающей JVM, чтобы разработчики могли на ходу разбираться с проблемами в продакшене — без изменения кода и перезапуска сервера. Arthas наблюдает за приложением, не приостанавливая его, поэтому работающие потоки продолжают выполняться.
Команды Arthas помогают выполнять типовые задачи при диагностике: выяснить, из какого jar загружен класс, чтобы разрешить конфликт; декомпилировать загруженный класс и проверить, какой код действительно выполняется; изучить иерархию classloader; наблюдать за параметрами методов, возвращаемыми значениями и исключениями. Также доступны просмотр потоков, трассировка методов для поиска медленных вложенных вызовов, статистика вызовов и профилирование с Flame Graphs.
Arthas работает как интерактивная оболочка командной строки с автодополнением. Также им можно пользоваться через браузер с помощью WebConsole. Инструмент поддерживает JDK 8 и новее (в том числе JDK 17, 21 и 25 в ветке 4.x) на Linux, macOS и Windows.
Ключевые возможности
- 01Декомпилировать загруженные классы и проверять, какой код действительно выполняется.
- 02Трассировать вызовы методов, чтобы находить медленные вложенные вызовы.
- 03Наблюдать за параметрами методов, возвращаемыми значениями и выброшенными исключениями, не приостанавливая потоки.
- 04Изучать потоки, загрузку CPU и статистику GC в работающей JVM.
- 05Формировать результаты профилирования с Flame Graphs.
- 06Пользоваться инструментом через командную строку с автодополнением, telnet или браузерную WebConsole.
Сценарии использования
- Диагностировать Java-сервис в продакшене без перезапуска.
- Выяснить, из какого jar загружен класс, если зависимости конфликтуют.
- Находить медленные вызовы методов или потоки с высокой загрузкой CPU в работающем приложении.
- Проверять во время выполнения, какая версия класса действительно исполняется.
Быстрый старт
- 1
Скачайте arthas-boot.jar
curl -O https://arthas.aliyun.com/arthas-boot.jar - 2
Запустите Arthas с помощью java и подключите его к работающей JVM
java -jar arthas-boot.jar
Что важно знать
- Диагностирует только Java-приложения, работающие в JVM.
- Для версии 4.x требуется JDK 8 или новее.
В подборках
Темы
Частые вопросы
- Что такое arthas?
- Инструмент для диагностики Java-приложений в работающей JVM: помогает находить проблемы без изменения кода и перезапуска. Arthas — инструмент для диагностики Java-приложений с открытым исходным кодом от Alibaba. Он подключается к работающей JVM, чтобы разработчики могли на ходу разбираться с проблемами в продакшене — без изменения кода и перезапуска сервера. Arthas наблюдает за приложением, не приостанавливая его, поэтому работающие потоки продолжают выполняться.
- arthas можно использовать бесплатно? Какая у него лицензия?
- arthas распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- arthas всё ещё поддерживается?
- Активно поддерживается. Последний коммит в arthas — 23 окт. 2026 г..
- Для чего можно использовать arthas?
- Диагностировать Java-сервис в продакшене без перезапуска. Выяснить, из какого jar загружен класс, если зависимости конфликтуют. Находить медленные вызовы методов или потоки с высокой загрузкой CPU в работающем приложении. Проверять во время выполнения, какая версия класса действительно исполняется.
- Как установить arthas?
- Скачайте arthas-boot.jar: curl -O https://arthas.aliyun.com/arthas-boot.jar Запустите Arthas с помощью java и подключите его к работающей JVM: java -jar arthas-boot.jar
- Где скачать arthas?
- Исходный код и инструкции по установке — на GitHub: https://github.com/alibaba/arthas
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Низкоуровневый по накладным расходам сэмплирующий профилировщик Java: собирает профили CPU, аллокаций, блокировок и нативной памяти без смещения safepoint.
CLI и TUI, которые прослеживают цепочку систем, запустивших процесс, занявших порт или контейнер либо открывших файл.
CLI-инструмент сканирует кластеры Kubernetes, выявляет проблемы и с помощью LLM объясняет их простым языком.
CLI для анализа сети на базе eBPF: захватывает трафик HTTP, Redis, MySQL, Kafka и DNS и показывает, на каком этапе в ядре возникает задержка.
Высокопроизводительный конвейер observability на Rust для сбора, преобразования и маршрутизации логов и метрик в любые системы назначения.