Skip to content

Cannot convert to json error in tracer #39

Description

@sdeepugd

While getting local variable list in qdb-client error is thrown in the tracer program as

Traceback (most recent call last):
  File "qdb_test.py", line 24, in <module>
    main()
  File "qdb_test.py", line 21, in main
    execfile("/home/local/ZOHOCORP/deepak-3386/Repos/Repos/OpenSource/httpie/httpie/__main__.py")
  File "/home/local/ZOHOCORP/deepak-3386/Repos/Repos/OpenSource/httpie/httpie/__main__.py", line 7, in <module>
    from core import main
  File "/home/local/ZOHOCORP/deepak-3386/Repos/Repos/OpenSource/httpie/httpie/__main__.py", line 7, in <module>
    from core import main
  File "/usr/local/lib/python2.7/dist-packages/qdb-0.1.0-py2.7.egg/qdb/tracer.py", line 449, in trace_dispatch
    return self.super_.trace_dispatch(stackframe, event, arg)
  File "/usr/lib/python2.7/bdb.py", line 49, in trace_dispatch
    return self.dispatch_line(frame)
  File "/usr/lib/python2.7/bdb.py", line 67, in dispatch_line
    self.user_line(frame)
  File "/usr/local/lib/python2.7/dist-packages/qdb-0.1.0-py2.7.egg/qdb/tracer.py", line 462, in user_line
    bound_cmd_manager.next_command()
  File "/usr/local/lib/python2.7/dist-packages/qdb-0.1.0-py2.7.egg/qdb/utils.py", line 348, in __call__
    ret = f(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/qdb-0.1.0-py2.7.egg/qdb/comm.py", line 248, in next_command
    return self.user_next_command(tracer)
  File "/usr/local/lib/python2.7/dist-packages/qdb-0.1.0-py2.7.egg/qdb/comm.py", line 498, in user_next_command
    return next(self.get_commands(tracer))()
  File "/usr/local/lib/python2.7/dist-packages/qdb-0.1.0-py2.7.egg/qdb/comm.py", line 485, in <lambda>
    yield lambda: command(tracer, event.get('p'))
  File "/usr/local/lib/python2.7/dist-packages/qdb-0.1.0-py2.7.egg/qdb/comm.py", line 679, in command_locals
    self.send_event('locals', tracer.curframe_locals)
  File "/usr/local/lib/python2.7/dist-packages/qdb-0.1.0-py2.7.egg/qdb/comm.py", line 237, in send_event
    self.send(fmt_msg(event, payload, serial=json.dumps))
  File "/usr/local/lib/python2.7/dist-packages/qdb-0.1.0-py2.7.egg/qdb/comm.py", line 72, in fmt_msg
    js=serial(frame)
  File "/usr/lib/python2.7/json/__init__.py", line 243, in dumps
    return _default_encoder.encode(obj)
  File "/usr/lib/python2.7/json/encoder.py", line 207, in encode
    chunks = self.iterencode(o, _one_shot=True)
  File "/usr/lib/python2.7/json/encoder.py", line 270, in iterencode
    return _iterencode(o, 0)
  File "/usr/lib/python2.7/json/encoder.py", line 184, in default
    raise TypeError(repr(o) + " is not JSON serializable")
TypeError: <module 'sys' (built-in)> is not JSON serializable

Note:
the value of frame in comm.py is {'p': {'sys': <module 'sys' (built-in)>, 'os': <module 'os' from '/usr/lib/python2.7/os.pyc'>}, 'e': 'locals'}

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions