Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

when use skywalking agent ,arthas is can‘t work well #4820

Closed
RainElohim opened this issue May 25, 2020 · 5 comments · Fixed by #4858
Closed

when use skywalking agent ,arthas is can‘t work well #4820

RainElohim opened this issue May 25, 2020 · 5 comments · Fixed by #4858
Assignees
Labels
backend OAP backend related. enhancement Enhancement on performance or codes feature New feature
Milestone

Comments

@RainElohim
Copy link

RainElohim commented May 25, 2020

this issue have many detailed informations
alibaba/arthas#1141
please check all comments
thanks

@wu-sheng
Copy link
Member

wu-sheng commented May 25, 2020

I just read that, but, basically, that is not caused by SkyWalking either.
The *auxiliary$` is generated by byte-buddy automatically, but only once. The instrumentation is controlled by byte-buddy, and we don't do re-transform to any class.

I don't know why there are so many com.example.demo.TestController$auxiliary$ created, my guess and assumption is, that related to how the Arthas works on the runtime. It keeps creating the new classes on the runtime based on some reason(not sure), and that class triggers the SkyWalking instrumentation again.

@wu-sheng wu-sheng added the discussion Discussions label May 25, 2020
@wu-sheng
Copy link
Member

Ping @candyleer, as you like the agent game :)

@wu-sheng
Copy link
Member

English only.

@wu-sheng
Copy link
Member

Read my reply more carefully. I didn't say it is Arthes fault. In open source, there is no one's fault. I was saying, there is retransfer happening. And that makes the transfer done more than one time.

I am just guessing the Arthes logic, and your demo has just proved my assumption, right?

kylixs added a commit to kylixs/skywalking that referenced this issue Jun 4, 2020
… of other javaagent retransform classes enhanced by SkyWalking.
kylixs added a commit to kylixs/skywalking that referenced this issue Jun 4, 2020
… of other javaagent retransform classes enhanced by SkyWalking.
@wu-sheng wu-sheng added this to the 8.1.0 milestone Jul 1, 2020
@wu-sheng wu-sheng linked a pull request Jul 1, 2020 that will close this issue
3 tasks
@wu-sheng wu-sheng added backend OAP backend related. enhancement Enhancement on performance or codes feature New feature and removed discussion Discussions labels Jul 1, 2020
@zhangzhen108
Copy link

@wu-sheng If other agents do not enhance the class during the first load (transform), the class will be enhanced during the second transform. Then skywalking directly returns the byte stream cached for the first time in the second time, will it overwrite the content enhanced for the second time by other agents? Because the order in which the transform is executed depends on the order in which the Agent is configured.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend OAP backend related. enhancement Enhancement on performance or codes feature New feature
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants