*************************************************************
python-oops-timeline: Error report integration with timelines
*************************************************************

    Copyright (c) 2011, Canonical Ltd

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU Affero General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU Affero General Public License for more details.

    You should have received a copy of the GNU Affero General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.

The oops_timeline package provides integration glue between timeline objects
(http://pypi.python.org/pypi/timeline) and the oops error reporting system
(http://pypi.python.org/pypi/oops).

Dependencies
============

* Python 2.6+

* oops (http://pypi.python.org/pypi/oops)

* timeline (http://pypi.python.org/pypi/timeline)

Testing Dependencies
====================

* subunit (http://pypi.python.org/pypi/python-subunit) (optional)

* testtools (http://pypi.python.org/pypi/testtools)

Usage
=====

oops_timeline provides an oops on_create hook to extract timeline data from
oops_context['timeline'] and inject it into the oops report as primitive data.

* Setup your configuration::

  >>> from oops import Config
  >>> config = Config()

Note that you will probably want at least one publisher, or your reports will
be discarded.

* Add in the timneline hook to the config::

  >>> oops_timeline.install_hooks(config)

This is a convenience function in case additional hooks are needed in future.

For more information see pydoc oops_timeline.

Installation
============

Either run setup.py in an environment with all the dependencies available, or
add the working directory to your PYTHONPATH.

Development
===========

Upstream development takes place at https://launchpad.net/python-oops-timeline.
To setup a working area for development, if the dependencies are not
immediately available, you can use ./bootstrap.py to create bin/buildout, then
bin/py to get a python interpreter with the dependencies available.

To run the tests use the runner of your choice, the test suite is
oops.tests.test_suite.

For instance::

  $ bin/py -m testtools.run oops_timeline.tests.test_suite
