def __init__(self): super(GunicornInstrumentor, self).__init__( { 'gunicorn.arbiter.Arbiter.manage_workers': function_wrapper_factory(_manage_workers, enable_if=None), 'gunicorn.workers.base.Worker.notify': function_wrapper_factory(_worker_notify, enable_if=None), } )
def __init__(self): super(CherryPyInstrumentor, self).__init__( { 'cherrypy._cptree.Application.__call__': function_wrapper_factory(_cherrypy_wsgi_call, enable_if=None, state='web'), 'cherrypy._cprequest.Request.run': function_wrapper_factory(_cherrypy_respond_wrapper, enable_if=None, state='wsgi'), } )
def __init__(self): super(FlaskInstrumentor, self).__init__( { 'flask.app.Flask.__init__': function_wrapper_factory(_flask_app, enable_if=None), 'flask.app.Flask.dispatch_request': function_wrapper_factory(_flask_dispatch, enable_if=None, state='web'), 'flask.app.Flask.__call__': function_wrapper_factory(_flask_wsgi_call, enable_if=None, state='wsgi'), } )
def __init__(self): super(CherryPyInstrumentor, self).__init__({ 'cherrypy._cptree.Application.__call__': function_wrapper_factory(_cherrypy_wsgi_call, enable_if=None, state='web'), 'cherrypy._cprequest.Request.run': function_wrapper_factory(_cherrypy_respond_wrapper, enable_if=None, state='wsgi'), })
def __init__(self): super(FlaskInstrumentor, self).__init__({ 'flask.app.Flask.__init__': function_wrapper_factory(_flask_app, enable_if=None), 'flask.app.Flask.dispatch_request': function_wrapper_factory(_flask_dispatch, enable_if=None, state='web'), 'flask.app.Flask.__call__': function_wrapper_factory(_flask_wsgi_call, enable_if=None, state='wsgi'), })
def __init__(self): super(Urllib2Instrumentor, self).__init__( { 'urllib2.OpenerDirector.open': function_wrapper_factory(_urllib2_open, disable_if='model') } ) self.major_versions = [2]
def test_function_wrapper(self): state = { 'foo': 1 } def function_wrapper(f): def decorator(*args, **kwargs): state['before'] = True decorator_ret = f(*args, **kwargs) state['after'] = True return decorator_ret return decorator wrapper = instrument.function_wrapper_factory(function_wrapper, enable_if=None) def wrapped_function(v): state['wrapped'] = v wrapped = wrapper(wrapped_function) wrapped_value = 1234567 wrapped(wrapped_value) self.assertTrue(state.get('before')) self.assertTrue(state.get('after')) self.assertEqual(wrapped_value, state.get('wrapped'))
def __init__(self): super(RequestsInstrumentor, self).__init__( { # External calls are not recorded when in the context of a model operation 'requests.api.request': function_wrapper_factory(requests_request_time, state='external', disable_if='model') } )
def __init__(self): super(RequestsInstrumentor, self).__init__({ # External calls are not recorded when in the context of a model operation 'requests.sessions.Session.send': function_wrapper_factory(requests_request_time, state='external', disable_if='model') })
class DjangoCoreInstrumentor(BaseInstrumentor): modules = {'django.core.handlers.wsgi': ['WSGIHandler']} _wrapped = { 'django.core.handlers.wsgi.WSGIHandler.__call__': function_wrapper_factory(_django_wsgi_call, state='wsgi', enable_if=None), } def __init__(self): super(DjangoCoreInstrumentor, self).__init__() def run(self): try: instrument_methods(self._wrapped) logger.debug('django core instrumentation complete') except: logger.exception('problem with django core instrumentation') raise
def test_function_wrapper(self): state = {'foo': 1} def function_wrapper(f): def decorator(*args, **kwargs): state['before'] = True decorator_ret = f(*args, **kwargs) state['after'] = True return decorator_ret return decorator wrapper = instrument.function_wrapper_factory(function_wrapper, enable_if=None) def wrapped_function(v): state['wrapped'] = v wrapped = wrapper(wrapped_function) wrapped_value = 1234567 wrapped(wrapped_value) self.assertTrue(state.get('before')) self.assertTrue(state.get('after')) self.assertEqual(wrapped_value, state.get('wrapped'))
def __init__(self): super(Urllib2Instrumentor, self).__init__({ 'urllib2.OpenerDirector.open': function_wrapper_factory(_urllib2_open, disable_if='model') }) self.major_versions = [2]