Container Process Tracing With eBPF for Resource Attribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing container services lack visibility into which individual processes within containers are driving computing resource consumption, leading to inefficient resource utilization and reduced application performance.

Innovation Solution

Deploy software agents with eBPF programs in virtual machines to collect stack traces, convert them into visualizations like flame graphs, and provide users with process-level utilization metrics.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If container services monitor only overall container-level resource usage, then system complexity is low, but visibility into individual process resource consumption is insufficient

Engineering Contradiction:
Improvevisibility into process-level resource consumptionVSAvoidmonitoring system complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary component (profiler/agent) that sits between the container runtime and the monitoring system. This intermediary collects detailed process-level stack trace information and transforms it into usable metrics, providing process-level visibility without requiring direct modification of the container runtime or core monitoring infrastructure.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces traditional mechanical sampling methods with eBPF-based programmatic tracing. Instead of using complex sampling algorithms or intrusive agents that require kernel modifications, the system uses eBPF programs to efficiently capture stack traces and resource consumption data at the kernel level, substituting mechanical sampling with intelligent programmatic filtering and measurement.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If container services allocate more computing resources to handle increased application usage, then application performance is maintained, but resource utilization efficiency decreases

Engineering Contradiction:
Improveapplication performanceVSAvoidcomputing resource waste
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements a feedback mechanism where resource consumption metrics are continuously collected, analyzed, and used to identify optimization opportunities. The system provides feedback to users about which specific processes are consuming excessive resources, enabling them to adjust their applications to reduce resource usage while maintaining performance levels.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent changes the monitoring parameter from aggregate container-level metrics to process-level stack trace metrics. This parameter change enables identification of specific processes that are driving resource consumption, allowing for targeted optimization rather than blanket resource allocation increases.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If container services implement detailed process-level monitoring, then resource optimization opportunities are identified, but measurement and detection difficulty increases

Engineering Contradiction:
Improveprocess-level resource utilization metricsVSAvoidprocess identification complexity
Core Design Contradiction:
Measurement precisionVSDifficulty of detecting and measuring

Solution Approach 1:

The patent extracts only the essential information needed for resource attribution from the complex stack trace data. Instead of capturing and analyzing entire stack traces in detail, the system extracts key identifiers (process IDs, container IDs, process names) and aggregates resource consumption by these identifiers, simplifying the measurement process while maintaining process-level precision.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12524276B1Tracing processes in distributed container systems
Publication Date: 2026.01.13 AMAZON TECH INC
  • US12524276B1 patent drawing
  • US12524276B1 patent drawing
  • US12524276B1 patent drawing

AI summary

Techniques implemented by container services to provide users with utilization metrics indicating which processes running inside containers of distributed container systems are driving computing resource consumption. The container service may deploy agents in VMs alongside the containers that are supporting applications, and the agents may include profilers that inject eBPF programs into the kernels of each VM in which containers are running. The eBPF programs collect stack traces from the kernels that represent which processes were being executed when the stack traces were sampled. The profilers may use the stack traces to determine resource utilization for each process, and group the stack trace results based on the container in which the processes are executing. The utilization metrics may be converted into easily digestible visualizations and provided to a user to determine which processes are driving utilization in the containers, which in turn helps the users improve their application code.