[ 
https://issues.apache.org/jira/browse/CASSANDRA-15971?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jonathan Shook updated CASSANDRA-15971:
---------------------------------------
    Description: 
When trying out full query logging as a possible integration for nosqlbench 
usage, I ran across many issues which would make it painful for users. Since 
there were several, they will be added to a single issue for now. This issue 
can be broken up if needed.
----
FQL doesn't work on my system, even though it says it is logging queries. 

With the following configuration in cassandra.yaml:

 
{noformat}
full_query_logging_options:
    log_dir: /REDACTED/fullquerylogs
    roll_cycle: HOURLY
    block: true
    max_queue_weight: 268435456 # 256 MiB
    max_log_size: 17179869184 # 16 GiB
    ## archive command is "/path/to/script.sh %path" where %path is replaced 
with the file being rolled:
    # archive_command:
    # max_archive_retries: 10
{noformat}
which appears to be the minimal configuration needed to enable fql, only a 
single file `directory-listing.cq4t` is created, which is a 64K sized file of 
zeroes.

 
----
Calling bin/nodetool enablefullquerylog throws an error initially.

[jshook@cass4 bin]$ ./nodetool enablefullquerylog

 
{noformat}
error: sun.nio.ch.FileChannelImpl.map0(int,long,long) 
-- StackTrace -- 
java.lang.NoSuchMethodException: sun.nio.ch.FileChannelImpl.map0(int,long,long) 
        at java.base/java.lang.Class.getDeclaredMethod(Class.java:2553) 
        at net.openhft.chronicle.core.OS.lambda$static$0(OS.java:51) 
        at 
net.openhft.chronicle.core.ClassLocal.computeValue(ClassLocal.java:53){noformat}
(full stack trace attached to this ticket)

 

Subsequent calls produce normal output:

 
{noformat}
[jshook@cass4 c4b1]$ bin/nodetool enablefullquerylog 
nodetool: Already logging to /home/jshook/c4b1/data/fullquerylogs 
See 'nodetool help' or 'nodetool help <command>'.{noformat}
 
----
nodetool missing getfullquerylog makes it difficult to verify current 
fullquerylog state without changing it. The conventions for nodetool commands 
should be followed to avoid confusing users.
----
(maybe)
{noformat}
tools/bin/fqltool help{noformat}
should print out help for all fqltool commands rather than simply repeating the 
default The most commonly used fqltool commands are..
----
1. [https://cassandra.apache.org/doc/latest/new/fqllogging.html] is 
malformatted, mixing the appearance of configuration with comments, which is 
confusing at best.

 

  was:
When trying out full query logging as a possible integration for nosqlbench 
usage, I ran across many issues which would make it painful for users. Since 
there were several, they will be added to a single issue for now. This issue 
can be broken up if needed.
----
FQL doesn't work on my system, even though it says it is logging queries. 

With the following configuration in cassandra.yaml:

 
{noformat}
full_query_logging_options:
    log_dir: /REDACTED/fullquerylogs
    roll_cycle: HOURLY
    block: true
    max_queue_weight: 268435456 # 256 MiB
    max_log_size: 17179869184 # 16 GiB
    ## archive command is "/path/to/script.sh %path" where %path is replaced 
with the file being rolled:
    # archive_command:
    # max_archive_retries: 10
{noformat}
which appears to be the minimal configuration needed to enable fql, only a 
single file `directory-listing.cq4t` is created, which is a 64K sized file of 
zeroes.

 
----
Calling bin/nodetool enablefullquerylog throws an error initially.

[jshook@cass4 bin]$ ./nodetool enablefullquerylog 

 
{noformat}
error: sun.nio.ch.FileChannelImpl.map0(int,long,long) 
-- StackTrace -- 
java.lang.NoSuchMethodException: sun.nio.ch.FileChannelImpl.map0(int,long,long) 
        at java.base/java.lang.Class.getDeclaredMethod(Class.java:2553) 
        at net.openhft.chronicle.core.OS.lambda$static$0(OS.java:51) 
        at 
net.openhft.chronicle.core.ClassLocal.computeValue(ClassLocal.java:53){noformat}

 (full stack trace attached to this ticket)

 

Subsequent calls produce normal output:

 
{noformat}
[jshook@cass4 c4b1]$ bin/nodetool enablefullquerylog 
nodetool: Already logging to /home/jshook/c4b1/data/fullquerylogs 
See 'nodetool help' or 'nodetool help <command>'.{noformat}
 
----
nodetool missing getfullquerylogging makes it difficult to verify current 
fullquerylog state without changing it. The conventions for nodetool commands 
should be followed to avoid confusing users.
----
(maybe)
{noformat}
tools/bin/fqltool help{noformat}
should print out help for all fqltool commands rather than simply repeating the 
default The most commonly used fqltool commands are..
----
1. [https://cassandra.apache.org/doc/latest/new/fqllogging.html] is 
malformatted, mixing the appearance of configuration with comments, which is 
confusing at best.

 


> full query log needs improvement
> --------------------------------
>
>                 Key: CASSANDRA-15971
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15971
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Tool/fql
>            Reporter: Jonathan Shook
>            Priority: Normal
>         Attachments: st1.txt
>
>
> When trying out full query logging as a possible integration for nosqlbench 
> usage, I ran across many issues which would make it painful for users. Since 
> there were several, they will be added to a single issue for now. This issue 
> can be broken up if needed.
> ----
> FQL doesn't work on my system, even though it says it is logging queries. 
> With the following configuration in cassandra.yaml:
>  
> {noformat}
> full_query_logging_options:
>     log_dir: /REDACTED/fullquerylogs
>     roll_cycle: HOURLY
>     block: true
>     max_queue_weight: 268435456 # 256 MiB
>     max_log_size: 17179869184 # 16 GiB
>     ## archive command is "/path/to/script.sh %path" where %path is replaced 
> with the file being rolled:
>     # archive_command:
>     # max_archive_retries: 10
> {noformat}
> which appears to be the minimal configuration needed to enable fql, only a 
> single file `directory-listing.cq4t` is created, which is a 64K sized file of 
> zeroes.
>  
> ----
> Calling bin/nodetool enablefullquerylog throws an error initially.
> [jshook@cass4 bin]$ ./nodetool enablefullquerylog
>  
> {noformat}
> error: sun.nio.ch.FileChannelImpl.map0(int,long,long) 
> -- StackTrace -- 
> java.lang.NoSuchMethodException: 
> sun.nio.ch.FileChannelImpl.map0(int,long,long) 
>         at java.base/java.lang.Class.getDeclaredMethod(Class.java:2553) 
>         at net.openhft.chronicle.core.OS.lambda$static$0(OS.java:51) 
>         at 
> net.openhft.chronicle.core.ClassLocal.computeValue(ClassLocal.java:53){noformat}
> (full stack trace attached to this ticket)
>  
> Subsequent calls produce normal output:
>  
> {noformat}
> [jshook@cass4 c4b1]$ bin/nodetool enablefullquerylog 
> nodetool: Already logging to /home/jshook/c4b1/data/fullquerylogs 
> See 'nodetool help' or 'nodetool help <command>'.{noformat}
>  
> ----
> nodetool missing getfullquerylog makes it difficult to verify current 
> fullquerylog state without changing it. The conventions for nodetool commands 
> should be followed to avoid confusing users.
> ----
> (maybe)
> {noformat}
> tools/bin/fqltool help{noformat}
> should print out help for all fqltool commands rather than simply repeating 
> the default The most commonly used fqltool commands are..
> ----
> 1. [https://cassandra.apache.org/doc/latest/new/fqllogging.html] is 
> malformatted, mixing the appearance of configuration with comments, which is 
> confusing at best.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to