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

Susan Hinrichs commented on TS-3072:
------------------------------------

[[email protected]] let me ponder that some more.  But here are my first 
thoughts.

The transaction is not always (or easily) available from the VC level which is 
where many useful debug messages lie.  We could push the debug_override flag 
from the continuation down into the NetworkVC class.  As it turns out I only 
ended up using the debug_override on the netVC's.  So that would eliminate 
polluting the top Continuation class.

It would be nice to not use thread local storage.  The motivation to use thread 
local storage was to minimize code change, and ease the inclusion of future 
Debug messages into the conditional debug scheme.  I'll look again to see of 
other data structures are always available to Diag and the point of debug 
decision making.

One could add a Plugin call to adjust the debug_override flag from the 
transaction object (assuming one could get access to the netvc from the 
transaction) or  from the session object.  Though I guess a tricky bit of doing 
a per transaction debug they way I have things set up is only debugging one 
transaction but not the others on the same net VC (in the case of HTTP2 or 
SPDY).  

> Debug logging for a single connection in production traffic.
> ------------------------------------------------------------
>
>                 Key: TS-3072
>                 URL: https://issues.apache.org/jira/browse/TS-3072
>             Project: Traffic Server
>          Issue Type: Improvement
>          Components: Core, Logging
>    Affects Versions: 5.0.1
>            Reporter: Sudheer Vinukonda
>            Assignee: Susan Hinrichs
>              Labels: Yahoo
>             Fix For: sometime
>
>         Attachments: ts-3072.diff
>
>
> Presently, when there's a production issue (e.g. TS-3049, TS-2983 etc), it is 
> really hard to isolate/debug with the high traffic. Turning on debug logs in 
> traffic is unfortunately not an option due to performance impacts. Even if 
> you took a performance hit and turned on the logs, it is just as hard to 
> separate out the logs for a single connection/transaction among the millions 
> of the logs output in a short period of time.
> I think it would be good if there's a way to turn on debug logs in a 
> controlled manner in production environment. One simple option is to support 
> a config setting for example, with a client-ip, which when set, would turn on 
> debug logs for any connection made by just that one client. If needed, 
> instead of one client-ip, we may allow configuring up to 'n' (say, 5) 
> client-ips. 
> If there are other ideas, please comment.



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

Reply via email to