structlog_sentry_logger._config
Module Contents
Classes
Addresses: SentryJsonProcessor breaks logging breadcrumbs #25 |
Functions
|
|
|
A custom processor for structlog for Cloud Logging compatibility |
Convenience function to get the local logging configuration dictionary, |
|
|
Builds logfile handler configs |
|
|
|
Convenience function that returns a logger |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Attributes
CamelCase alias for structlog_sentry_logger.get_logger. |
- structlog_sentry_logger._config.ROOT_DIR
- structlog_sentry_logger._config.getLogger
CamelCase alias for structlog_sentry_logger.get_logger.
- class structlog_sentry_logger._config.Config[source]
- stdlib_logging_config_already_configured = False
- use_orjson = True
- class structlog_sentry_logger._config.SentryBreadcrumbJsonProcessor(breadcrumb_level=logging.INFO, level=logging.WARNING, active=True, as_extra=True, tag_keys=None)[source]
Bases:
structlog_sentry_logger.structlog_sentry.SentryJsonProcessor
Addresses: SentryJsonProcessor breaks logging breadcrumbs #25 (source)
- Parameters
level (int) – events of this or higher levels will be reported to Sentry.
active (bool) – a flag to make this processor enabled/disabled.
as_extra (bool) – send event_dict as extra info to Sentry.
tag_keys (Union[List[str], str]) – a list of keys. If any if these keys appear in event_dict, the key and its corresponding value in event_dict will be used as Sentry event tags. use “__all__” to report all key/value pairs of event as tags.
ignore_loggers – a list of logger names to ignore any events from.
breadcrumb_level (int) –
- structlog_sentry_logger._config.add_line_number_and_func_name(logger, method, event_dict)[source]
- Parameters
logger (Any) –
method (str) –
event_dict (structlog.types.EventDict) –
- Return type
structlog.types.EventDict
- structlog_sentry_logger._config.add_severity_field_from_level_if_in_cloud_environment(logger, method, event_dict)[source]
A custom processor for structlog for Cloud Logging compatibility
Since Cloud Logging infers log levels from the severity key, simply duplicates level to the severity field in the logger’s event dictionary.
- Parameters
logger (Any) –
method (str) –
event_dict (structlog.types.EventDict) –
- Return type
structlog.types.EventDict
- structlog_sentry_logger._config.get_config_dict()[source]
Convenience function to get the local logging configuration dictionary, e.g., to help configure loggers from other libraries.
Returns: The logging configuration dictionary that would be used to configure the Python logging library component of the logger
- Return type
- structlog_sentry_logger._config.get_dev_local_filename_handler(module_name)[source]
Builds logfile handler configs
Before building the logfile handler configurations, this function attempts to initialize the log directory in the (inferred) application root directory. If this fails (for example, if the directory is read-only), it will fall back to a platform-specific temp directory. If this too fails, it will exit without creating the logfile handler configuration.
- Args:
module_name: the name of the calling module which will be incorporated in the logfile file name to provide better log provenance.
Returns: logfile handler configurations if log directories are writeable, else None
- structlog_sentry_logger._config.get_logger(name=None)[source]
Convenience function that returns a logger
Returns: A proxy that creates a correctly configured logger bound to the __name__ of the calling module
- Parameters
name (Optional[str]) –
- Return type
Any
- structlog_sentry_logger._config.get_namespaced_module_name(__file__)[source]
- Parameters
__file__ (Union[pathlib.Path, str]) –
- Return type
- structlog_sentry_logger._config.mkdir_logs_dir(log_data_dir)[source]
- Parameters
log_data_dir (pathlib.Path) –
- Return type
- structlog_sentry_logger._config.serializer(*args, default=None, option=orjson.OPT_NON_STR_KEYS | orjson.OPT_SORT_KEYS)[source]
- structlog_sentry_logger._config.serializer_bytes(*args, default=None, option=orjson.OPT_NON_STR_KEYS | orjson.OPT_SORT_KEYS)[source]