You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Albert P Tobey (JIRA)" <ji...@apache.org> on 2015/04/15 01:39:59 UTC

[jira] [Commented] (CASSANDRA-9193) Facility to write dynamic code to selectively trigger trace or log for queries

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

Albert P Tobey commented on CASSANDRA-9193:
-------------------------------------------

Javascript makes sense since Nashorn ships with Java 8. No dependencies to add to C*.

Looks like you can get at a lot of the stuff we'd need as soon as a REPL or some way to run scripts is available:
http://moduscreate.com/javascript-and-the-jvm/

> Facility to write dynamic code to selectively trigger trace or log for queries
> ------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-9193
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9193
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Matt Stump
>
> I want the equivalent of dtrace for Cassandra. I want the ability to intercept a query with a dynamic script (assume JS) and based on logic in that script trigger the statement for trace or logging. 
> Examples 
> - Trace only INSERT statements to a particular CF. 
> - Trace statements for a particular partition or consistency level.
> - Log statements that fail to reach the desired consistency for read or write.
> - Log If the request size for read or write exceeds some threshold
> At some point in the future it would be helpful to also do things such as log partitions greater than X bytes or Z cells when performing compaction. Essentially be able to inject custom code dynamically without a reboot to the different stages of C*. 
> The code should be executed synchronously as part of the monitored task, but we should provide the ability to log or execute CQL asynchronously from the provided API.
> Further down the line we could use this functionality to modify/rewrite requests or tasks dynamically.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)