Getting Started¶
On this page we will cover how to get started with DEEP using the local docker compose stack.
Prerequisites¶
To follow this guide you will need to install:
Guide¶
To start deep using the local docker stack follow these steps:
- Checkout the repository
- Open the example directory
- Start the services
At this point docker will start the required containers. These will include:
- Deep - running in single tenant and single binary mode
- Prometheus - collecting metrics from deep
- Grafana - with datasource's connecting to Deep and Prometheus (this is currently a custom-built image with the deep plugins installed)
- Test App - A simple test app running python that can be used as the target to debug
Using Deep¶
Now that we have deep running and a test app connected we want to see what we can do.
- Open Grafana to the explore page.
- Ensure that the Deep data source is selected. (Should be the default datasource)
- Now open the query input to create a tracepoint:
- Here we can enter the file and line number to collect data. In this example we want to use:
- File Path:
simple_test.py
- Line Number:
31
- File Path:
Once set click 'Create Tracepoint' to create the tracepoint. 7. If created successfully you will see the result in the query result below:
- This new config will be sent to the connected client and will result in a Snapshot being created. To see the Snapshots click on the lint in the column 'Tracepoint ID'. This will create a split view and show the available Snapshots.
Note: It can take up to a minute before the Snapshot will be available in the results.
- From this you can now select a snapshot from the list to view the full details.
Now you know how to create tracepoints and view the data you can play with creating other tracepoints, or changing the settings to collect watches, or change the fire count.
The source code for the test app is open source intergral/python-deep-client/examples
Clean up¶
To clean up this example you simple need to remove the compose stack.
You will also might want to remove the stored data