Skip to main content

An simple, async, full package name path, log rotating, different colored log library.

Project description

Aelog

An simple, async, full package name path, log rotating, different colored log library.

aelog aims to make using python log as simple as possible. as a result, it drastically simplifies using python logging.

aelog's design objectives:

  • Make using python log as simple as possible.
  • Output log contains the full package name path.
  • Provide asynchronous log output function, at the same time, contains common log output.
  • Output according to the log level to mark the different colors separately.
  • Provide a log file rotating, automatic backup.
  • Output to the terminal and file, default output to the terminal, if you don't provide the log file path.

Installing aelog

  • pip install aelog

init aelog

import aelog 

app = Flask(__name__)

aelog.init_app(app)
# or 
aelog.init_app(aelog_access_file='aelog_access_file.log', aelog_error_file='aelog_error_file.log', 
               aelog_console=False)

aelog config

List of configuration keys that the aelog extension recognizes:

configuration key the meaning of the configuration key
AELOG_ACCESS_FILE Access file path, default None.
AELOG_ERROR_FILE Error file path, default None.
AELOG_CONSOLE Whether it is output at the terminal, default false.
AELOG_LEVEL log level, default 'DEBUG'.
AELOG_MAX_BYTES Log file size, default 50M.
AELOG_BACKUP_COUNT Rotating file count, default 5.

Usage

simple using, output log to terminal.

import aelog

aelog.init_app(aelog_console=True)

def test_aelog_output_console():
    """

    Args:

    Returns:

    """
    aelog.debug("simple debug message", "other message")
    aelog.info("simple info message", "other message")
    aelog.warning("simple warning message", "other message")
    aelog.error("simple error message", "other message")
    aelog.critical("simple critical message", "other message")
    try:
        5 / 0
    except Exception as e:
        aelog.exception(e)

This will output to the terminal.
console

  • Different levels of logging, different color, the color is cyan, green, yellow, red and 'bold_red,bg_white' in turn.

output log to file and terminal.

import aelog
from flask import Flask

app = Flask(__name__)

aelog.init_app(app)  # Output to the test.log file and terminal 

def test_aelog_output_file():
    """

    Args:

    Returns:

    """
    aelog.debug("simple debug message", "other message")
    aelog.info("simple info message", "other message")
    aelog.warning("simple warning message", "other message")
    aelog.error("simple error message", "other message")
    aelog.critical("simple critical message", "other message")
    try:
        5 / 0
    except Exception as e:
        aelog.exception(e)

This will output to the test.log file and terminal. console

  • Automatic output is greater than the error information to the 'test_error.log' file.
  • Different levels of logging, different color, the color is cyan, green, yellow, red and 'bold_red,bg_white' in turn.

asynchronous output log to file and terminal.

import asyncio
import aelog
from sanic import Sanic

app = Sanic(__name__)

aelog.init_aelog(app)  # Output to the test.log file and terminal 

async def test_async_output():
    await aelog.async_debug("simple debug message", "other message")
    await aelog.async_info("simple info message", "other message")
    await aelog.async_warning("simple warning message", "other message")
    await aelog.async_error("simple error message", "other message")
    await aelog.async_critical("simple critical message", "other message")
    try:
        5 / 0
    except Exception as e:
        await aelog.async_exception(e)

if "__name__"=="__main__":
    loop = asyncio.get_event_loop()
    loop.run_until_complete(test_async_output())

This will output to the test.log file and terminal. console

  • Automatic output is greater than the error information to the 'test_error.log' file.
  • Different levels of logging, different color, the color is cyan, green, yellow, red and 'bold_red,bg_white' in turn.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

aelog-1.0.9-py3-none-any.whl (7.5 kB view hashes)

Uploaded Python 3

Supported by

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