[ 
https://issues.apache.org/jira/browse/CASSANDRA-20854?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18040674#comment-18040674
 ] 

Stefan Miklosovic commented on CASSANDRA-20854:
-----------------------------------------------

Thanks for merging my stuff, [~bernardo.botella]!

Couple notes here:

With safe profiler, when we profile, a file with results is saved to a log dir 
for profiler, but when invocation of that JMX method (e.g. manually or via 
nodetool) is done from physically different machine, then a user has to have 
some kind of access to that data. This is not necessarily always the case. 

If this feature is meant to be used together with Sidecar, that can always pick 
it up. 

However, in a situation when safe profiler is used, Sidecar is not used and we 
execute from remote machine, there is currently no way to fetch it.

What I was thinking about is to add a command which would just copy over that 
file via JMX. We might return the result always via JMX but I do not think that 
is a good idea because these result files might have unpredictable size, maybe 
dozens of MBs and returning it all the time via JMX might be detrimental to 
performance.

So I would dedicate a standalone {{nodetool profile fetch _source_ 
_destination_}} where source would be name of file in log dir in Cassandra side 
and destination local dir on invoker's machine and it would be transported via 
JMX like that.

We would also need {{nodetool profile list}} to list what files there are. 

> Support low-overhead async profiling via JMX/Nodetool with the async-profiler 
> library
> -------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-20854
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-20854
>             Project: Apache Cassandra
>          Issue Type: New Feature
>          Components: Tool/nodetool
>            Reporter: Yaman Ziadeh
>            Assignee: Bernardo Botella Corbi
>            Priority: Normal
>         Attachments: CASSANDRA-20854-ci_summary.html
>
>          Time Spent: 5h 40m
>  Remaining Estimate: 0h
>
> The [async-profiler|https://github.com/async-profiler/async-profiler] library 
> is commonly used by the community to run low-overhead profiling on Cassandra 
> processes due to its effectiveness and versatility.
> Following the discussion on [this 
> thread,|https://lists.apache.org/thread/98y59qp42zwwrtbcvnzvlh254c5vyhoq] 
> this library would be a great tool to integrate directly into Cassandra and 
> expose via JMX accompanied by a convenient `nodetool profile` command.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to