Current Path: > > opt > cloudlinux > venv > lib64 > python3.11 > site-packages > raven > transport
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
__pycache__ | Directory | - | - | |
__init__.py | File | 784 bytes | April 17 2025 13:10:58. | |
base.py | File | 1219 bytes | April 17 2025 13:10:58. | |
eventlet.py | File | 1535 bytes | April 17 2025 13:10:58. | |
exceptions.py | File | 517 bytes | April 17 2025 13:10:58. | |
gevent.py | File | 1658 bytes | April 17 2025 13:10:58. | |
http.py | File | 1819 bytes | April 17 2025 13:10:58. | |
registry.py | File | 2606 bytes | April 17 2025 13:10:58. | |
requests.py | File | 1024 bytes | April 17 2025 13:10:58. | |
threaded.py | File | 5102 bytes | April 17 2025 13:10:58. | |
threaded_requests.py | File | 1094 bytes | April 17 2025 13:10:58. | |
tornado.py | File | 1833 bytes | April 17 2025 13:10:58. | |
twisted.py | File | 2322 bytes | April 17 2025 13:10:58. |
""" raven.transport.twisted ~~~~~~~~~~~~~~~~~~~~~~~~ :copyright: (c) 2010-2012 by the Sentry Team, see AUTHORS for more details. :license: BSD, see LICENSE for more details. """ from __future__ import absolute_import from raven.utils.compat import BytesIO from raven.transport.base import AsyncTransport from raven.transport.http import HTTPTransport try: from twisted.web.client import ( Agent, FileBodyProducer, HTTPConnectionPool, ResponseNeverReceived, readBody, ) from twisted.web.http_headers import Headers has_twisted = True except ImportError: has_twisted = False class TwistedHTTPTransport(AsyncTransport, HTTPTransport): scheme = ['twisted+http', 'twisted+https'] def __init__(self, *args, **kwargs): if not has_twisted: raise ImportError('TwistedHTTPTransport requires twisted.web.') super(TwistedHTTPTransport, self).__init__(*args, **kwargs) # Import reactor as late as possible. from twisted.internet import reactor # Use a persistent connection pool. self._agent = Agent(reactor, pool=HTTPConnectionPool(reactor)) def async_send(self, url, data, headers, success_cb, failure_cb): d = self._agent.request( b"POST", url, bodyProducer=FileBodyProducer(BytesIO(data)), headers=Headers(dict((k, [v]) for k, v in headers.items())) ) def on_failure(failure): ex = failure.check(ResponseNeverReceived) if ex: # ResponseNeverReceived wraps the actual error(s). failure_cb([f.value for f in failure.value.reasons]) else: failure_cb(failure.value) def on_success(response): """ Success only means that the request succeeded, *not* that the actual submission was successful. """ if response.code == 200: success_cb() else: def on_error_body(body): failure_cb(Exception(response.code, response.phrase, body)) return readBody(response).addCallback( on_error_body, ) d.addCallback( on_success, ).addErrback( on_failure, )
SILENT KILLER Tool