Example #1
0
def test_log_response(wsgi_env, context):
    with request_id.context('ID'):
        wsgi.log_response(
            wsgi_env,
            status=200,
            headers=[],
            duration=1,
            length=1000,
        )

    extra = dict([
        ('method', 'GET'),
        ('path', '/'),
        ('status', 200),
        ('duration_ms', 1000.0),
        ('ip', '127.0.0.1'),
        ('proto', 'HTTP/1.0'),
        ('length', 1000),
        ('request_id', 'ID'),
    ])
    context.assert_log(
        name='talisker.wsgi',
        msg='GET /',
        extra=extra,
    )
Example #2
0
def test_gunicorn_logger_access_with_request_id(environ, log):
    rid = 'request-id'
    response, environ, delta, expected = access_extra_args(environ, '/')
    expected['request_id'] = rid
    cfg = Config()
    cfg.set('accesslog', '-')
    logger = gunicorn.GunicornLogger(cfg)

    log[:] = []
    with request_id.context(rid):
        logger.access(response, None, environ, delta)
    assert log[0]._structured == expected
Example #3
0
def test_gunicorn_logger_access_with_request_id(environ, context):
    rid = 'request-id'
    response, environ, delta, expected = access_extra_args(environ, '/')
    expected['request_id'] = rid
    cfg = Config()
    cfg.set('accesslog', '-')
    logger = gunicorn.GunicornLogger(cfg)

    context.logs[:] = []
    with request_id.context(rid):
        logger.access(response, None, environ, delta)
    assert context.logs.exists(extra=expected)
Example #4
0
def test_log(log, celery_app):

    logger = logging.getLogger(__name__)

    @celery_app.task
    @talisker.celery.log
    def foo(a):
        logger.info('test')

    with request_id.context('id'):
        talisker.celery.delay(foo, 1).get()
    tags = log[0]._structured
    assert tags['request_id'] == 'id'
    assert len(tags['task_id']) == 36  # uuid
Example #5
0
def test_logging(log):

    app = celery.Celery()
    app.conf.update(CELERY_ALWAYS_EAGER=True)
    logger = logging.getLogger(__name__)

    @app.task
    @talisker.celery.logging
    def foo(a):
        logger.info('test')

    with request_id.context('id'):
        talisker.celery.delay(foo, 1).get()
    tags = log[0]._structured
    assert tags['request_id'] == 'id'
    assert len(tags['task_id']) == 36  # uuid
def test_context(id):
    assert request_id.get() is None
    with request_id.context(id):
        assert request_id.get() == id
    assert request_id.get() is None
def test_context_existing_id(id):
    request_id.push('existing')
    assert request_id.get() == 'existing'
    with request_id.context(id):
        assert request_id.get() == id
    assert request_id.get() == 'existing'
def test_context_existing_id(id):
    request_id.push('existing')
    assert request_id.get() == 'existing'
    with request_id.context(id):
        assert request_id.get() == id
    assert request_id.get() == 'existing'
def test_context(id):
    assert request_id.get() is None
    with request_id.context(id):
        assert request_id.get() == id
    assert request_id.get() is None