Skip to main content

OOPS disk serialisation and repository management.

Project description

Copyright (c) 2011, Canonical Ltd

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, version 3 only.

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 Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. GNU Lesser General Public License version 3 (see the file LICENSE).

This is a component of the python-oops project: https://launchpad.net/python-oops. An OOPS report is a report about something going wrong in a piece of software… thus, an ‘oops’ :)

This package provides disk storage, management, and a serialisation format for OOPSes stored in the repository. Programs or services that are generating OOPS reports need this package or other similar ones, if they want to persist the reports.

Dependencies

Testing Dependencies

Usage

oops_datedir_repo is an extension package for the oops package.

The DateDirRepo class provides an OOPS publisher (DateDirRepo.publish) which will write OOPSes into the repository.

Retrieving OOPSes can be done by using the low level serializer_rfc822 functions : an OOPS report can be written to a disk file via the serializer_rfc822.write() function, and read via the matching read() function.

Typical usage:

>>> config = oops.Config()
>>> with fixtures.TempDir() as tempdir:
...    repo = oops_datedir_repo.DateDirRepo('/tmp/demo')
...    config.publishers.append(repo.publish)
...    ids = config.publish({'oops': '!!!'})

For more information see the oops package documentation or the api docs.

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-datedir-repo. 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_datedir_repo.tests.test_suite.

For instance:

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

If you have testrepository you can run the tests with that:

$ testr run

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oops_datedir_repo-0.0.23.tar.gz (12.7 kB view details)

Uploaded Source

File details

Details for the file oops_datedir_repo-0.0.23.tar.gz.

File metadata

File hashes

Hashes for oops_datedir_repo-0.0.23.tar.gz
Algorithm Hash digest
SHA256 76a4feff354f172e99c79fdd0d3bfa4db1eedc7c57d792c0d5ee331b188f6ccb
MD5 b40888ff4c658a1d0189f0b601f50bc1
BLAKE2b-256 68b0fd587b6a8ffe7527965375266db52c0a986e2906f573ac7b6d46d3433c5d

See more details on using hashes here.

Supported by

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