117 Commits
Author SHA1 Message Date
Ben 35a718c061 feat: support attach across mount namespace for k8s ephemeral debug container (#3247)
When attaching from a k8s ephemeral debug container, the debug container
shares the pid namespace but NOT the mount namespace with the target app
container, which breaks the JDK attach mechanism. This adds cross mount
namespace support (auto-gated by comparing /proc/<pid>/ns/mnt), so normal
same-container / non-Linux usage is unaffected:

- expose the target attach socket via a /proc/<pid>/root symlink
- copy the full arthas home into the target container (incl. arthas-spy.jar,
  async-profiler, arthas.properties), chowned to the target uid/gid
- clean up the temp arthas home on stop/destroy (gated by a marker file)
- post-attach telnet port health check with a clear error pointing to arthas.log
- as.sh: skip the user/owner consistency check when running as root
2026-08-13 20:14:08 +08:00
huadoudouxue ad6232736b Add loongarch64 as a supported platform (#3164) 2026-03-31 19:42:06 +08:00
Copilot 7edd52904d Fix main_class displaying extra arguments on Arthas startup (#3150) 2026-03-13 14:39:44 +08:00
Copilot 896fc7e851 Add configurable output stream to AnsiLog to avoid hardcoded System.out (#3128) 2026-01-09 21:17:31 +08:00
hengyunabc d0c3516184 feat: add userId tracking for usage statistics across all command execution paths (#3087)
- Add userId field to Session interface and implementation
- Support userId extraction from HTTP headers (X-User-Id) and URL parameters
- Pass userId through command execution chain (HTTP API, MCP server, command executor)
- Include userId in usage statistics reporting to arthasUsageSuccess
- Add userId display in session command output
- Update CommandExecutor interface to accept userId parameter
- Ensure userId is properly propagated in:
  * HTTP term connections (BasicHttpAuthenticatorHandler, ExtHttpTtyConnection)
  * HTTP API requests (ApiRequest, HttpApiHandler)
  * MCP server stateless and streamable handlers
  * Arthas command context and tool execution
2025-11-27 15:49:03 +08:00
hengyunabc 0896c192e1 fix arthas-boot blocking in findTcpListenProcess method. #3007 2025-04-08 15:31:52 +08:00
hengyunabc 3144514717 fix get main_class. #2990 2025-02-14 16:23:45 +08:00
dkbmtb eb9596f06a Refactored code to adopt JDK 8 style and features. (#2759) 2023-12-25 13:24:15 +08:00
hengyunabc 7a722217ab fix AnsiLog static init may error. #2740 2023-11-28 15:05:42 +08:00
hengyunabc 82ab95c3c3 use MethodHandles.Lookup IMPL_LOOKUP to support define class after jdk 17. #2659 2023-11-24 17:30:24 +08:00
Chris Tianand昆泰 e3a5c3d8bc Support profiler command in Alpine Linux, support musl libc (#2481)
* Support profiler command in Alpine Linux, support musl libc

* Add pipeline for building Alpine Linux async-profiler dynamic link library files

---------

Co-authored-by: 昆泰 <dongyun.tdy@alibaba-inc.com>
2023-05-08 16:59:58 +08:00
hengyunabc 8834a0f2b2 change target to jdk8. #2146 2023-04-23 16:21:22 +08:00
火云邪神 ed381886b4 add linux-other-arch complie/build support (#2443) 2023-04-19 17:08:50 +08:00
hengyunabc 4aff8910d2 change websocket idle time to 10s. #2448 2023-03-13 21:02:37 +08:00
joecqupt 5491f6b427 fix AnsiLog format NullPointerException 2023-01-17 11:26:09 +08:00
hengyunabc be27d0e51d fix pom.xml url. #2348 2022-11-18 11:21:53 +08:00
pandaapo 7637761fbb support packaging arthas-vmtool in 32-bit windows. (#2316) 2022-10-19 16:00:07 +08:00
hengyunabc 39760baf17 fix tunnel proxy websocket can not process frame length larger than 65536 problem. #2152 2022-04-18 20:49:09 +08:00
hengyunabc 65e98b1cea vmtool support mac arm64 #2036 2021-12-02 19:55:40 +08:00
XenoAmess 3e89593d7b simplify condition (#1977) 2021-11-30 17:46:31 +08:00
XenoAmess cbc6402035 use StringBuilder instead of StringBuffer when can (#1980) 2021-10-14 11:09:19 +08:00
XenoAmess 58b5381374 use Arrays.fill (#1989) 2021-10-13 16:55:36 +08:00
hengyunabc 932340eac6 add vmtool command, part1. #1781 2021-04-29 19:28:44 +08:00
hengyunabc 51bf98cdc5 support username/password in url; websocket support url with parameters. #1655 #1727 2021-03-05 17:19:28 +08:00
hengyunabc e520b10319 Add auth command, support authentication (#1724) 2021-03-04 22:47:58 +08:00
hengyunabc 7c71623f14 print main class in welcome message. #1719 2021-03-02 14:52:39 +08:00
hengyunabc 2d7e19f133 JadModel support line mappings. #1 2021-02-23 16:46:30 +08:00
hengyunabc 537d56d1f1 websocket support idle PingWebSocketFrame. #1573 2021-02-23 01:04:29 +08:00
hengyunabc bf0ff03206 add test ci/support jdk 12 2020-12-14 22:57:17 +08:00
hengyunabc 8753c02ad1 fix NullPointerException in PidUtils. #1611 2020-12-09 11:32:10 +08:00
hengyunabc d3eb03d578 change xsd url to https. #1604 2020-12-08 11:43:36 +08:00
hengyunabc 2c3315a09d fix IOUtils unzip security problem 2020-12-02 11:28:29 +08:00
hengyunabc cdec5061b4 remove default value in as.sh/arthas-boot. #1561 2020-11-03 00:50:38 +08:00
hengyunabc e13ced6fdf support config appName;tunnel client/server support add appName prefix for agentId. #1562 2020-11-02 20:56:16 +08:00
hengyunabc 32d4321a99 tunnel server/client support http proxy. #1553 2020-10-23 19:02:33 +08:00
fornaix 6be0cc596b Support profiler command on arm64. (#1259) 2020-10-19 22:36:53 +08:00
reeco ef2b8e57c9 feature: optimize version management (#1543) 2020-10-18 23:29:12 +08:00
hengyunabc b9aabe4200 [maven-release-plugin] prepare for next development iteration 2020-09-27 23:10:43 +08:00
hengyunabc 4268b4d13e [maven-release-plugin] prepare release arthas-all-3.4.3 2020-09-27 23:10:32 +08:00
hengyunabc e40025a2df [maven-release-plugin] prepare for next development iteration 2020-09-22 22:28:39 +08:00
hengyunabc 956a27bff8 [maven-release-plugin] prepare release arthas-all-3.4.2 2020-09-22 22:28:28 +08:00
hengyunabc 4972f64713 [maven-release-plugin] prepare for next development iteration 2020-09-11 20:45:46 +08:00
hengyunabc d748271fd1 [maven-release-plugin] prepare release arthas-all-3.4.1 2020-09-11 20:45:34 +08:00
hengyunabc c0721bcc98 [maven-release-plugin] prepare for next development iteration 2020-09-02 23:32:32 +08:00
hengyunabc b85bc9aafb [maven-release-plugin] prepare release arthas-all-3.4.0 2020-09-02 23:32:20 +08:00
hengyunabc dcf50ad948 support listen at netty LocalAddress, and tunnel client connect to LocalAddress. #1467 2020-09-02 20:15:48 +08:00
hengyunabc a1c8f43032 support listen random port. #524 2020-09-02 18:07:56 +08:00
hengyunabc 60bb714675 change version to 3.4.0-SNAPSHOT 2020-08-31 11:04:26 +08:00
hengyunabc 1c97b1a7cc [maven-release-plugin] prepare for next development iteration 2020-08-11 20:05:59 +08:00
hengyunabc feac3a4825 [maven-release-plugin] prepare release arthas-all-3.3.9 2020-08-11 20:05:47 +08:00