You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Huxing Zhang b05ddf017b Fix broken links. 6 years ago
.mvn/wrapper add maven wrapper. #39 6 years ago
agent [maven-release-plugin] prepare for next development iteration 6 years ago
bin update as.sh to support ubuntu. #25 6 years ago
client [maven-release-plugin] prepare for next development iteration 6 years ago
core Fix broken links. 6 years ago
lib/org/benf/cfr/0.132 update dependency 7 years ago
packaging [maven-release-plugin] prepare for next development iteration 6 years ago
site update release-notes.md 6 years ago
spy [maven-release-plugin] prepare for next development iteration 6 years ago
testcase [maven-release-plugin] prepare for next development iteration 6 years ago
.gitignore add site module and sphinx support 7 years ago
CONTRIBUTING.md as-package.sh support maven wrapper and auto extract project version. #39 6 years ago
LICENSE add LICENSE 7 years ago
README.md Add English version of README. 6 years ago
README_EN.md Polish English readme. 6 years ago
TODO.md init 7 years ago
as-package.sh as-package.sh support maven wrapper and auto extract project version. #39 6 years ago
batch.as init 7 years ago
mvnw add maven wrapper. #39 6 years ago
mvnw.cmd add maven wrapper. #39 6 years ago
pom.xml [maven-release-plugin] prepare for next development iteration 6 years ago

README_EN.md

Arthas

arthas

Arthas is an Java Diagnostic tool open sourced by Alibaba.

Arthas can help developer trouble-shooting production issues for Java applications without modifying your code or restating your server.

Background

In production system, sometimes the networks is unreachable from local development environment. If you encounter some issues in production system, it is impossible to use IDE to debug the application remotely. More importantly, debugging in production is unacceptable, because it will suspend all the threads, which leads to business unavailability.

Some may think of reproducing the same issue on the test/staging environment, however, some tricky issue either can hardly be reproduced on a different environment, or even disappeared once restarted.

Thinking of adding some logs to your code? You have to go through test, staging, and then on to production. Time is money! That is a lot inefficient! Besides, the issue may not be reproducible once restart your JVM, as described above.

Arthas is born to solve these issues. You can trouble-shoot your production issue on-the-fly. No JVM restart, no additional code changes. Arthas works as an observer, which will never suspend your existing threads.

Key features

  • check whether a class is loaded? And whether is class loaded from? (Useful for trouble-shooting jar file conflicts)
  • decompile a class to ensure the code is running as expected.
  • view classloader statistics, e.g. how may classloaders are there? how many class is loaded per classloader? What is the classloader hierarchy? Is there possible classloader leaks?
  • view the method invocation details, e.g. method parameter, return object, thrown exception, and etc.
  • check the stack trace of specified method invocation. This is useful when you would like to know who is calling your method?
  • trace the method invocation to find slow sub-invocations.
  • monitoring your system metrics, thread states and cpu usage, gc statistics, and etc.
  • command line interactive mode, with auto completed feature enabled.
  • telnet and websocket support, which enables both local and remote diagnostics with command line and browsers.

Documentation

Feature Showcase

Dashboard

dashboard

Web Console

web console