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://github.com/zopyx/zopyx.plone.persistentlogger
.. image:: https://travis-ci.org/zopyx/zopyx.plone.persistentlogger.svg?branch=master
Author
------
| Andreas Jung/ZOPYX
| Hundskapfklinge 33
| D-72074 Tuebingen, Germany
| info@zopyx.com
| 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
Raw data
{
"_id": null,
"home_page": "http://pypi.python.org/pypi/zopyx.plone.persistentlogger",
"name": "zopyx.plone.persistentlogger",
"maintainer": "",
"docs_url": "https://pythonhosted.org/zopyx.plone.persistentlogger/",
"requires_python": "",
"maintainer_email": "",
"keywords": "Plone Logging",
"author": "Andreas Jung",
"author_email": "info@zopyx.com",
"download_url": "https://files.pythonhosted.org/packages/32/ae/42a7b1c8928672a2835b8ed3e700e03194a8477a86646ed0c30c76d6b4f4/zopyx.plone.persistentlogger-0.5.2.tar.gz",
"platform": null,
"description": "zopyx.plone.persistentlogger\n============================\n\n``zopyx.plone.persistentlogger`` supports persistent logging where the log data\nis stored on an arbitrary persistent Plone object (as annotation). Typical\nusecases are application specific logging e.g. for logging a history per\ncontent object directly in Plone rather then having a huge common log on the\nfilesystem. The log entries are stored using object annotations.\n\nUsage::\n\n from zopyx.plone.persistentlogger.logger import IPersistentLogger\n\n def do_something(...):\n\n # ``context`` represents the current context object\n \n adapter = IPersistentLogger(context)\n adapter.log(u'this is a logging message')\n adapter.log(u'this is an error message', level='error')\n adapter.log(u'this is an error message', level='error', details='....')\n\n``details`` can be either a string or a Python datastructure like a dict, a\nlist or a tuple. The logger will convert non-string data using the ``pprint``\nmodule of Python into a nicely readable string.\n``level`` can be an arbitrary string for indicating the severity of the logging\nmessage. The module does not perform any checking on the given message\n``level``. Sorting on ``level`` is accomplished only on the lexicographical\nordering of the ``level`` values.\n\nThe logs can be view through-the-web through the URL http://host/path/to/object/@@persistent-log .\nThe logs can be clear using the URL http://host/path/to/object/@@persistent-log-clear.\nBoth URLs require the permission of modify the related object.\n\nAll logs can be searched, sorted and filtered individually based on the Datatables.net\nimplementation.\n\nCompatibility\n-------------\n\n- Plone 4.3\n- Plone 5.0\n- Plone 5.1\n- Plone 5.2 (Python 3.6+, Python 2.7)\n\nInstallation\n------------\n\nInstallation on Plone 4.3.X requires the following version pinning::\n \n plone.app.jquery = 1.8.3\n\nRepository & issue tracker\n--------------------------\n\n- https://github.com/zopyx/zopyx.plone.persistentlogger\n\n.. image:: https://travis-ci.org/zopyx/zopyx.plone.persistentlogger.svg?branch=master\n\n\n\nAuthor\n------\n| Andreas Jung/ZOPYX\n| Hundskapfklinge 33\n| D-72074 Tuebingen, Germany\n| info@zopyx.com\n| www.zopyx.com\n\n\nChangelog\n=========\n\n0.5.2 (2023-11-23)\n------------------\n- updated to DataTables 1.13.x\n\n0.5.0 (2021-06-21)\n------------------\n- add file_logger module with support for \"loguru\" based loggers\n\n0.4.8 (2019-03-03)\n------------------\n- minor UI tweaks \n\n\n0.4.7 (2018-12-20)\n------------------\n- Python 3 compatibility\n\n0.4.2 (2017-01-28)\n------------------\n-fixes\n\n0.4.0 (2017-01-27)\n------------------\n- log() supports `username` as optional argument for overriding the \n current username\n- log() now accepts an optional parameter `info_url` which can either be\n a full URL or a relative URL (relative to the Plone portal root) that will\n be displayed within the logger table under the new column `Info`\n\n0.3.6 (2016-07-15)\n------------------\n- minor CSS fixes\n\n0.3.5 (2016-04-25)\n------------------\n- update docs \n\n0.3.4 (2016-04-22)\n------------------\n- added preliminary toolbar icon\n\n0.3.2 (2016-04-20)\n------------------\n- added browser layers\n- added 'demo' profile for @@logger-demo view for creating\n some demo logger entries\n\n0.3.1 (2016-04-20)\n------------------\n- fixes\n\n0.3.0 (2016-04-20)\n------------------\n- full Plone 5 compatibility\n- switched from DataTables.net to jsGrid\n\n\n0.2.6 (2016-03-18)\n------------------\n- i18n_domain missing in configure.zcml\n\n0.2.4 (2016-02-02)\n------------------\n- minor fixes\n\n0.2.3 (2015-09-23)\n------------------\n\n- some unittest cleanup\n\n0.2.2 (2015-09-23)\n------------------\n- log entries now store the original ``details`` value directly \n as entry key ``details_raw`` in addition to the pretty-printed\n representation in ``details``. Note that ``details`` must be \n Python pickable.\n\n\n0.2.1 (2015-09-17)\n------------------\n- changed action permission for viewing the persistent log\n\n0.2.0 (2015-09-10)\n------------------\n\n- bugfixes, code cleanup\n- added \"Persistent log\" object action\n\n\n0.1.0 (2015-08-31)\n------------------\n\n- initial release\n\n",
"bugtrack_url": null,
"license": "GPL",
"summary": "Persistent logging for Plone objects",
"version": "0.5.2",
"project_urls": {
"Homepage": "http://pypi.python.org/pypi/zopyx.plone.persistentlogger"
},
"split_keywords": [
"plone",
"logging"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "32ae42a7b1c8928672a2835b8ed3e700e03194a8477a86646ed0c30c76d6b4f4",
"md5": "e7728c23347004535d8f0869b77d54d1",
"sha256": "07c6e28e74496abc2fd6d07a4dba9a4858a62c3cd14ecc1699572c479e587f28"
},
"downloads": -1,
"filename": "zopyx.plone.persistentlogger-0.5.2.tar.gz",
"has_sig": false,
"md5_digest": "e7728c23347004535d8f0869b77d54d1",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 2673523,
"upload_time": "2023-11-23T09:38:08",
"upload_time_iso_8601": "2023-11-23T09:38:08.870709Z",
"url": "https://files.pythonhosted.org/packages/32/ae/42a7b1c8928672a2835b8ed3e700e03194a8477a86646ed0c30c76d6b4f4/zopyx.plone.persistentlogger-0.5.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-23 09:38:08",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "zopyx.plone.persistentlogger"
}