Observability: How I Monitor My Strava Activities
How I applied a concept used in organizations to a personal project
In modern application development, observability refers to collecting and analyzing data—logs, metrics, and traces—from a wide variety of sources to provide detailed information about the behavior of applications running in their environments.
This data can be used for monitoring, identifying trends, and alerting managers if something is outside of expected operation. Technology professionals widely use this tool, and it has become increasingly important as companies increase the number of changes or releases made daily and enhance their platforms with new technologies.
The reason I'm writing about this is a Grafana plugin with Strava.
Below I'll talk a bit about how I configured this plugin to get a complete view of my activities logged in Apple Health and Strava.
Strava and Grafana Connection: Defining Data Sources and Goals
Disclaimer: This year, I ended up spending more time traveling, especially in Vancouver (Canada) and Austin (Texas). With the trips, I gained a few pounds despite trying to maintain an active lifestyle. This motivated me to take my health a little more seriously, research the subject, and start monitoring my time dedicated to physical exercise.
I needed to increase my hours in motion (outside the office chair) to achieve a real caloric deficit that could help me regain my previous weight.
I set a goal and measured it very practically. I tried my best to monitor the main activities to the point of establishing some goals, such as the number of activities done in the week and the amount of weight to be lost.
In an organic and non-aggressive way, I also set a goal to lower my consumption of sugar (something that, until then, I wasn't paying much attention to) and alcohol.
After a few weeks, I noticed that this process was not as exhausting as I imagined it would be and greatly improved how I dealt with my daily routine.
The most unexpected thing was the reflection of this on my mental health. My anxiety decreased a lot, and I saw myself stronger to adopt other routines and personal goals. I believe there is a correlation between well-being and increased heartbeats per minute, perhaps the release of endorphins that make us feel better and less worried.
Returning to the issue of observability, I realized how this concept applied both in the professional sphere, such as monitoring agents and ASN logs, and in the personal sphere. This perception led me to track a series of body metrics, from heart rate, number of steps, elevation, and the amount of water consumed, among various monitored fields.
To monitor this data I needed some devices and also some specific applications like Strava. Strava would be a kind of fact table fed by all this third-party data or integrated with Apple Health.
List of Devices
Apple Watch
Bioimpedance Scale
List of Applications
Strava
All Trails for trails done on trips
Apple Fitness
Hevy for strength and resistance training
Fitdays for monitoring body indices over time
Apple Health
Finally, all data would have to be integrated with Strava, which would be the data source used for the Grafana dashboards. It is also worth mentioning that I am using the paid version of All Trails and Hevy. I also paid for a quarter for the We Rise app from Senada to get some meal and exercise ideas (something I won't renew so I didn't put it on the list).
Results
Having been without recording my activities for a while, I couldn't capture the entire year. Still, here are some graphs that I found interesting and should help plan my activity calendar for 2025:
Activities by Location
The activity map is very cool because it gives an overview of the places where activities were practiced. If you like to travel, this can be a good motivator to exercise at least once while traveling to add one more marker to the map.
Groupings by Month
Groupings by month are interesting to identify trends. For example, the months with the greatest distance for me are correlated with months in which I traveled and was away. As I went a few months without recording, the view of the last year ended up being incomplete.
Detailed View
The plugin also brings some ready-made reports such as the Athlete's Dashboard, which provides a more detailed overview of all activities performed:
How to get access to Strava + Grafana integration
To get access to the same reports, simply have access to a Grafana Cloud account and install the Strava plugin. The connection can be made via a web interface with the Strava app API. Access here.