File Size Overall
  • There are 27 files with 1,684 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 1 medium size files (282 lines of code)
    • 5 small files (736 lines of code)
    • 21 very small files (666 lines of code)
0% | 0% | 16% | 43% | 39%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: grouped by folders | grouped by size | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
go0% | 0% | 16% | 44% | 38%
yaml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
spectator0% | 0% | 16% | 44% | 38%
ROOT0% | 0% | 0% | 0% | 100%
Longest Files (Top 27)
File# lines# units
lowlatency_buffer.go
in spectator/writer
282 21
id.go
in spectator/meter
196 16
registry.go
in spectator
150 27
unixgram_writer.go
in spectator/writer
149 12
udp_writer.go
in spectator/writer
122 10
line_buffer.go
in spectator/writer
119 12
writer.go
in spectator/writer
83 6
config.go
in spectator
76 5
file_writer.go
in spectator/writer
45 9
memory_writer.go
in spectator/writer
45 10
gauge.go
in spectator/meter
32 7
counter.go
in spectator/meter
31 6
stderr_writer.go
in spectator/writer
30 8
stdout_writer.go
in spectator/writer
30 8
percentile_timer.go
in spectator/meter
27 4
protocol_parser.go
in spectator
26 1
age_gauge.go
in spectator/meter
26 5
common_tags.go
in spectator
24 2
logger.go
in spectator/logger
24 4
timer.go
in spectator/meter
24 4
percentile_distsummary.go
in spectator/meter
23 4
dist_summary.go
in spectator/meter
23 4
22 -
max_gauge.go
in spectator/meter
21 4
monotonic_counter.go
in spectator/meter
21 4
monotonic_counter_uint.go
in spectator/meter
21 4
noop_writer.go
in spectator/writer
12 8
Large Files That Change Often (Top 20)
To change a file, an AI coding agent (or a person) has to read it: these files are read the most for the changes in the past year (lines × changes).
File# lines≈ tokens
to read
# changes
(1y)
≈ lines edited
per change
lines read per
line changed
lowlatency_buffer.go
in spectator/writer
282 ~1.5k–5k 2 ~150 ~2
id.go
in spectator/meter
196 ~1k–3k 2 ~70 ~3
registry.go
in spectator
150 ~1k–3k 1 ~30 ~5
unixgram_writer.go
in spectator/writer
149 ~1k–3k 1 ~30 ~3
udp_writer.go
in spectator/writer
122 ~700–2k 1 ~30 ~5
line_buffer.go
in spectator/writer
119 ~700–2k 1 ~100 ~2
writer.go
in spectator/writer
83 ~500–1.5k 1 ~20 ~3
gauge.go
in spectator/meter
32 under 1k 2 ~20 ~2
counter.go
in spectator/meter
31 under 1k 2 ~20 ~2
percentile_timer.go
in spectator/meter
27 under 1k 2 ~15 ~2
age_gauge.go
in spectator/meter
26 under 1k 2 ~10 ~2
timer.go
in spectator/meter
24 under 1k 2 ~15 ~2
dist_summary.go
in spectator/meter
23 under 1k 2 ~15 ~2
percentile_distsummary.go
in spectator/meter
23 under 1k 2 ~10 ~2
file_writer.go
in spectator/writer
45 under 1k 1 ~20 ~2
memory_writer.go
in spectator/writer
45 under 1k 1 ~30 ~2
max_gauge.go
in spectator/meter
21 under 1k 2 ~20 ~1
monotonic_counter.go
in spectator/meter
21 under 1k 2 ~10 ~2
monotonic_counter_uint.go
in spectator/meter
21 under 1k 2 ~20 ~1
stderr_writer.go
in spectator/writer
30 under 1k 1 ~20 ~2

Tokens are lines × 7 to 14 (analysis.fileReadsForChanges). Lines edited per change are the file's lines added and deleted divided by its commits over the whole history. Agents read about 2,000 lines at a time: when a 17,000-line file was split into modules, the tokens an agent read for the same change fell by 83% (The Economic Benefit of Refactoring, 2026).

Files With Most Units (Top 26)
File# lines# units
registry.go
in spectator
150 27
lowlatency_buffer.go
in spectator/writer
282 21
id.go
in spectator/meter
196 16
unixgram_writer.go
in spectator/writer
149 12
line_buffer.go
in spectator/writer
119 12
memory_writer.go
in spectator/writer
45 10
udp_writer.go
in spectator/writer
122 10
file_writer.go
in spectator/writer
45 9
noop_writer.go
in spectator/writer
12 8
stderr_writer.go
in spectator/writer
30 8
stdout_writer.go
in spectator/writer
30 8
gauge.go
in spectator/meter
32 7
writer.go
in spectator/writer
83 6
counter.go
in spectator/meter
31 6
config.go
in spectator
76 5
age_gauge.go
in spectator/meter
26 5
logger.go
in spectator/logger
24 4
percentile_distsummary.go
in spectator/meter
23 4
dist_summary.go
in spectator/meter
23 4
timer.go
in spectator/meter
24 4
percentile_timer.go
in spectator/meter
27 4
max_gauge.go
in spectator/meter
21 4
monotonic_counter.go
in spectator/meter
21 4
monotonic_counter_uint.go
in spectator/meter
21 4
common_tags.go
in spectator
24 2
protocol_parser.go
in spectator
26 1
Files With Long Lines (Top 11)

There are 11 files with lines longer than 120 characters. In total, there are 17 long lines.

File# lines# units# long lines
lowlatency_buffer.go
in spectator/writer
282 21 7
registry.go
in spectator
150 27 1
unixgram_writer.go
in spectator/writer
149 12 1
line_buffer.go
in spectator/writer
119 12 1
writer.go
in spectator/writer
83 6 1
udp_writer.go
in spectator/writer
122 10 1
percentile_distsummary.go
in spectator/meter
23 4 1
dist_summary.go
in spectator/meter
23 4 1
gauge.go
in spectator/meter
32 7 1
monotonic_counter.go
in spectator/meter
21 4 1
monotonic_counter_uint.go
in spectator/meter
21 4 1
Correlations

File Size vs. Commits (all time): 27 points

spectator/meter/age_gauge.go x: 8 commits (all time) y: 26 lines of code spectator/meter/counter.go x: 11 commits (all time) y: 31 lines of code spectator/meter/dist_summary.go x: 11 commits (all time) y: 23 lines of code spectator/meter/gauge.go x: 8 commits (all time) y: 32 lines of code spectator/meter/id.go x: 11 commits (all time) y: 196 lines of code spectator/meter/max_gauge.go x: 8 commits (all time) y: 21 lines of code spectator/meter/monotonic_counter.go x: 9 commits (all time) y: 21 lines of code spectator/meter/monotonic_counter_uint.go x: 3 commits (all time) y: 21 lines of code spectator/meter/percentile_distsummary.go x: 12 commits (all time) y: 23 lines of code spectator/meter/percentile_timer.go x: 8 commits (all time) y: 27 lines of code spectator/meter/timer.go x: 8 commits (all time) y: 24 lines of code spectator/registry.go x: 36 commits (all time) y: 150 lines of code spectator/writer/file_writer.go x: 8 commits (all time) y: 45 lines of code spectator/writer/line_buffer.go x: 3 commits (all time) y: 119 lines of code spectator/writer/lowlatency_buffer.go x: 4 commits (all time) y: 282 lines of code spectator/writer/memory_writer.go x: 2 commits (all time) y: 45 lines of code spectator/writer/noop_writer.go x: 2 commits (all time) y: 12 lines of code spectator/writer/stderr_writer.go x: 2 commits (all time) y: 30 lines of code spectator/writer/udp_writer.go x: 11 commits (all time) y: 122 lines of code spectator/writer/unixgram_writer.go x: 8 commits (all time) y: 149 lines of code spectator/writer/writer.go x: 24 commits (all time) y: 83 lines of code spectator/config.go x: 16 commits (all time) y: 76 lines of code .golangci.yml x: 4 commits (all time) y: 22 lines of code spectator/common_tags.go x: 4 commits (all time) y: 24 lines of code spectator/protocol_parser.go x: 4 commits (all time) y: 26 lines of code
282.0
lines of code
  min: 12.0
  average: 62.37
  25th percentile: 23.0
  median: 30.0
  75th percentile: 83.0
  max: 282.0
0 36.0
commits (all time)
min: 2.0 | average: 8.56 | 25th percentile: 4.0 | median: 8.0 | 75th percentile: 11.0 | max: 36.0

File Size vs. Contributors (all time): 27 points

spectator/meter/age_gauge.go x: 6 contributors (all time) y: 26 lines of code spectator/meter/counter.go x: 6 contributors (all time) y: 31 lines of code spectator/meter/dist_summary.go x: 6 contributors (all time) y: 23 lines of code spectator/meter/gauge.go x: 4 contributors (all time) y: 32 lines of code spectator/meter/id.go x: 6 contributors (all time) y: 196 lines of code spectator/meter/max_gauge.go x: 5 contributors (all time) y: 21 lines of code spectator/meter/monotonic_counter.go x: 6 contributors (all time) y: 21 lines of code spectator/meter/monotonic_counter_uint.go x: 3 contributors (all time) y: 21 lines of code spectator/meter/percentile_timer.go x: 5 contributors (all time) y: 27 lines of code spectator/meter/timer.go x: 5 contributors (all time) y: 24 lines of code spectator/registry.go x: 4 contributors (all time) y: 150 lines of code spectator/writer/file_writer.go x: 4 contributors (all time) y: 45 lines of code spectator/writer/line_buffer.go x: 2 contributors (all time) y: 119 lines of code spectator/writer/lowlatency_buffer.go x: 4 contributors (all time) y: 282 lines of code spectator/writer/memory_writer.go x: 2 contributors (all time) y: 45 lines of code spectator/writer/noop_writer.go x: 2 contributors (all time) y: 12 lines of code spectator/writer/stderr_writer.go x: 2 contributors (all time) y: 30 lines of code spectator/writer/udp_writer.go x: 4 contributors (all time) y: 122 lines of code spectator/writer/unixgram_writer.go x: 4 contributors (all time) y: 149 lines of code spectator/writer/writer.go x: 6 contributors (all time) y: 83 lines of code spectator/config.go x: 3 contributors (all time) y: 76 lines of code .golangci.yml x: 2 contributors (all time) y: 22 lines of code spectator/common_tags.go x: 3 contributors (all time) y: 24 lines of code spectator/protocol_parser.go x: 2 contributors (all time) y: 26 lines of code spectator/logger/logger.go x: 2 contributors (all time) y: 24 lines of code
282.0
lines of code
  min: 12.0
  average: 62.37
  25th percentile: 23.0
  median: 30.0
  75th percentile: 83.0
  max: 282.0
0 6.0
contributors (all time)
min: 2.0 | average: 3.93 | 25th percentile: 2.0 | median: 4.0 | 75th percentile: 6.0 | max: 6.0

File Size vs. Commits (30 days): 0 points

No data for "commits (30d)" vs. "lines of code".

File Size vs. Contributors (30 days): 0 points

No data for "contributors (30d)" vs. "lines of code".


File Size vs. Commits (90 days): 22 points

spectator/meter/age_gauge.go x: 1 commits (90d) y: 26 lines of code spectator/meter/counter.go x: 1 commits (90d) y: 31 lines of code spectator/meter/dist_summary.go x: 1 commits (90d) y: 23 lines of code spectator/meter/gauge.go x: 1 commits (90d) y: 32 lines of code spectator/meter/id.go x: 1 commits (90d) y: 196 lines of code spectator/meter/max_gauge.go x: 1 commits (90d) y: 21 lines of code spectator/meter/percentile_timer.go x: 1 commits (90d) y: 27 lines of code spectator/meter/timer.go x: 1 commits (90d) y: 24 lines of code spectator/registry.go x: 1 commits (90d) y: 150 lines of code spectator/writer/file_writer.go x: 1 commits (90d) y: 45 lines of code spectator/writer/line_buffer.go x: 1 commits (90d) y: 119 lines of code spectator/writer/lowlatency_buffer.go x: 1 commits (90d) y: 282 lines of code spectator/writer/noop_writer.go x: 1 commits (90d) y: 12 lines of code spectator/writer/udp_writer.go x: 1 commits (90d) y: 122 lines of code spectator/writer/unixgram_writer.go x: 1 commits (90d) y: 149 lines of code spectator/writer/writer.go x: 1 commits (90d) y: 83 lines of code
282.0
lines of code
  min: 12.0
  average: 68.73
  25th percentile: 23.0
  median: 30.5
  75th percentile: 119.75
  max: 282.0
0 1.0
commits (90d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

File Size vs. Contributors (90 days): 22 points

spectator/meter/age_gauge.go x: 1 contributors (90d) y: 26 lines of code spectator/meter/counter.go x: 1 contributors (90d) y: 31 lines of code spectator/meter/dist_summary.go x: 1 contributors (90d) y: 23 lines of code spectator/meter/gauge.go x: 1 contributors (90d) y: 32 lines of code spectator/meter/id.go x: 1 contributors (90d) y: 196 lines of code spectator/meter/max_gauge.go x: 1 contributors (90d) y: 21 lines of code spectator/meter/percentile_timer.go x: 1 contributors (90d) y: 27 lines of code spectator/meter/timer.go x: 1 contributors (90d) y: 24 lines of code spectator/registry.go x: 1 contributors (90d) y: 150 lines of code spectator/writer/file_writer.go x: 1 contributors (90d) y: 45 lines of code spectator/writer/line_buffer.go x: 1 contributors (90d) y: 119 lines of code spectator/writer/lowlatency_buffer.go x: 1 contributors (90d) y: 282 lines of code spectator/writer/noop_writer.go x: 1 contributors (90d) y: 12 lines of code spectator/writer/udp_writer.go x: 1 contributors (90d) y: 122 lines of code spectator/writer/unixgram_writer.go x: 1 contributors (90d) y: 149 lines of code spectator/writer/writer.go x: 1 contributors (90d) y: 83 lines of code
282.0
lines of code
  min: 12.0
  average: 68.73
  25th percentile: 23.0
  median: 30.5
  75th percentile: 119.75
  max: 282.0
0 1.0
contributors (90d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0
About This Analysis
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...