elastic / apm-agent-ruby
Components

An overview of source code logical components.

Intro

Logical decomposition is a representation of the organization of the main source code, where every and each file is put in exactly one logical component.

Logical Decompositions Overview

Analyzed system has 1 logical decomposition:

Logical Decomposition #1: PRIMARY

The decompositions is based on the folder structure at level 1 (relative to the source code root).

Bubble Chart | Tree Map
Component Sizes (Lines of Code)
The "primary" logical decomposition has 5 components.
  • 278 files, 18,499 LOC (100.0% vs. main code).
  • "spec" is biggest, containing 56.87% of LOC.
  • "ROOT" is smallest, containing 0.23% of LOC.


spec10521 LOC (56%) 132 files
lib7650 LOC (41%) 134 files
bench182 LOC (<1%) 6 files
features104 LOC (<1%) 4 files
ROOT42 LOC (<1%) 2 files
Component Commits
Components ordered by number of commits
Total Commits per Component
All commits, some commits may include files from multiple components.
lib597 commits (53%)
spec438 commits (38%)
ROOT23 commits (2%)
bench16 commits (1%)
features3 commits (<1%)
Yearly File Updates Trend per Components
The number of file changes in commits
animated commit history: all time cumulative | 12 months window
2025 2024 2023 2022 2021 2020 2019 2018 2017
spec
8
5
16
29
98
415
343
402
132
lib
4
6
19
31
125
369
409
555
171
ROOT
3
3
1
1
6
9
features
4
1
bench
1
1
1
10
20


Dependencies between components in same commits (past 180 days)
The number on the lines shows the number of shared commits.
See detailed temporal dependencies report...

G spec spec spec--spec 2 lib lib spec--lib 2 lib--lib 1


2025-05-13 19:42