- edited description
Inspect.convert throws KeyError
Some of my requests seem to be triggering this exception. It's only happening on my live environment so it's quite hard for me to try to manually trigger / debug this further, I don't think it's environment related though. Any ideas?
#!
Request watchdog failed
Stacktrace (most recent call last):
File "dogslow/__init__.py", line 134, in peek
output += '\n\n'
File "dogslow/__init__.py", line 69, in stack
if with_locals:
File "python2.7/inspect.py", line 885, in formatargvalues
specs.append(strseq(args[i], convert, join))
File "python2.7/inspect.py", line 838, in strseq
return join(map(lambda o, c=convert, j=join: strseq(o, c, j), object))
File "python2.7/inspect.py", line 838, in <lambda>
return join(map(lambda o, c=convert, j=join: strseq(o, c, j), object))
File "python2.7/inspect.py", line 840, in strseq
return convert(object)
File "python2.7/inspect.py", line 882, in convert
return formatarg(name) + formatvalue(locals[name])
Exception
#!
Types: KeyError
Value: 'metric'
Location: python2.7/inspect.py, convert:882
Comments (6)
-
reporter -
reporter - edited description
-
repo owner I haven't seen that one before and judging from just the stacktrace I don't really have any ideas.
If you can reproduce this reliably, could you insert a log/print statement at
dogslow/__init__.py:69
to see what stack frame is causing the problem?FWIW, you can disable the logging of stack local vars (
DOGSLOW_STACK_VARS=False
) to work around the issue for now. -
repo owner Did you ever manage to gather more info on this?
-
reporter I had to disable dogslow temporarily at the time for other reasons, I only put it back on a couple of days ago. I'm still getting the same issue periodically with various keys causing the error. I have all the local vars of the trace and offending requests logged on sentry now though, so I'll try to do some debugging on the issue beginning of next week.
-
repo owner Ok, let me know how you go and if there's anything I can help with.
- Log in to comment
Edited for readability.