Advertisement
Guest User

Untitled

a guest
Oct 17th, 2012
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.54 KB | None | 0 0
  1. UNHANDLED EXCEPTION (2012-10-17 17:29:20.772285)
  2. Working directory: /usr/local/noc
  3. <type 'exceptions.TypeError'>
  4. ObjectId('503ccdcb5c8b8212bf000e4a') is not JSON serializable
  5. START OF TRACEBACK
  6. ------------------------------------------------------------------------
  7. File: /usr/local/lib/python2.7/json/encoder.py (Line: 178)
  8. Function: default
  9. 171 except TypeError:
  10. 172 pass
  11. 173 else:
  12. 174 return list(iterable)
  13. 175 return JSONEncoder.default(self, o)
  14. 176
  15. 177 """
  16. 178 ==> raise TypeError(repr(o) + " is not JSON serializable")
  17. 179
  18. 180 def encode(self, o):
  19. 181 """Return a JSON string representation of a Python data structure.
  20. 182
  21. 183 >>> JSONEncoder().encode({"foo": ["bar", "baz"]})
  22. 184 '{"foo": ["bar", "baz"]}'
  23. Variables:
  24. self = <json.encoder.JSONEncoder object at 0x801bc3e10>
  25. o = ObjectId('503ccdcb5c8b8212bf000e4a')
  26. ------------------------------------------------------------------------
  27. File: /usr/local/lib/python2.7/json/encoder.py (Line: 264)
  28. Function: iterencode
  29. 257 self.key_separator, self.item_separator, self.sort_keys,
  30. 258 self.skipkeys, self.allow_nan)
  31. 259 else:
  32. 260 _iterencode = _make_iterencode(
  33. 261 markers, self.default, _encoder, self.indent, floatstr,
  34. 262 self.key_separator, self.item_separator, self.sort_keys,
  35. 263 self.skipkeys, _one_shot)
  36. 264 ==> return _iterencode(o, 0)
  37. 265
  38. 266 def _make_iterencode(markers, _default, _encoder, _indent, _floatstr,
  39. 267 _key_separator, _item_separator, _sort_keys, _skipkeys, _one_shot,
  40. 268 ## HACK: hand-optimized bytecode; turn globals into locals
  41. 269 ValueError=ValueError,
  42. 270 basestring=basestring,
  43. Variables:
  44. _encoder = <built-in function encode_basestring_ascii>
  45. floatstr = <function floatstr at 0x8092efb18>
  46. self = <json.encoder.JSONEncoder object at 0x801bc3e10>
  47. o = {'total': 2998, 'data': [{'managed_object__label': u'Vsev.Ujnyi.Dobrovol-20-2-es3526-2-1.line-r.ru', 'vlan': 1, 'managed_object': 263, 'last_changed': u'2012-10-17 02:56:23.460000', 'mac': u'00:1D:0F:CE:5F:0D', 'fav_status': False, 'interface': ObjectId('503ccdcb5c8b8212bf000e4a'), 'id': u'507db5775c8b823777000000'}, {'managed_object__label': u'e38-cc-1-4-6506', 'vlan': 241, 'managed_object': 116, 'last_changed': u'2012-10-17 00:12:46.416000', 'mac': u'00:23:F8:5B:C7:35', 'fav_status': False, 'interface': ObjectId('5017cafa5c8b820f9a0001cd'), 'id': u'507db5775c8b823777000001'}], 'success': True}
  48. _one_shot = True
  49. markers = {34509959968: {'total': 2998, 'data': [{'managed_object__label': u'Vsev.Ujnyi.Dobrovol-20-2-es3526-2-1.line-r.ru', 'vlan': 1, 'managed_object': 263, 'last_changed': u'2012-10-17 02:56:23.460000', 'mac': u'00:1D:0F:CE:5F:0D', 'fav_status': False, 'interface': ObjectId('503ccdcb5c8b8212bf000e4a'), 'id': u'507db5775c8b823777000000'}, {'managed_object__label': u'e38-cc-1-4-6506', 'vlan': 241, 'managed_object': 116, 'last_changed': u'2012-10-17 00:12:46.416000', 'mac': u'00:23:F8:5B:C7:35', 'fav_status': False, 'interface': ObjectId('5017cafa5c8b820f9a0001cd'), 'id': u'507db5775c8b823777000001'}], 'success': True}, 34515668000: [{'managed_object__label': u'Vsev.Ujnyi.Dobrovol-20-2-es3526-2-1.line-r.ru', 'vlan': 1, 'managed_object': 263, 'last_changed': u'2012-10-17 02:56:23.460000', 'mac': u'00:1D:0F:CE:5F:0D', 'fav_status': False, 'interface': ObjectId('503ccdcb5c8b8212bf000e4a'), 'id': u'507db5775c8b823777000000'}, {'managed_object__label': u'e38-cc-1-4-6506', 'vlan': 241, 'managed_object': 116, 'last_changed': u'2012-10-17 00:12:46.416000', 'mac': u'00:23:F8:5B:C7:35', 'fav_status': False, 'interface': ObjectId('5017cafa5c8b820f9a0001cd'), 'id': u'507db5775c8b823777000001'}], 34516124400: ObjectId('503ccdcb5c8b8212bf000e4a'), 34509595616: {'managed_object__label': u'Vsev.Ujnyi.Dobrovol-20-2-es3526-2-1.line-r.ru', 'vlan': 1, 'managed_object': 263, 'last_changed': u'2012-10-17 02:56:23.460000', 'mac': u'00:1D:0F:CE:5F:0D', 'fav_status': False, 'interface': ObjectId('503ccdcb5c8b8212bf000e4a'), 'id': u'507db5775c8b823777000000'}}
  50. _iterencode = <_json.Encoder object at 0x8092efde8>
  51. ------------------------------------------------------------------------
  52. File: /usr/local/lib/python2.7/json/encoder.py (Line: 201)
  53. Function: encode
  54. 194 if self.ensure_ascii:
  55. 195 return encode_basestring_ascii(o)
  56. 196 else:
  57. 197 return encode_basestring(o)
  58. 198 # This doesn't pass the iterator directly to ''.join() because the
  59. 199 # exceptions aren't as detailed. The list call should be roughly
  60. 200 # equivalent to the PySequence_Fast that ''.join() would do.
  61. 201 ==> chunks = self.iterencode(o, _one_shot=True)
  62. 202 if not isinstance(chunks, (list, tuple)):
  63. 203 chunks = list(chunks)
  64. 204 return ''.join(chunks)
  65. 205
  66. 206 def iterencode(self, o, _one_shot=False):
  67. 207 """Encode the given object and yield each string
  68. Variables:
  69. self = <json.encoder.JSONEncoder object at 0x801bc3e10>
  70. o = {'total': 2998, 'data': [{'managed_object__label': u'Vsev.Ujnyi.Dobrovol-20-2-es3526-2-1.line-r.ru', 'vlan': 1, 'managed_object': 263, 'last_changed': u'2012-10-17 02:56:23.460000', 'mac': u'00:1D:0F:CE:5F:0D', 'fav_status': False, 'interface': ObjectId('503ccdcb5c8b8212bf000e4a'), 'id': u'507db5775c8b823777000000'}, {'managed_object__label': u'e38-cc-1-4-6506', 'vlan': 241, 'managed_object': 116, 'last_changed': u'2012-10-17 00:12:46.416000', 'mac': u'00:23:F8:5B:C7:35', 'fav_status': False, 'interface': ObjectId('5017cafa5c8b820f9a0001cd'), 'id': u'507db5775c8b823777000001'}], 'success': True}
  71. ------------------------------------------------------------------------
  72. File: /usr/local/lib/python2.7/json/__init__.py (Line: 231)
  73. Function: dumps
  74. 224
  75. 225 """
  76. 226 # cached encoder
  77. 227 if (not skipkeys and ensure_ascii and
  78. 228 check_circular and allow_nan and
  79. 229 cls is None and indent is None and separators is None and
  80. 230 encoding == 'utf-8' and default is None and not kw):
  81. 231 ==> return _default_encoder.encode(obj)
  82. 232 if cls is None:
  83. 233 cls = JSONEncoder
  84. 234 return cls(
  85. 235 skipkeys=skipkeys, ensure_ascii=ensure_ascii,
  86. 236 check_circular=check_circular, allow_nan=allow_nan, indent=indent,
  87. 237 separators=separators, encoding=encoding, default=default,
  88. Variables:
  89. indent = None
  90. encoding = 'utf-8'
  91. default = None
  92. separators = None
  93. skipkeys = False
  94. kw = {}
  95. check_circular = True
  96. allow_nan = True
  97. obj = {'total': 2998, 'data': [{'managed_object__label': u'Vsev.Ujnyi.Dobrovol-20-2-es3526-2-1.line-r.ru', 'vlan': 1, 'managed_object': 263, 'last_changed': u'2012-10-17 02:56:23.460000', 'mac': u'00:1D:0F:CE:5F:0D', 'fav_status': False, 'interface': ObjectId('503ccdcb5c8b8212bf000e4a'), 'id': u'507db5775c8b823777000000'}, {'managed_object__label': u'e38-cc-1-4-6506', 'vlan': 241, 'managed_object': 116, 'last_changed': u'2012-10-17 00:12:46.416000', 'mac': u'00:23:F8:5B:C7:35', 'fav_status': False, 'interface': ObjectId('5017cafa5c8b820f9a0001cd'), 'id': u'507db5775c8b823777000001'}], 'success': True}
  98. ensure_ascii = True
  99. cls = None
  100. ------------------------------------------------------------------------
  101. File: /usr/local/noc/lib/app/extapplication.py (Line: 66)
  102. Function: response
  103. 59 return HasPerm("%s:%s:launch" % (m, a))
  104. 60
  105. 61 def deserialize(self, data):
  106. 62 return json_decode(data)
  107. 63
  108. 64 def response(self, content="", status=200):
  109. 65 if not isinstance(content, basestring):
  110. 66 ==> return HttpResponse(json_encode(content),
  111. 67 mimetype="text/json; charset=utf-8",
  112. 68 status=status)
  113. 69 else:
  114. 70 return HttpResponse(content,
  115. 71 mimetype="text/plain; charset=utf-8",
  116. 72 status=status)
  117. Variables:
  118. status = 200
  119. content = {'total': 2998, 'data': [{'managed_object__label': u'Vsev.Ujnyi.Dobrovol-20-2-es3526-2-1.line-r.ru', 'vlan': 1, 'managed_object': 263, 'last_changed': u'2012-10-17 02:56:23.460000', 'mac': u'00:1D:0F:CE:5F:0D', 'fav_status': False, 'interface': ObjectId('503ccdcb5c8b8212bf000e4a'), 'id': u'507db5775c8b823777000000'}, {'managed_object__label': u'e38-cc-1-4-6506', 'vlan': 241, 'managed_object': 116, 'last_changed': u'2012-10-17 00:12:46.416000', 'mac': u'00:23:F8:5B:C7:35', 'fav_status': False, 'interface': ObjectId('5017cafa5c8b820f9a0001cd'), 'id': u'507db5775c8b823777000001'}], 'success': True}
  120. self = <noc.inv.apps.macdb.views.MACApplication object at 0x808450d50>
  121. ------------------------------------------------------------------------
  122. File: /usr/local/noc/lib/app/extapplication.py (Line: 158)
  123. Function: list_data
  124. 151 r[self.fav_status] = r["id"] in fav_items
  125. 152 if format == "ext":
  126. 153 out = {
  127. 154 "total": total,
  128. 155 "success": True,
  129. 156 "data": out
  130. 157 }
  131. 158 ==> return self.response(out, status=self.OK)
  132. 159
  133. 160 @view(url="^(?P<path>(?:js|css|img)/[0-9a-zA-Z_/]+\.(?:js|css|png))$",
  134. 161 url_name="static", access=True)
  135. 162 def view_static(self, request, path):
  136. 163 """
  137. 164 Static file server
  138. Variables:
  139. fs = None
  140. format = u'ext'
  141. ordering = []
  142. self = <noc.inv.apps.macdb.views.MACApplication object at 0x808450d50>
  143. out = {'total': 2998, 'data': [{'managed_object__label': u'Vsev.Ujnyi.Dobrovol-20-2-es3526-2-1.line-r.ru', 'vlan': 1, 'managed_object': 263, 'last_changed': u'2012-10-17 02:56:23.460000', 'mac': u'00:1D:0F:CE:5F:0D', 'fav_status': False, 'interface': ObjectId('503ccdcb5c8b8212bf000e4a'), 'id': u'507db5775c8b823777000000'}, {'managed_object__label': u'e38-cc-1-4-6506', 'vlan': 241, 'managed_object': 116, 'last_changed': u'2012-10-17 00:12:46.416000', 'mac': u'00:23:F8:5B:C7:35', 'fav_status': False, 'interface': ObjectId('5017cafa5c8b820f9a0001cd'), 'id': u'507db5775c8b823777000001'}], 'success': True}
  144. request = <WSGIRequest
  145. path:/inv/macdb/,
  146. GET:<QueryDict: {u'__limit': [u'2'], u'__page': [u'1'], u'_dc': [u'1350480416320'], u'__start': [u'0'], u'__format': [u'ext']}>,
  147. POST:<QueryDict: {}>,
  148. COOKIES:{'csrftoken': 'w026pMQKaZ7OrQFlY3UDcfB6P8ZcUgOu',
  149. 'sessionid': 'c3b60fa600f1360a07443dbedb4357da'},
  150. META:{'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
  151. 'HTTP_ACCEPT_ENCODING': 'gzip, deflate',
  152. 'HTTP_ACCEPT_LANGUAGE': 'ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3',
  153. 'HTTP_CONNECTION': 'close',
  154. 'HTTP_COOKIE': 'sessionid=c3b60fa600f1360a07443dbedb4357da; csrftoken=w026pMQKaZ7OrQFlY3UDcfB6P8ZcUgOu',
  155. 'HTTP_HOST': '127.0.0.1:8000',
  156. 'HTTP_USER_AGENT': 'Mozilla/5.0 (Windows NT 5.1; rv:15.0) Gecko/20100101 Firefox/15.0.1',
  157. 'HTTP_X_CLICKONCESUPPORT': '( .NET CLR 3.5.30729; .NET4.0E)',
  158. 'PATH_INFO': u'/inv/macdb/',
  159. 'QUERY_STRING': '_dc=1350480416320&__format=ext&__page=1&__start=0&__limit=2',
  160. 'REMOTE_ADDR': '127.0.0.1',
  161. 'REQUEST_METHOD': 'GET',
  162. 'SCRIPT_NAME': u'',
  163. 'SERVER_NAME': '127.0.0.1',
  164. 'SERVER_PORT': '8000',
  165. 'SERVER_PROTOCOL': 'HTTP/1.0',
  166. 'wsgi.errors': <open file '/dev/null', mode 'a+' at 0x804235f60>,
  167. 'wsgi.input': <_io.BytesIO object at 0x808f4e1d0>,
  168. 'wsgi.multiprocess': True,
  169. 'wsgi.multithread': False,
  170. 'wsgi.run_once': False,
  171. 'wsgi.url_scheme': 'http',
  172. 'wsgi.version': (1, 0)}>
  173. o = <MACDB: 00:23:F8:5B:C7:35>
  174. q = {}
  175. start = u'0'
  176. only = None
  177. r = {'managed_object__label': u'e38-cc-1-4-6506', 'vlan': 241, 'managed_object': 116, 'last_changed': u'2012-10-17 00:12:46.416000', 'mac': u'00:23:F8:5B:C7:35', 'fav_status': False, 'interface': ObjectId('5017cafa5c8b820f9a0001cd'), 'id': u'507db5775c8b823777000001'}
  178. limit = u'2'
  179. formatter = <bound method MACApplication.instance_to_dict of <noc.inv.apps.macdb.views.MACApplication object at 0x808450d50>>
  180. query = None
  181. total = 2998
  182. data = [<MACDB: 00:1D:0F:CE:5F:0D>, <MACDB: 00:23:F8:5B:C7:35>]
  183. fav_items = set([])
  184. ------------------------------------------------------------------------
  185. File: /usr/local/noc/lib/app/extdocapplication.py (Line: 145)
  186. Function: api_list
  187. 138 return {
  188. 139 "id": str(o.id),
  189. 140 "label": unicode(o)
  190. 141 }
  191. 142
  192. 143 @view(method=["GET"], url="^$", access="read", api=True)
  193. 144 def api_list(self, request):
  194. 145 ==> return self.list_data(request, self.instance_to_dict)
  195. 146
  196. 147 @view(method=["GET"], url=r"^lookup/$", access="lookup", api=True)
  197. 148 def api_lookup(self, request):
  198. 149 return self.list_data(request, self.instance_to_lookup)
  199. 150
  200. 151 @view(method=["POST"], url="^$", access="create", api=True)
  201. Variables:
  202. self = <noc.inv.apps.macdb.views.MACApplication object at 0x808450d50>
  203. request = <WSGIRequest
  204. path:/inv/macdb/,
  205. GET:<QueryDict: {u'__limit': [u'2'], u'__page': [u'1'], u'_dc': [u'1350480416320'], u'__start': [u'0'], u'__format': [u'ext']}>,
  206. POST:<QueryDict: {}>,
  207. COOKIES:{'csrftoken': 'w026pMQKaZ7OrQFlY3UDcfB6P8ZcUgOu',
  208. 'sessionid': 'c3b60fa600f1360a07443dbedb4357da'},
  209. META:{'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
  210. 'HTTP_ACCEPT_ENCODING': 'gzip, deflate',
  211. 'HTTP_ACCEPT_LANGUAGE': 'ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3',
  212. 'HTTP_CONNECTION': 'close',
  213. 'HTTP_COOKIE': 'sessionid=c3b60fa600f1360a07443dbedb4357da; csrftoken=w026pMQKaZ7OrQFlY3UDcfB6P8ZcUgOu',
  214. 'HTTP_HOST': '127.0.0.1:8000',
  215. 'HTTP_USER_AGENT': 'Mozilla/5.0 (Windows NT 5.1; rv:15.0) Gecko/20100101 Firefox/15.0.1',
  216. 'HTTP_X_CLICKONCESUPPORT': '( .NET CLR 3.5.30729; .NET4.0E)',
  217. 'PATH_INFO': u'/inv/macdb/',
  218. 'QUERY_STRING': '_dc=1350480416320&__format=ext&__page=1&__start=0&__limit=2',
  219. 'REMOTE_ADDR': '127.0.0.1',
  220. 'REQUEST_METHOD': 'GET',
  221. 'SCRIPT_NAME': u'',
  222. 'SERVER_NAME': '127.0.0.1',
  223. 'SERVER_PORT': '8000',
  224. 'SERVER_PROTOCOL': 'HTTP/1.0',
  225. 'wsgi.errors': <open file '/dev/null', mode 'a+' at 0x804235f60>,
  226. 'wsgi.input': <_io.BytesIO object at 0x808f4e1d0>,
  227. 'wsgi.multiprocess': True,
  228. 'wsgi.multithread': False,
  229. 'wsgi.run_once': False,
  230. 'wsgi.url_scheme': 'http',
  231. 'wsgi.version': (1, 0)}>
  232. ------------------------------------------------------------------------
  233. File: /usr/local/noc/lib/app/site.py (Line: 231)
  234. Function: inner
  235. 224 for k, v in request.POST.lists())
  236. 225 elif request.method == "GET":
  237. 226 a = dict((k, v[0] if len(v) == 1 else v)
  238. 227 for k, v in request.GET.lists())
  239. 228 logging.debug("API %s %s %s" % (request.method,
  240. 229 request.path, a))
  241. 230 # Call handler
  242. 231 ==> r = v(request, *args, **kwargs)
  243. 232 # Dump SQL statements
  244. 233 if self.log_sql_statements:
  245. 234 from django.db import connections
  246. 235 tsc = 0
  247. 236 sc = defaultdict(int)
  248. 237 for conn in connections.all():
  249. Variables:
  250. args = ()
  251. view_map = {'POST': <bound method MACApplication.api_create of <noc.inv.apps.macdb.views.MACApplication object at 0x808450d50>>, 'GET': <bound method MACApplication.api_list of <noc.inv.apps.macdb.views.MACApplication object at 0x808450d50>>}
  252. Form = <class 'django.forms.forms.Form'>
  253. DictParameter = <class 'noc.sa.interfaces.base.DictParameter'>
  254. self = <noc.lib.app.site.Site object at 0x806415e50>
  255. v = <bound method MACApplication.api_list of <noc.inv.apps.macdb.views.MACApplication object at 0x808450d50>>
  256. request = <WSGIRequest
  257. path:/inv/macdb/,
  258. GET:<QueryDict: {u'__limit': [u'2'], u'__page': [u'1'], u'_dc': [u'1350480416320'], u'__start': [u'0'], u'__format': [u'ext']}>,
  259. POST:<QueryDict: {}>,
  260. COOKIES:{'csrftoken': 'w026pMQKaZ7OrQFlY3UDcfB6P8ZcUgOu',
  261. 'sessionid': 'c3b60fa600f1360a07443dbedb4357da'},
  262. META:{'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
  263. 'HTTP_ACCEPT_ENCODING': 'gzip, deflate',
  264. 'HTTP_ACCEPT_LANGUAGE': 'ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3',
  265. 'HTTP_CONNECTION': 'close',
  266. 'HTTP_COOKIE': 'sessionid=c3b60fa600f1360a07443dbedb4357da; csrftoken=w026pMQKaZ7OrQFlY3UDcfB6P8ZcUgOu',
  267. 'HTTP_HOST': '127.0.0.1:8000',
  268. 'HTTP_USER_AGENT': 'Mozilla/5.0 (Windows NT 5.1; rv:15.0) Gecko/20100101 Firefox/15.0.1',
  269. 'HTTP_X_CLICKONCESUPPORT': '( .NET CLR 3.5.30729; .NET4.0E)',
  270. 'PATH_INFO': u'/inv/macdb/',
  271. 'QUERY_STRING': '_dc=1350480416320&__format=ext&__page=1&__start=0&__limit=2',
  272. 'REMOTE_ADDR': '127.0.0.1',
  273. 'REQUEST_METHOD': 'GET',
  274. 'SCRIPT_NAME': u'',
  275. 'SERVER_NAME': '127.0.0.1',
  276. 'SERVER_PORT': '8000',
  277. 'SERVER_PROTOCOL': 'HTTP/1.0',
  278. 'wsgi.errors': <open file '/dev/null', mode 'a+' at 0x804235f60>,
  279. 'wsgi.input': <_io.BytesIO object at 0x808f4e1d0>,
  280. 'wsgi.multiprocess': True,
  281. 'wsgi.multithread': False,
  282. 'wsgi.run_once': False,
  283. 'wsgi.url_scheme': 'http',
  284. 'wsgi.version': (1, 0)}>
  285. to_log_api_call = False
  286. InterfaceTypeError = <class 'noc.sa.interfaces.base.InterfaceTypeError'>
  287. PermissionDenied = <class 'noc.lib.app.access.PermissionDenied'>
  288. kwargs = {}
  289. app = <noc.inv.apps.macdb.views.MACApplication object at 0x808450d50>
  290. ------------------------------------------------------------------------
  291. END OF TRACEBACK
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement