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

Jon Haddad updated CASSSIDECAR-496:
-----------------------------------
    Resolution: Fixed
        Status: Resolved  (was: Triage Needed)

>   Sidecar unconditionally enables Netty wire logging, flooding logs with hex 
> dumps of request payloads
> ------------------------------------------------------------------------------------------------------
>
>                 Key: CASSSIDECAR-496
>                 URL: https://issues.apache.org/jira/browse/CASSSIDECAR-496
>             Project: Sidecar for Apache Cassandra
>          Issue Type: Bug
>          Components: Configuration
>            Reporter: Jon Haddad
>            Assignee: Jon Haddad
>            Priority: Major
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> {\{HttpServerOptionsProvider}} line 58 hardcodes \{{setLogActivity(true)}}, 
> installing
> Netty's \{{LoggingHandler}} on every HTTP connection with no way to disable 
> it. The only
> hardcoded option in a method where everything else reads from 
> \{{SidecarConfiguration}}.
> On a 3-node cluster running the \{{ghcr.io/apache/cassandra-sidecar}} image 
> this produced
> 8.6 million log lines in one hour, roughly 96% of all log volume, because
> {\{ByteBufUtil.appendPrettyHexDump}} turns a single 95,504-byte response into 
> about 6,000
> lines. The dumps include request and response bodies in cleartext, and since 
> schema
> endpoints return DDL, CQL ends up in the logs too. It only fires when the 
> process starts
> without \{{logback.configurationFile}} — supplied solely by the Gradle start 
> scripts — so a
> directly-launched jar falls back to logback's default of root DEBUG and dumps 
> everything;
> {\{server/src/test/resources/logback-test.xml}} pins \{{LoggingHandler}} to 
> info, which is
> why CI never caught it.
> Fix: make it configurable via \{{ServiceConfiguration}}, defaulting
> to false, following the existing \{{tcp_keep_alive}} pattern, plus
> {\{<logger name="io.netty" level="INFO"/>}} in \{{conf/logback.xml}} as 
> defence in depth.



--
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