Skip to main content

zopyx.plone.persistentlogger

zopyx.plone.persistentlogger supports persistent logging where the log data is stored on an arbitrary persistent Plone object (as annotation). 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.logger 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. level can be an arbitrary string for indicating the severity of the logging message. The module does not perform any checking on the given message level. Sorting on level is accomplished only on the lexicographical ordering of the level values.

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.

Compatibility

  • Plone 4.3

  • Plone 5.0

  • Plone 5.1

  • Plone 5.2 (Python 3.6+, Python 2.7)

Installation

Installation on Plone 4.3.X requires the following version pinning:

plone.app.jquery = 1.8.3

Repository & issue tracker

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.5.2 (2023-11-23)

  • updated to DataTables 1.13.x

0.5.0 (2021-06-21)

  • add file_logger module with support for “loguru” based loggers

0.4.8 (2019-03-03)

  • minor UI tweaks

0.4.7 (2018-12-20)

  • Python 3 compatibility

0.4.2 (2017-01-28)

-fixes

0.4.0 (2017-01-27)

  • log() supports username as optional argument for overriding the current username

  • log() now accepts an optional parameter info_url which can either be a full URL or a relative URL (relative to the Plone portal root) that will be displayed within the logger table under the new column Info

0.3.6 (2016-07-15)

  • minor CSS fixes

0.3.5 (2016-04-25)

  • update docs

0.3.4 (2016-04-22)

  • added preliminary toolbar icon

0.3.2 (2016-04-20)

  • added browser layers

  • added ‘demo’ profile for @@logger-demo view for creating some demo logger entries

0.3.1 (2016-04-20)

  • fixes

0.3.0 (2016-04-20)

  • full Plone 5 compatibility

  • switched from DataTables.net to jsGrid

0.2.6 (2016-03-18)

  • i18n_domain missing in configure.zcml

0.2.4 (2016-02-02)

  • minor fixes

0.2.3 (2015-09-23)

  • some unittest cleanup

0.2.2 (2015-09-23)

  • log entries now store the original details value directly as entry key details_raw in addition to the pretty-printed representation in details. Note that details must be Python pickable.

0.2.1 (2015-09-17)

  • changed action permission for viewing the persistent log

0.2.0 (2015-09-10)

  • bugfixes, code cleanup

  • added “Persistent log” object action

0.1.0 (2015-08-31)

  • initial release

Release files for zopyx.plone.persistentlogger 0.5.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zopyx.plone.persistentlogger 0.5.2
File Size Uploaded
zopyx.plone.persistentlogger-0.5.2.tar.gz 2.7 MB Details

Release files / zopyx.plone.persistentlogger-0.5.2.tar.gz

Download URL zopyx.plone.persistentlogger-0.5.2.tar.gz
Size 2.7 MB
Tags Source
SHA-256 checksum
How to use checksums
07c6e28e74496abc2fd6d07a4dba9a4858a62c3cd14ecc1699572c479e587f28
BLAKE2b-256 checksum
How to use checksums
32ae42a7b1c8928672a2835b8ed3e700e03194a8477a86646ed0c30c76d6b4f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.6

Release history Release notifications | RSS feed

This release

0.5.2 This release

1 release file

0.5.1

1 release file

0.5.0

1 release file

0.4.9.1

1 release file

0.4.9

1 release file

0.4.8

1 release file

0.4.7.8

1 release file

0.4.7.7

1 release file

0.4.7.6

1 release file

0.4.7.5

1 release file

0.4.7.4

1 release file

0.4.7.3

1 release file

0.4.7.1

1 release file

0.4.7

1 release file

0.4.6

1 release file

0.4.4

1 release file

0.4.3

1 release file

0.4.2

1 release file

0.4.1

1 release file

0.3.6

1 release file

0.3.5

1 release file

0.3.4

1 release file

0.3.3

1 release file

0.3.2

1 release file

0.3.1

1 release file

0.3.0

1 release file

0.2.6

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2.0

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page