Skip to main content

TraceView Oboe libraries, instrumentation, and web middleware components for WSGI, Django, and Tornado.

Project description

# python-traceview

The 'oboe' and 'oboeware' modules provide support for instrumenting
programs for use with the TraceView Oboe instrumentation library.

The oboe module provides a Pythonic interface to liboboe for C, and
the oboeware module provides middleware and other components for
popular web frameworks such as Django, Tornado, Pylons, and WSGI.

## Installing

The Python instrumentation for TraceView uses a module named `oboe`, which you
can get from pip by running:

pip install oboe

NOTE: Make sure you've first done the [base TraceView install]( so the appropriate dependencies are available.

## Configuring

See our documentation on [configuring TraceView for python](

# Upgrading

To upgrade an existing installation, you simply need to run:

pip install oboe --upgrade

## Running the Tests

### Test dependencies

The test suite depends on the presence of several database and cache servers.

- mysql
- postgres
- mongodb
- memcached
- redis

The test suite uses [tox](, a tool for running
tests against different versions of python and depended modules. You can get it
from apt by running `sudo apt-get install python-tox` or from pip with
`sudo pip install tox`.

The tests currently run against python 2.6 and 2.7, so you will need both.

To set up multiple versions of python:

sudo apt-get install python-software-properties software-properties-common
sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get install python2.6 python2.6-dev

### Configuring test database and cache servers

MySQL SQLAlchemy tests require no-auth TCP connection (as testing user).

PostgreSQL SQLAlchemy tests requires no-auth (trust) TCP connection (as testing user).

# in pg_hba.conf: Don't use this in production!!
host all all trust

### Running the tests

To run tests, simply run:


### Test directory layout

Tests in test/unit are actually functional tests; naming is for historic
reasons. Tests in test/manual are for manual verification of certain

## Support

If you find a bug or would like to request an enhancement, feel free to file
an issue. For all other support requests, see our [support portal](

## Contributing

You are obviously a person of great sense and intelligence. We happily
appreciate all contributions to the oboe module whether it is documentation,
a bug fix, new instrumentation for a library or framework or anything else
we haven't thought of.

We welcome you to send us PRs. We also humbly request that any new
instrumentation submissions have corresponding tests that accompany
them. This way we don't break any of your additions when we (and others)
make changes after the fact.

## Developer Resources

We have made a large effort to expose as much technical information
as possible to assist developers wishing to contribute to the traceview module.
Below are the three major sources for information and help for developers:

* The [TraceView Knowledge Base](
has a large collection of technical articles or, if needed, you can submit a
support request directly to the team.

If you have any questions or ideas, don't hesitate to contact us anytime.

## Compiling the C extension

This module utilizes a C++ extension to interface with the system ``
library. This system library is installed with the TraceView host packages
(tracelyzer, liboboe0, liboboe-dev) and is used to report
host and performance metrics
from multiple sources (nodejs, nginx, python etc.) back to TraceView servers.

Note: Make sure you have the development package `liboboe0-dev` installed
before attempting to compile the C extension.

>$ dpkg -l | grep liboboe
ii liboboe-dev 1.2.1-trusty1 TraceView common library -- development files
ii liboboe0 1.2.1-trusty1 Traceview common library

See [Installing Base Packages on Debian and Ubuntu](
in the Knowledge Base for details.

To see the code related to the C++ extension, take a look in `oboe`.

## License

Copyright (c) 2016 SolarWinds, LLC

Released under the [Librato Open License](

Project details

Download files

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

Files for oboe, version 1.5.11
Filename, size File type Python version Upload date Hashes
Filename, size oboe-1.5.11.tar.gz (81.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page