Add support for a second function to log directly to bigquery.
parent
23a0d041ba
commit
b0092be5d6
@ -0,0 +1,25 @@
|
|||||||
|
import json
|
||||||
|
import os
|
||||||
|
|
||||||
|
from google.cloud import bigquery
|
||||||
|
|
||||||
|
client = bigquery.Client()
|
||||||
|
|
||||||
|
|
||||||
|
def push_to_pubsub(request_params):
|
||||||
|
errors = client.insert_rows_json(os.environ["BQ_TABLE"], [request_params])
|
||||||
|
if errors != []:
|
||||||
|
raise Exception("Encountered errors while inserting rows: {}".format(errors))
|
||||||
|
|
||||||
|
|
||||||
|
def main(request):
|
||||||
|
request_json = request.get_json(silent=True)
|
||||||
|
request_args = request.args
|
||||||
|
|
||||||
|
if request_json:
|
||||||
|
push_to_pubsub(request_json)
|
||||||
|
elif request_args:
|
||||||
|
push_to_pubsub(request_args)
|
||||||
|
else:
|
||||||
|
return ("No data provided.", 400)
|
||||||
|
return {"status": "ok", "source": "cf_to_bq"}
|
@ -0,0 +1,2 @@
|
|||||||
|
Flask==1.1.2
|
||||||
|
google-cloud-bigquery==2.22.0
|
Loading…
Reference in New Issue