示例#1
0
 def test_get_debug(self):
     client = get_tempstoreclient()
     opbeat = Opbeat(self.app, client=client)
     self.app.config['DEBUG'] = True
     self.app.config['TESTING'] = False
     self.assertRaises(ValueError, self.app.test_client().get, '/an-error/?foo=bar')
     self.assertEquals(len(client.events), 0)
示例#2
0
    def test_post(self):
        client = get_tempstoreclient()
        opbeat = Opbeat(self.app, client=client)
        response = self.client.post('/an-error/?biz=baz', data={'foo': 'bar'})
        self.assertEquals(response.status_code, 500)
        self.assertEquals(len(client.events), 1)

        event = client.events.pop(0)

        self.assertTrue('http' in event)
        http = event['http']
        self.assertEquals(http['url'], 'http://localhost/an-error/')
        self.assertEquals(http['query_string'], 'biz=baz')
        self.assertEquals(http['method'], 'POST')
        self.assertEquals(http['data'], {'foo': 'bar'})
        self.assertTrue('headers' in http)
        headers = http['headers']
        self.assertTrue('Content-Length' in headers, headers.keys())
        self.assertEquals(headers['Content-Length'], '7')
        self.assertTrue('Content-Type' in headers, headers.keys())
        self.assertEquals(headers['Content-Type'], 'application/x-www-form-urlencoded')
        self.assertTrue('Host' in headers, headers.keys())
        self.assertEquals(headers['Host'], 'localhost')
        env = http['env']
        self.assertTrue('SERVER_NAME' in env, env.keys())
        self.assertEquals(env['SERVER_NAME'], 'localhost')
        self.assertTrue('SERVER_PORT' in env, env.keys())
        self.assertEquals(env['SERVER_PORT'], '80')
示例#3
0
 def setUp(self):
     self.client = get_tempstoreclient(
         include_paths=['tests', 'elasticapm'])
     self.handler = LoggingHandler(self.client)
     self.logger = logging.getLogger(__name__)
     self.logger.handlers = []
     self.logger.addHandler(self.handler)
示例#4
0
    def test_get(self):
        client = get_tempstoreclient()
        opbeat = Opbeat(self.app, client=client)
        response = self.client.get('/an-error/?foo=bar')
        self.assertEquals(response.status_code, 500)
        self.assertEquals(len(client.events), 1)

        event = client.events.pop(0)

        self.assertTrue('http' in event)
        http = event['http']
        self.assertEquals(http['url'], 'http://localhost/an-error/')
        self.assertEquals(http['query_string'], 'foo=bar')
        self.assertEquals(http['method'], 'GET')
        self.assertEquals(http['data'], {})
        self.assertTrue('headers' in http)
        headers = http['headers']
        self.assertTrue('Content-Length' in headers, headers.keys())
        self.assertEquals(headers['Content-Length'], '0')
        self.assertTrue('Content-Type' in headers, headers.keys())
        self.assertEquals(headers['Content-Type'], '')
        self.assertTrue('Host' in headers, headers.keys())
        self.assertEquals(headers['Host'], 'localhost')
        env = http['env']
        self.assertTrue('SERVER_NAME' in env, env.keys())
        self.assertEquals(env['SERVER_NAME'], 'localhost')
        self.assertTrue('SERVER_PORT' in env, env.keys())
        self.assertEquals(env['SERVER_PORT'], '80')
示例#5
0
    def test_get(self):
        client = get_tempstoreclient()
        opbeat = Opbeat(self.app, client=client)
        response = self.client.get('/an-error/?foo=bar')
        self.assertEquals(response.status_code, 500)
        self.assertEquals(len(client.events), 1)

        event = client.events.pop(0)

        self.assertTrue('http' in event)
        http = event['http']
        self.assertEquals(http['url'], 'http://localhost/an-error/')
        self.assertEquals(http['query_string'], 'foo=bar')
        self.assertEquals(http['method'], 'GET')
        self.assertEquals(http['data'], {})
        self.assertTrue('headers' in http)
        headers = http['headers']
        self.assertTrue('Content-Length' in headers, headers.keys())
        self.assertEquals(headers['Content-Length'], '0')
        self.assertTrue('Content-Type' in headers, headers.keys())
        self.assertEquals(headers['Content-Type'], '')
        self.assertTrue('Host' in headers, headers.keys())
        self.assertEquals(headers['Host'], 'localhost')
        env = http['env']
        self.assertTrue('SERVER_NAME' in env, env.keys())
        self.assertEquals(env['SERVER_NAME'], 'localhost')
        self.assertTrue('SERVER_PORT' in env, env.keys())
        self.assertEquals(env['SERVER_PORT'], '80')
示例#6
0
    def test_post(self):
        client = get_tempstoreclient()
        opbeat = Opbeat(self.app, client=client)
        response = self.client.post('/an-error/?biz=baz', data={'foo': 'bar'})
        self.assertEquals(response.status_code, 500)
        self.assertEquals(len(client.events), 1)

        event = client.events.pop(0)

        self.assertTrue('http' in event)
        http = event['http']
        self.assertEquals(http['url'], 'http://localhost/an-error/')
        self.assertEquals(http['query_string'], 'biz=baz')
        self.assertEquals(http['method'], 'POST')
        self.assertEquals(http['data'], {'foo': 'bar'})
        self.assertTrue('headers' in http)
        headers = http['headers']
        self.assertTrue('Content-Length' in headers, headers.keys())
        self.assertEquals(headers['Content-Length'], '7')
        self.assertTrue('Content-Type' in headers, headers.keys())
        self.assertEquals(headers['Content-Type'], 'application/x-www-form-urlencoded')
        self.assertTrue('Host' in headers, headers.keys())
        self.assertEquals(headers['Host'], 'localhost')
        env = http['env']
        self.assertTrue('SERVER_NAME' in env, env.keys())
        self.assertEquals(env['SERVER_NAME'], 'localhost')
        self.assertTrue('SERVER_PORT' in env, env.keys())
        self.assertEquals(env['SERVER_PORT'], '80')
示例#7
0
    def setUp(self):
        self._socket_dir = tempfile.mkdtemp(prefix='opbeatzerorpcunittest')
        self._server_endpoint = 'ipc://{0}'.format(
            os.path.join(self._socket_dir, 'random_zeroserver'))

        self._opbeat = get_tempstoreclient()
        zerorpc.Context.get_instance().register_middleware(
            OpbeatMiddleware(client=self._opbeat))
示例#8
0
    def test_call_end_twice(self, should_collect, mock_send):
        client = get_tempstoreclient()

        should_collect.return_value = False
        client.begin_transaction("celery")

        client.end_transaction('test-transaction', 200)
        client.end_transaction('test-transaction', 200)
示例#9
0
 def test_get_debug(self):
     client = get_tempstoreclient()
     opbeat = Opbeat(self.app, client=client)
     self.app.config['DEBUG'] = True
     self.app.config['TESTING'] = False
     self.assertRaises(ValueError,
                       self.app.test_client().get, '/an-error/?foo=bar')
     self.assertEquals(len(client.events), 0)
示例#10
0
    def test_call_end_twice(self, should_collect, mock_send):
        client = get_tempstoreclient()

        should_collect.return_value = False
        client.begin_transaction("celery")

        client.end_transaction('test-transaction', 200)
        client.end_transaction('test-transaction', 200)
示例#11
0
 def setUp(self):
     self.client = get_tempstoreclient()
     opbeat.instrumentation.control.instrument()
     connection_params = {'host': os.environ.get('MONGODB_HOST', 'localhost'),
                          'port': int(os.environ.get('MONGODB_PORT', 27017))}
     if pymongo.version_tuple < (3, 0):
         connection_params['safe'] = True
     self.mongo = pymongo.MongoClient(**connection_params)
     self.db = self.mongo.opbeat_test
示例#12
0
    def setUp(self):
        self._socket_dir = tempfile.mkdtemp(prefix='opbeatzerorpcunittest')
        self._server_endpoint = 'ipc://{0}'.format(os.path.join(
                    self._socket_dir, 'random_zeroserver'
        ))

        self._opbeat = get_tempstoreclient()
        zerorpc.Context.get_instance().register_middleware(OpbeatMiddleware(
                    client=self._opbeat
        ))
 def setUp(self):
     self.client = get_tempstoreclient()
     elasticapm.instrumentation.control.instrument()
     connection_params = {
         'host': os.environ.get('MONGODB_HOST', 'localhost'),
         'port': int(os.environ.get('MONGODB_PORT', 27017))
     }
     if pymongo.version_tuple < (3, 0):
         connection_params['safe'] = True
     self.mongo = pymongo.MongoClient(**connection_params)
     self.db = self.mongo.elasticapm_test
示例#14
0
    def test_error_handler(self):
        client = get_tempstoreclient()
        opbeat = Opbeat(self.app, client=client)
        response = self.client.get('/an-error/')
        self.assertEquals(response.status_code, 500)
        self.assertEquals(len(client.events), 1)

        event = client.events.pop(0)

        self.assertTrue('exception' in event)
        exc = event['exception']
        self.assertEquals(exc['type'], 'ValueError')
        self.assertEquals(exc['value'], 'hello world')
        self.assertEquals(event['level'], "error")
        self.assertEquals(event['message'], 'ValueError: hello world')
        self.assertEquals(event['culprit'], 'tests.contrib.flask.flask_tests.an_error')
示例#15
0
    def test_error_handler(self):
        client = get_tempstoreclient()
        opbeat = Opbeat(self.app, client=client)
        response = self.client.get('/an-error/')
        self.assertEquals(response.status_code, 500)
        self.assertEquals(len(client.events), 1)

        event = client.events.pop(0)

        self.assertTrue('exception' in event)
        exc = event['exception']
        self.assertEquals(exc['type'], 'ValueError')
        self.assertEquals(exc['value'], 'hello world')
        self.assertEquals(event['level'], "error")
        self.assertEquals(event['message'], 'ValueError: hello world')
        self.assertEquals(event['culprit'], 'tests.contrib.flask.flask_tests.an_error')
示例#16
0
 def setUp(self):
     self.client = get_tempstoreclient()
     filedir = os.path.dirname(__file__)
     loader = FileSystemLoader(filedir)
     self.env = Environment(loader=loader)
     opbeat.instrumentation.control.instrument()
示例#17
0
 def setUp(self):
     self.client = get_tempstoreclient()
     self.port = 59990
     self.start_test_server()
     opbeat.instrumentation.control.instrument()
示例#18
0
 def test_client_kwarg(self):
     client = get_tempstoreclient(include_paths=['tests'])
     handler = OpbeatHandler(client=client)
     self.assertEquals(handler.client, client)
示例#19
0
    def test_logger(self):
        client = get_tempstoreclient(include_paths=['tests', 'opbeat'])
        handler = OpbeatHandler(client)
        logger = self.logger

        with handler.applicationbound():
            logger.error('This is a test error')

            self.assertEquals(len(client.events), 1)
            event = client.events.pop(0)
            self.assertEquals(event['logger'], __name__)
            self.assertEquals(event['level'], "error")
            self.assertEquals(event['message'], 'This is a test error')
            self.assertFalse('stacktrace' in event)
            self.assertFalse('exception' in event)
            self.assertTrue('param_message' in event)
            msg = event['param_message']
            self.assertEquals(msg['message'], 'This is a test error')
            self.assertEquals(msg['params'], ())

            logger.warning('This is a test warning')
            self.assertEquals(len(client.events), 1)
            event = client.events.pop(0)
            self.assertEquals(event['logger'], __name__)
            self.assertEquals(event['level'], 'warning')
            self.assertEquals(event['message'], 'This is a test warning')
            self.assertFalse('stacktrace' in event)
            self.assertFalse('exception' in event)
            self.assertTrue('param_message' in event)
            msg = event['param_message']
            self.assertEquals(msg['message'], 'This is a test warning')
            self.assertEquals(msg['params'], ())

            logger.info('This is a test info with a url', extra=dict(
                url='http://example.com',
            ))
            self.assertEquals(len(client.events), 1)
            event = client.events.pop(0)
            self.assertEquals(event['extra']['url'], 'http://example.com')
            self.assertFalse('stacktrace' in event)
            self.assertFalse('exception' in event)
            self.assertTrue('param_message' in event)
            msg = event['param_message']
            self.assertEquals(msg['message'], 'This is a test info with a url')
            self.assertEquals(msg['params'], ())

            try:
                raise ValueError('This is a test ValueError')
            except ValueError:
                logger.info('This is a test info with an exception', exc_info=True)

            self.assertEquals(len(client.events), 1)
            event = client.events.pop(0)

            self.assertEquals(event['message'], 'This is a test info with an exception')
            self.assertTrue('stacktrace' in event)
            self.assertTrue('exception' in event)
            exc = event['exception']
            self.assertEquals(exc['type'], 'ValueError')
            self.assertEquals(exc['value'], 'This is a test ValueError')
            self.assertTrue('param_message' in event)
            msg = event['param_message']
            self.assertEquals(msg['message'], 'This is a test info with an exception')
            self.assertEquals(msg['params'], ())

            # test args
            logger.info('This is a test of %s', 'args')
            self.assertEquals(len(client.events), 1)
            event = client.events.pop(0)
            self.assertEquals(event['message'], 'This is a test of args')
            self.assertFalse('stacktrace' in event)
            self.assertFalse('exception' in event)
            self.assertTrue('param_message' in event)
            msg = event['param_message']
            self.assertEquals(msg['message'], 'This is a test of %s')
            self.assertEquals(msg['params'], ('args',))
示例#20
0
 def setUp(self):
     self.client = get_tempstoreclient(include_paths=['tests', 'opbeat'])
     self.handler = OpbeatHandler(self.client)
     self.logger = logging.getLogger(__name__)
     self.logger.handlers = []
     self.logger.addHandler(self.handler)
 def setUp(self):
     self.client = get_tempstoreclient()
     opbeat.instrumentation.control.instrument()
示例#22
0
 def setUp(self):
     self.client = get_tempstoreclient()
     filedir = os.path.dirname(__file__)
     loader = FileSystemLoader(filedir)
     self.env = Environment(loader=loader)
     opbeat.instrumentation.control.instrument()
示例#23
0
    def test_logger(self):
        client = get_tempstoreclient(include_paths=['tests', 'opbeat'])
        handler = OpbeatHandler(client)
        logger = self.logger

        with handler.applicationbound():
            logger.error('This is a test error')

            self.assertEquals(len(client.events), 1)
            event = client.events.pop(0)
            self.assertEquals(event['logger'], __name__)
            self.assertEquals(event['level'], "error")
            self.assertEquals(event['message'], 'This is a test error')
            self.assertFalse('stacktrace' in event)
            self.assertFalse('exception' in event)
            self.assertTrue('param_message' in event)
            msg = event['param_message']
            self.assertEquals(msg['message'], 'This is a test error')
            self.assertEquals(msg['params'], ())

            logger.warning('This is a test warning')
            self.assertEquals(len(client.events), 1)
            event = client.events.pop(0)
            self.assertEquals(event['logger'], __name__)
            self.assertEquals(event['level'], 'warning')
            self.assertEquals(event['message'], 'This is a test warning')
            self.assertFalse('stacktrace' in event)
            self.assertFalse('exception' in event)
            self.assertTrue('param_message' in event)
            msg = event['param_message']
            self.assertEquals(msg['message'], 'This is a test warning')
            self.assertEquals(msg['params'], ())

            logger.info('This is a test info with a url',
                        extra=dict(url='http://example.com', ))
            self.assertEquals(len(client.events), 1)
            event = client.events.pop(0)
            self.assertEquals(event['extra']['url'], 'http://example.com')
            self.assertFalse('stacktrace' in event)
            self.assertFalse('exception' in event)
            self.assertTrue('param_message' in event)
            msg = event['param_message']
            self.assertEquals(msg['message'], 'This is a test info with a url')
            self.assertEquals(msg['params'], ())

            try:
                raise ValueError('This is a test ValueError')
            except ValueError:
                logger.info('This is a test info with an exception',
                            exc_info=True)

            self.assertEquals(len(client.events), 1)
            event = client.events.pop(0)

            self.assertEquals(event['message'],
                              'This is a test info with an exception')
            self.assertTrue('stacktrace' in event)
            self.assertTrue('exception' in event)
            exc = event['exception']
            self.assertEquals(exc['type'], 'ValueError')
            self.assertEquals(exc['value'], 'This is a test ValueError')
            self.assertTrue('param_message' in event)
            msg = event['param_message']
            self.assertEquals(msg['message'],
                              'This is a test info with an exception')
            self.assertEquals(msg['params'], ())

            # test args
            logger.info('This is a test of %s', 'args')
            self.assertEquals(len(client.events), 1)
            event = client.events.pop(0)
            self.assertEquals(event['message'], 'This is a test of args')
            self.assertFalse('stacktrace' in event)
            self.assertFalse('exception' in event)
            self.assertTrue('param_message' in event)
            msg = event['param_message']
            self.assertEquals(msg['message'], 'This is a test of %s')
            self.assertEquals(msg['params'], ('args', ))
示例#24
0
    def setUp(self):
        self.app = create_app()
        self.client = self.app.test_client()

        self.opbeat_client = get_tempstoreclient()
        self.opbeat = Opbeat(self.app, client=self.opbeat_client)
示例#25
0
 def setUp(self):
     self.client = get_tempstoreclient()
     opbeat.instrumentation.control.instrument()
示例#26
0
    def setUp(self):
        self.app = create_app()
        self.client = self.app.test_client()

        self.opbeat_client = get_tempstoreclient()
        self.opbeat = Opbeat(self.app, client=self.opbeat_client)
示例#27
0
 def setUp(self):
     self.client = get_tempstoreclient()
     elasticapm.instrumentation.control.instrument()
 def setUp(self):
     self.client = get_tempstoreclient()
示例#29
0
def test_client():
    return get_tempstoreclient()
示例#30
0
 def setUp(self):
     self.client = get_tempstoreclient()
     self.port = random.randint(50000, 60000)
     self.start_test_server()
     opbeat.instrumentation.control.instrument()
示例#31
0
 def setUp(self):
     self.logger = logbook.Logger(__name__)
     self.client = get_tempstoreclient(
         include_paths=['tests', 'elasticapm'])
     self.handler = LogbookHandler(self.client)
示例#32
0
 def setUp(self):
     self.client = get_tempstoreclient()
示例#33
0
 def test_client_arg(self):
     client = get_tempstoreclient(include_paths=['tests'])
     handler = LoggingHandler(client)
     self.assertEquals(handler.client, client)
示例#34
0
 def test_client_kwarg(self):
     client = get_tempstoreclient(include_paths=['tests'])
     handler = OpbeatHandler(client=client)
     self.assertEquals(handler.client, client)
示例#35
0
 def setUp(self):
     self.client = get_tempstoreclient()
     self.port = 59990
     self.start_test_server()
     opbeat.instrumentation.control.instrument()