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
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file Flask-DatastoreLogger-0.0.3.tar.gz.
File metadata
- Download URL: Flask-DatastoreLogger-0.0.3.tar.gz
- Upload date:
- Size: 3.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b374329cb940728639a395c1111bea1a4ff99c0dce19bd8ee723287cd7b0ea2a
|
|
| MD5 |
b58d5a016932c44680d35ef28f3ab7bb
|
|
| BLAKE2b-256 |
1829edbae8039d2938b0c2242133bba6433f7b6c54f2f32881f01ea51efa1331
|