A logging interface for Google Cloud Datastore
Project description
Flask-DatastoreLogger
A logging interface for Google Cloud Datastore
Installation
Add this line to your application's requirements.txt
Flask-DatastoreLogger
And then execute:
$ pip install -r requirements.txt
Or install it yourself as:
$ pip install Flask-DatastoreLogger
Usage
Using DatastoreLogger is dead simple. First set your GOOGLE_APPLICATION_CREDENTIALS environment variable to point at a valid JSON creds file.
$ export GOOGLE_APPLICATION_CREDENTIALS=/path/to/creds.json
The following snippet should get you coding
import logging
from flask import Flask
from DatastoreLogger import DatastoreLog, DatastoreLogHandler
from PubSubDecorator import PubSubDecorator
app = Flask(__name__)
app.pubsub = PubSubDecorator(app)
@app.pubsub.subscribe(
subscription='run_task'
topic='task_queue',
route='/run_task',
methods=['POST']
)
def run_task(message, *args, **kwargs):
task_id = message.get('task_id')
task_logger = logging.getLogger('task_log_{0}'.format(task_id))
handler = DatastoreLogHandler('task_log', task_id)
task_logger.addHandler(handler)
task_logger.setLevel(logging.DEBUG)
task_logger.info('Starting Task #{0}'.format(task_id))
# process task actions logging messages with task_logger
return '', 200
@app.route('/task_log/<int:task_id>', methods=['GET'])
def task_log(task_id):
log = DatastoreLog('task_log', task_id)
return log.stream_response()
Testing
$ pytest -s --show-capture=no tests.py
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
Close
Hashes for Flask-DatastoreLogger-0.0.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | b374329cb940728639a395c1111bea1a4ff99c0dce19bd8ee723287cd7b0ea2a |
|
MD5 | b58d5a016932c44680d35ef28f3ab7bb |
|
BLAKE2b-256 | 1829edbae8039d2938b0c2242133bba6433f7b6c54f2f32881f01ea51efa1331 |