Skip to main content

Easy configure logging

Project description

easylogconfig

This python library provides simple wrapper for standart logging module.

If you want something more than "logging.basicConfig", but don't want to read a lot of documentation and write a lot of code.

WARNING Since v0.2 python 2 is not supported anymore.

Usage

You can find examples in ./examples directory

import logging
import easylogconfig

log = logging.getLogger(__name__)

# print messages to the stdout, add debug level
easylogconfig.auto(debug=True)
# or print messages to the syslog
easylogconfig.auto(syslog_tag="example_tag")
# or log messages to remote syslog server
easylogconfig.auto(syslog_tag="example_tag", syslog_address=("127.0.0.1", 514))
# or print messages to the file without datetime but with thread names
easylogconfig.auto(file_name="/var/log/example.log", file_backup_count=30,
                   datetime=False, thread=True)

log.info("info message")
log.debug("debug message")

# output format:
# 2019-03-22/10:17:28 INFO    info message

Configuration

Library provides one simple function auto with arguments:

  • formatter arguments:
    • debug=False: add debug messages to output?
    • thread=False: add thread names to messages?
    • datetime=True: add datetime to messages?
    • level=False: add level names to messages?
  • SysLogHandler arguments:
    • syslog_tag=None: if set to str, log messages to syslog with this tag
    • syslog_address="/dev/log": syslog server address. By default, it sends syslog messages via /dev/log file. It can be set to string (ip address or hostname, in this case default 514 port is used), or to Tuple[str, int] (like logging.handlers.SysLogHandler)
  • TimedRotatingFileHandler arguments:
    • file_name=None: if set to str, log messages to this tile
    • file_when="midnight": file rotating time
    • file_backup_count=7: keep last files

Log handlers configuration rules:

  • StreamHandler will be used if syslog_tag or file_name are omitted or empty strings
  • SysLogHandler will be used if syslog_tag is set to none-empty string
  • TimedRotatingFileHandler will be used if file_name is set to none-empty string
  • ValueError will be raised if both syslog_tag and file_name are set to none-empty string

Installation

python3 -m pip install -U easylogconfig
# or
python3 -m pip install -U git+https://github.com/tierpod/easylogconfig#egg=easylogconfig

Development

make venv
source ./venv/bin/activate
(venv) make init-dev init

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

easylogconfig-0.2.0.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

easylogconfig-0.2.0-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file easylogconfig-0.2.0.tar.gz.

File metadata

  • Download URL: easylogconfig-0.2.0.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 CPython/3.10.6

File hashes

Hashes for easylogconfig-0.2.0.tar.gz
Algorithm Hash digest
SHA256 be7dd0a40feece59fc07240f6c8d7a839a96f964f532b42130d9f571654148e6
MD5 9b4d33076cb3bf147fa95d22456f09a8
BLAKE2b-256 3cd4459a0d65625e3b7d75ac1aed017e1026f07eb34cb4d5057d43dc8815acf0

See more details on using hashes here.

File details

Details for the file easylogconfig-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: easylogconfig-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 4.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 CPython/3.10.6

File hashes

Hashes for easylogconfig-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 032e2382cb9aae7e87d5f8eb9d12c8a715b68c0230c80870d28ea9342d7404ff
MD5 09936e293b1dc4da2e5b5724d924d064
BLAKE2b-256 296a8beb0dd40a89431e29191103629e6fde21e806214416ec679af8e9d4ed53

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page