def test_individual_fields(): for action, field_pairs in zip(ACTS, TCS): for field_tmpl, result in field_pairs: forming = SF(field_tmpl) output = forming.on_end(action.end_event) assert output == result return
def test_deferred(): DV = DeferredValue expensive_ops = [(lambda: 5, '"oh, 5"'), (lambda: 'hi', '"oh, hi"'), (lambda: 2.0, '"oh, 2.0"')] formatter = SF('{end_message}') for eo, expected in expensive_ops: act = Action(t_log, 'DEBUG', 'spendy').success('oh, {dv}', dv=DV(eo)) output = formatter.on_end(act.end_event) assert output == expected return
def test_formatter_basic(): forming = SF(template) output = forming.on_end(t_riker.end_event) expected = '"1off" - success - "Riker"' print(output) assert output[-len(expected):] == expected act = Action(t_log, 'DEBUG', 'Wharf') robf = SF(template) act.success('Mr. Wolf') ret = robf.on_end(act.end_event) print(ret) return ret
def test_formatter_basic(): forming = SF(template) output = forming.on_end(t_riker.end_event) expected = '"1off" - success - "Riker"' print output assert output[-len(expected):] == expected act = Action(t_log, 'DEBUG', 'Wharf') robf = SF(template) act.success('Mr. Wolf') ret = robf.on_end(act.end_event) print ret return ret
class SupportLogger(Logger): pass url_log = SupportLogger('url') worker_log = SupportLogger('worker') support_log = SupportLogger('support') extra_fields = [SensibleField('current_gthread_id' , 'd', get_current_gthreadid, quote=False)] # TODO: create/attach this in context stderr_fmt = SensibleFormatter('{iso_end_local_notz} {module_path}' ' ({current_gthread_id}) - {message}', extra_fields=extra_fields) stderr_emt = StreamEmitter('stderr') stderr_sink = SensibleSink(formatter=stderr_fmt, emitter=stderr_emt, on='end') url_log.add_sink(stderr_sink) worker_log.add_sink(stderr_sink) support_log.add_sink(stderr_sink) #url_log.critical('serve_http_request').success('{method} {url}', method='GET', url='/') class LoggingContext(object): logger_type = SupportLogger