Arthas
Alibaba Java Diagnostic Tool
Often times, the production system network is inaccessible from the local development environment. If issues are encountered in production systems, it is impossible to use IDEs to debug the application remotely. More importantly, debugging in production environment is unacceptable, as it will suspend all the threads, resulting in the suspension of business services. Developers could always try to reproduce the same issue on the test/staging environment. However, this is tricky as some issues...