معرفی شرکت ها


django-log-formatter-json-0.2.0


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Django JSON log formatter
ویژگی مقدار
سیستم عامل -
نام فایل django-log-formatter-json-0.2.0
نام django-log-formatter-json
نسخه کتابخانه 0.2.0
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Dan Hoerst
ایمیل نویسنده dhoerst1@gmail.com
آدرس صفحه اصلی https://github.com/danhoerst/json-log-formatter
آدرس اینترنتی https://pypi.org/project/django-log-formatter-json/
مجوز UNKNOWN
================== JSON log formatter ================== The library helps you to store logs in JSON format. Why is it important? Well, it facilitates integration with **Logstash**. Usage example: .. code-block:: python import logging import json_log_formatter formatter = json_log_formatter.JSONFormatter() json_handler = logging.FileHandler(filename='/var/log/my-log.json') json_handler.setFormatter(formatter) logger = logging.getLogger('my_json') logger.addHandler(json_handler) logger.setLevel(logging.INFO) logger.info('Sign up', extra={'referral_code': '52d6ce'}) The log file will contain the following log record (inline). .. code-block:: json { "message": "Sign up", "time": "2015-09-01T06:06:26.524448", "referral_code": "52d6ce" } JSON libraries -------------- You can use **ujson** or **simplejson** instead of built-in **json** library. They are faster and can serialize ``Decimal`` values. .. code-block:: python import json_log_formatter import ujson formatter = json_log_formatter.JSONFormatter() formatter.json_lib = ujson Django integration ------------------ Here is an example of how the JSON formatter can be used with Django. .. code-block:: python LOGGING['formatters']['json'] = { '()': 'json_log_formatter.JSONFormatter', } LOGGING['handlers']['json_file'] = { 'level': 'INFO', 'class': 'logging.FileHandler', 'filename': '/var/log/my-log.json', 'formatter': 'json', } LOGGING['loggers']['my_json'] = { 'handlers': ['json_file'], 'level': 'INFO', } Let's try to log something. .. code-block:: python import logging logger = logging.getLogger('my_json') logger.info('Sign up', extra={'referral_code': '52d6ce'}) Custom formatter ---------------- You will likely need a custom log format. For instance, you want to log a user ID, an IP address and ``time`` as ``django.utils.timezone.now()``. To do so you should override ``JSONFormatter.json_record()``. .. code-block:: python class CustomisedJSONFormatter(json_log_formatter.JSONFormatter): def json_record(self, message, extra, record): extra['message'] = message extra['user_id'] = current_user_id() extra['ip'] = current_ip() if 'time' not in extra: extra['time'] = django.utils.timezone.now() return extra Let's say you want ``datetime`` to be serialized as timestamp. Then you should use **ujson** (which does it by default) and disable ISO8601 date mutation. .. code-block:: python class CustomisedJSONFormatter(json_log_formatter.JSONFormatter): json_lib = ujson def mutate_json_record(self, json_record): return json_record Tests ----- .. code-block:: console $ pip install -r requirements.txt $ tox


نحوه نصب


نصب پکیج whl django-log-formatter-json-0.2.0:

    pip install django-log-formatter-json-0.2.0.whl


نصب پکیج tar.gz django-log-formatter-json-0.2.0:

    pip install django-log-formatter-json-0.2.0.tar.gz