Skip to main content
2025 Python Packaging Survey is now live!  Take the survey now

Persistent logging for Plone objects

Project description

zopyx.plone.persistentlogger

zopyx.plone.persistentlogger supports persistent logging where the log data is stored on an arbitrary persistent Plone object. Typical usecases are application specific logging e.g. for logging a history per content object directly in Plone rather then having a huge common log on the filesystem. The log entries are stored using object annotations.

Usage:

from zopyx.plone.persistentlogger import IPersistentLogger

def do_something(...):

    # ``context`` represents the current context object

    adapter = IPersistentLogger(context)
    adapter.log(u'this is a logging message')
    adapter.log(u'this is an error message', level='error')
    adapter.log(u'this is an error message', level='error', details='....')

details can be either a string or a Python datastructure like a dict, a list or a tuple. The logger will convert non-string data using the pprint module of Python into a nicely readable string.

The logs can be view through-the-web through the URL http://host/path/to/object/@@persistent-log . The logs can be clear using the URL http://host/path/to/object/@@persistent-log-clear. Both URLs require the permission of modify the related object.

All logs can be searched, sorted and filtered individually based on the Datatables.net implementation.

Repository

https://travis-ci.org/zopyx/zopyx.plone.persistentlogger.svg?branch=master

Author

Andreas Jung/ZOPYX
Hundskapfklinge 33
D-72074 Tuebingen, Germany
www.zopyx.com

Changelog

0.2.0 (2015-09-10)

  • bugfixes, code cleanup

  • added “Persistent log” object action

0.1.0 (2015-08-31)

  • initial release

Supported by

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