Dynamic Entity Tracing Configuration for Manageable Debug Logs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Tracing in software development generates large, unmanageable log files that can introduce errors and require time-consuming filtering, particularly in high-performance network devices where only specific entities are of interest.

Innovation Solution

Implement selective tracing using dynamic configuration to enable tracing only for specific entities of interest, with granular control over tracing activation and deactivation through global tracing configuration and scope-scoped objects.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If comprehensive tracing is implemented to monitor all entities during code execution, then debugging information completeness is improved, but trace file size grows to unmanageable levels

Engineering Contradiction:
Improvedebugging information completenessVSAvoidtrace file size
Core Design Contradiction:
Loss of informationVSQuantity of substance

Solution Approach 1:

The patent segments the tracing function by introducing entity-specific tracing configuration. Instead of uniformly tracing all entities, the system divides tracing into selective segments based on entity identifiers. Each entity can be independently configured for tracing, allowing the system to trace only relevant entities while ignoring others, thus maintaining debugging information quality without generating unmanageable log volumes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by making tracing configuration entity-specific rather than global. The tracing system assigns different tracing properties to different entities based on their identifiers. This allows critical entities to be traced in detail while non-critical entities are excluded, ensuring that tracing resources are concentrated on areas of interest and trace file size is controlled.

Inventive Principle:
Principle #3Local quality

2Ease of operation

If tracing is enabled for all entities, then code execution monitoring capability is improved, but system performance deteriorates due to processing overhead

Engineering Contradiction:
Improvecode execution monitoring capabilityVSAvoidsystem performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments the monitoring capability by entity identifier, allowing the system to evaluate and trace only selected entities. The tracing decision is made at the entity level rather than applying monitoring to all entities uniformly. This segmentation reduces the total number of trace evaluations and log operations, thereby maintaining monitoring capability for critical entities while reducing overall system overhead.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements partial action by enabling tracing for only a subset of entities that are deemed relevant based on their identifiers. Instead of applying tracing excessively to all entities, the system selectively applies tracing where needed. This partial application of tracing maintains sufficient monitoring capability for debugging while avoiding the performance penalty of universal tracing.

Inventive Principle:
Principle #16Partial or excessive action

3Loss of information

If trace points are inserted throughout the code to capture all events, then tracing coverage is improved, but device complexity increases

Engineering Contradiction:
Improvetracing coverageVSAvoidcode instrumentation complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent extracts the tracing decision logic from the business code by introducing a separate entity identifier-based filtering mechanism. The trace points remain in the code, but their activation is extracted and controlled by an external configuration system that evaluates entity identifiers. This separation allows comprehensive trace point placement for potential coverage while using the extraction principle to control actual tracing activation, thereby maintaining coverage capability without proportionally increasing active complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

4Ease of operation

If trace files are processed frequently to manage size, then trace file manageability is improved, but tracing availability deteriorates during processing

Engineering Contradiction:
Improvetrace file manageabilityVSAvoidtracing availability
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent applies the disposable principle by using lightweight, entity-specific trace filtering that operates in-memory without requiring heavy file processing operations. Instead of frequently processing and rotating large trace files, the system uses efficient in-memory filtering based on entity identifiers to prevent unnecessary trace data from being written in the first place. This approach makes trace management cheaper and faster, reducing the need for frequent file operations and maintaining tracing availability.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentUS12572447B2Selective tracing of entities during code execution using dynamic tracing configuration
Publication Date: 2026.03.10 ARISTA NETWORKS INC
  • US12572447B2 patent drawing
  • US12572447B2 patent drawing
  • US12572447B2 patent drawing

AI summary

Selective tracing using dynamic tracing configuration is presented. According to various embodiments, tracing configuration data specifies entities to be traced through execution of tracing code in code blocks. When a code block is executed to process a particular entity it can be determined if tracing is enabled for that entity using this tracing configuration data. Based on that determination, a global tracing configuration may be configured such that the tracing code included in the code block may, or may not, be executed when processing that entity.