Opened 17 years ago
Last modified 12 years ago
#21 new enhancement
log failures better: add caller stack
Reported by: | Brian Warner | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | eventually |
Component: | logging | Version: | 0.1.6 |
Keywords: | Cc: |
Description
When a method fails, we can log some information about it (if that option is turned on in the Tub). The information logged looks like this:
2007/09/08 19:10 -0700 [Negotiation,client] an outbound callRemote (that we sent to someone else) failed on the far end 2007/09/08 19:10 -0700 [Negotiation,client] reqID=858, rref=<RemoteReference at 0x48b37174 [pb://onxnl2fpfqruabaku26fa4t5543vj3at@207.7.153.181:36611,127.0.0.1:36611/vdrive]>, methname=get
and includes the remote stack trace.
This information is missing the following useful pieces:
- the RemoteInterface? in use: that methname=get is hard to use without knowing exactly which "get" method we're talking about
- the stack trace (or at least the top-most frame) of the callRemote(), so we can find out why we were sending this message
Change History (8)
comment:1 Changed 17 years ago by
Version: | 0.1.5 → 0.1.6 |
---|
comment:2 Changed 17 years ago by
Component: | unknown → logging |
---|
comment:3 Changed 16 years ago by
comment:4 Changed 16 years ago by
Milestone: | undecided → 0.3.0 |
---|
comment:5 Changed 16 years ago by
Milestone: | 0.3.1 → 0.3.2 |
---|
first task is to measure how long it takes to capture a short stack frame. If it's less than a millisecond I'm ok with adding it to callRemote.
comment:6 Changed 15 years ago by
Milestone: | 0.3.3 → 0.4.0 |
---|---|
Summary: | log failures better → log failures better: add caller stack |
comment:7 Changed 15 years ago by
Milestone: | 0.5.0 → eventually |
---|
Note: See
TracTickets for help on using
tickets.
it looks like the interface name should be included in that log message in [cc600fb8f9b525101bd82231f846d8dda7244739], which was released in foolscap-0.1.7 .
So the only remaining piece is the stack trace (or a few frames of it) that led up the the callRemote().