auditable tracing for linking requests between services
Project description
# Petitioners
[](http://travis-ci.org/balanced/petitioners) [](https://pypi.python.org/pypi/petitioners/) [](https://pypi.python.org/pypi/petitioners/) [](https://pypi.python.org/pypi/petitioners/) [](https://pypi.python.org/pypi/petitioners/)
Adds tracing to requests generated by Flask apps.
```python
@petitioners.register_flask_app('X-Request-Trace', 'Trace-')
class FlaskApp(flask.Flask):
pass
app = FlaskApp('name')
# or if you prefer not to use a decorator
petitioners.Petitioner.register(app)
```
Requests to `app` will now generate response with headers tagged like
```
X-Request-Trace: Trace-123123
```
If this header already exists then it will be appended to like
```
X-Request-Trace: Trace-123123,Trace-123432
```
The current trace value can be accessed from `app` via the `petitioners` property
```python
>>> import flask
>>> import petitioners
>>> app = flask.Flask('name')
>>> petitioners.Petitioner.register(app)
>>> app.test_request_context().push()
>>> print flask.current_app.petitioners
<Petitioner (<Flask 'name'>)X-Petitioners=[u'OHM-c92bffaf1b27497aad73a1cb02b22059']>
```
[](http://travis-ci.org/balanced/petitioners) [](https://pypi.python.org/pypi/petitioners/) [](https://pypi.python.org/pypi/petitioners/) [](https://pypi.python.org/pypi/petitioners/) [](https://pypi.python.org/pypi/petitioners/)
Adds tracing to requests generated by Flask apps.
```python
@petitioners.register_flask_app('X-Request-Trace', 'Trace-')
class FlaskApp(flask.Flask):
pass
app = FlaskApp('name')
# or if you prefer not to use a decorator
petitioners.Petitioner.register(app)
```
Requests to `app` will now generate response with headers tagged like
```
X-Request-Trace: Trace-123123
```
If this header already exists then it will be appended to like
```
X-Request-Trace: Trace-123123,Trace-123432
```
The current trace value can be accessed from `app` via the `petitioners` property
```python
>>> import flask
>>> import petitioners
>>> app = flask.Flask('name')
>>> petitioners.Petitioner.register(app)
>>> app.test_request_context().push()
>>> print flask.current_app.petitioners
<Petitioner (<Flask 'name'>)X-Petitioners=[u'OHM-c92bffaf1b27497aad73a1cb02b22059']>
```
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
petitioners-0.0.7.tar.gz
(3.5 kB
view hashes)