Extracting Analytics from Complex OpenEmbedded Builds
Talkat Embedded Linux Conference + OpenIoT Summit North America 2017 · on Thursday, 2017-02-23· at 16:30· Grand Ballroom I·
summary
Shows how the Toaster event DB collects bitbake’s ~40+ event types and stores them for long-term analysis, with SQL (sqlite default) or production MySQL/Postgres backends; demonstrates building command-line tools that query the DB and a one-day analyzer that computes overlaps. Concrete findings: 2658 tasks, 250 recipes, up to 140 concurrent tasks on 24 threads, one task overlaps 983 others (Python3 native overlaps 798); explains buffering behavior, how to register custom handlers (example client forked from naughty), and tracing an SDK file deletion via metadata events.
AI-written summary · about
chapters (24)
- 0:00Introduction
- 2:20The Problem Space (as I see it)
- 4:47Event System Features
- 5:28Overview of Available Events
- 6:04Event Clients (you are already using events!)
- 9:07Example Event Database with CI Builders
- 10:13The Event Database Instance
- 10:52Adding Build Data to the Event Database
- 11:49Existing Toaster Analytics
- 13:20The components of the event system
- 14:24The Event Class
- 15:14Event Creation
- 15:44Event Client Registration Example
- 16:55Attaching event triggers to bitbake tasks (2)
- 17:36Event Receiver Loop Example (Toaster)
- 18:22Example Custom Command Line Tool
- 19:02Minimal Event Database Python Script
- 20:16Full Feature Event Database Python Script
- 22:07Task and Recipe Build Analysis Script
- 23:50Histogram of Overlapping Task/Recipe Execution
- 25:00Custom events
- 26:03Custom Event UI (2)
- 28:54Using Events for debugging bitbake (2)
- 32:42Resources (2)
related talks
28m"What Happened in Production?! Instrumenting with OpenTelemetry"
28mArt of Debugging
30mCheap DIY Monitoring with OSS Analytics & Visualization
26mA Year of Observability Across the Toolstack: Breakthroughs, Challenges, Improveme...
41mHow to Combine Debian and Yocto/Bitbake?
32mSoftware Supply Chain with the Yocto Project
45mSimplifying Instrumentation in complex systems at scale with Open Telemetry
21mMaking Reproducible Builds Faster with Docker Bake
