Python DSL for setting up Flask app CDC
Project description
This is a helper module to allow you to capture all the request/response which comes to your Flask app.
pip install flask-cdc-devlibx
How to use
from flask_cdc import cdc
# We expect you already have the flask app
app = "Existing flask"
# Recorder is called everytim you get request response. You can do anything you want
# In this example we have logged data with a helper function provided by cdc. You can change
# this method to do anything else
def recorder(state):
cdc.log_results(state)
# Wrap app to your session record MW
app.wsgi_app = cdc.SessionRecorderMiddleware(app.wsgi_app, recorder)
How to enable CDC
Set following env variable:
export CDC_KAFKA=<your kafka broker>
export CDC_TOPIC=<your kafka topic for CDC>
You can use the pre-defined recorder to send data to kafka:
app.wsgi_app = cdc.SessionRecorderMiddleware(app.wsgi_app, cdc.publish_result_to_kafka)
Once it is defined then you can see the following data in your topic
{
"request": {
"body": {
"archive_existing_versions": true,
"name": "harish",
"stage": "Staging",
"version": "2"
},
"method": "POST",
"url": "/ajax-api/2.0/preview/mlflow/model-versions/transition-stage"
},
"response": {
"status": "200 OK"
}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for flask_cdc_devlibx-0.0.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb41e2c8b2033661c524dc09b041ea8ccf02112ed59b4a5088c332f904ad0c92 |
|
MD5 | 0178d6b89130bfb5eeadeea5b976b04b |
|
BLAKE2b-256 | eff28e8978872cb2fab2d60e2d7d5d75517b6620f0700c1df127265bac5a1e8a |