Skip to content
Python log sanitizer
Branch: master
Clone or download
Pull request Compare This branch is even with rai200890:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci
examples
python_log_sanitizer
test
.coveragerc
.flake8
.gitignore
LICENSE
Makefile
Pipfile
Pipfile.lock
README.md
pytest.ini
setup.py

README.md

python_log_sanitizer

CircleCI PyPI version Maintainability Test Coverage

Python log sanitizer

Instalation

Pipenv

    pipenv install python_log_sanitizer 

Pip

    pip install python_log_sanitizer 

Usage

To run this example please install python-json-logger:

pip install python-json-logger
LOG_CONFIG = {
    "version": 1,
    "formatters": {
        "json": {
            "class": "pythonjsonlogger.jsonlogger.JsonFormatter",
            "format": "[%(asctime)s] %(levelname)s in %(module)s: %(message)s"
        }
    },
    "filters": {
        "sanitizer": {
            "()" : "python_log_sanitizer.SanitizerFilter",
            "patterns": ["extra"],
            "placeholder": "*"
        }
    },
    "handlers": {
        "json": {
            "class": "logging.StreamHandler",
            "formatter": "json"
        }
    },
    "loggers": {
        "root": {
            "level": "INFO",
            "handlers": ["json"],
            "filters": ["sanitizer"]
        }
    }
}
import logging

from logging import config

config.dictConfig(LOG_CONFIG) # load log config from dict

logger = logging.getLogger("root") # get root logger instance


logger.info("farofa", extra={"extra": "farofa"}) # log message with extra arguments  

Example output:

{"asctime": "2018-11-04 23:01:55,804", "levelname": "INFO", "module": "<ipython-input-8-f8c68848bfbe>", "message": "farofa", "extra": "*"}
You can’t perform that action at this time.