Metadata-Version: 2.1
Name: django-eventlog
Version: 1.1
Summary: django-eventlog stores event messages in a Django model.
Home-page: https://github.com/bartTC/django-eventlog/
Author: Martin Mahner
Author-email: martin@mahner.org
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 3
Classifier: Framework :: Django
License-File: LICENSE
Requires-Dist: django>=1.8
Provides-Extra: tests
Requires-Dist: coverage; extra == "tests"

.. image:: https://travis-ci.org/bartTC/django-eventlog.svg?branch=master
    :target: https://travis-ci.org/bartTC/django-eventlog

.. image:: https://codecov.io/github/bartTC/django-eventlog/coverage.svg?branch=master
    :target: https://codecov.io/github/bartTC/django-eventlog?branch=master

Full documentation: https://docs.elephant.house/django-eventlog/

===============
django-eventlog
===============

django-eventlog is a very simple event logger you can use to track certain
actions in your code. Events are stored in a Django model and can be viewed
in the Django Admin.

Usage Example::

    from eventlog import EventGroup

    e = EventGroup()                       # Start a new Event Group
    e.info('About to send 1000 mails.',    # Trigger an Event
           initiator='Mailer Daemon')
    try:
        # ... sending 1000 mails
        e.info('All emails sent!',         # Trigger an Event in the same group,
               initiator='Mailer Daemon')  # so they are combined in the admin.
    except Exception:
        e.error('There was an error sending the emails.',
                initiator='Mailer Daemon')


Events can be grouped in a "Event Group" and when hovering over one item
in the admin, all events of the same group are highlighted:

.. image:: https://github.com/bartTC/django-eventlog/raw/master/docs/_static/change_list.png
   :scale: 100 %

The details view of an event will list all other events of this group so you
can track the progress:

.. image:: https://github.com/bartTC/django-eventlog/raw/master/docs/_static/change_form.png
   :scale: 100 %

.. note::

  While looking similar, it's not intended to be a replacement for your
  regular Python ``logging`` facility, rather an addition to it.

  django-eventlog stores it's data in a regular database model, so each log entry
  will trigger a SQL Insert. Therefore you should be careful using it in high
  performance and/or high volume environments.


=========
Changelog
=========

1.1 (2018-05-11)
================

- Added ability to manually set a group id to make an EventGroup object
  reusable through threads.

1.0 (2018-02-13)
================

- Production ready 1.0 release.
- The details Admin view now displays all events of the group with an
  annotated delay, so you can see the progress of the group.

0.9 (2018-02-13)
================

- Initial release.
- Django 1.8 to 2.0 compatibility.
- Python 2.7 to 3.6 compatibility.

