Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save delijati/34c870456b093d4313c9bfa01d31ba06 to your computer and use it in GitHub Desktop.
Save delijati/34c870456b093d4313c9bfa01d31ba06 to your computer and use it in GitHub Desktop.
Renders log entry level in uppercase when using structlog library
import structlog
def _add_log_level_upper(logger, method_name, event_dict):
event_dict["level"] = method_name.upper()[0]
return event_dict
level_styles = structlog.dev.ConsoleRenderer.get_default_level_styles()
new_styles = {}
for k, v in list(level_styles.items()):
new_styles[k.upper()[0]] = v
structlog.configure(
processors=[
structlog.processors.StackInfoRenderer(),
structlog.dev.set_exc_info,
structlog.processors.format_exc_info,
structlog.processors.TimeStamper(fmt="%Y-%m-%d %H:%M.%S", utc=True),
_add_log_level_upper,
structlog.dev.ConsoleRenderer(level_styles=new_styles, pad_event=10),
]
)
log = structlog.get_logger("goo")
log.info("WHAAATt")
log.warn("WHAAATt")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment