Star us on GitHub
Star
Menu

Using highlight.io with Python on Google Cloud Functions

Learn how to set up highlight.io on Google Cloud Functions.
1
Setup your frontend Highlight snippet with tracingOrigins.

Make sure that you followed the fullstack mapping guide.

H.init("<YOUR_PROJECT_ID>", { tracingOrigins: ['localhost', 'example.myapp.com/backend'], networkRecording: { enabled: true, recordHeadersAndBody: true, }, });
Copy
2
Install the highlight-io python package.

Download the package from pypi and save it to your requirements. If you use a zip or s3 file upload to publish your function, you will want to make sure highlight-io is part of the build.

poetry add highlight-io # or with pip pip install highlight-io
Copy
3
Initialize the Highlight SDK.

Setup the SDK. Add the @observe_handler decorator to your functions.

import logging import random from datetime import datetime import functions_framework import highlight_io from highlight_io.integrations.gcp import observe_handler H = highlight_io.H("1", record_logs=True) @observe_handler @functions_framework.http def hello_http(request): return "Hello {}!".format(name)
Copy
4
Verify your installation.

Check that your installation is valid by throwing an error. Add an operation that raises an exception to your function. Setup an HTTP trigger and visit your function on the internet. You should see a DivideByZero error in the Highlight errors page within a few moments.

import logging import random from datetime import datetime import functions_framework import highlight_io from highlight_io.integrations.gcp import observe_handler H = highlight_io.H("1", record_logs=True) @observe_handler @functions_framework.http def hello_http(request): return f"This might be a bad idea: {5/0}"
Copy
5
Verify your backend logs are being recorded.

With the Python SDK, your logs are reported automatically from the builtin logging methods (as long as record_logs=True is provided to the highlight_io.H constructor). Visit the highlight logs portal and check that backend logs are coming in.