awslabs / flowgger
File Size

The distribution of size of files (measured in lines of code).

Intro
  • 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...
File Size Overall
  • There are 53 files with 6,087 lines of code.
    • 0 very long files (0 lines of code)
    • 1 long files (694 lines of code)
    • 9 medium size files (2,570 lines of codeclsfd_ftr_w_mp_ins)
    • 11 small files (1,528 lines of code)
    • 32 very small files (1,295 lines of code)
0% | 11% | 42% | 25% | 21%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
rs0% | 11% | 43% | 23% | 20%
toml0% | 0% | 0% | 69% | 30%
capnp0% | 0% | 0% | 0% | 100%
ps10% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src0% | 95% | 0% | 0% | 4%
src/flowgger/output0% | 0% | 95% | 0% | 4%
src/flowgger/decoder0% | 0% | 66% | 15% | 17%
src/flowgger0% | 0% | 59% | 40% | 0%
src/flowgger/utils0% | 0% | 86% | 0% | 13%
src/flowgger/splitter0% | 0% | 53% | 0% | 46%
src/flowgger/encoder0% | 0% | 30% | 44% | 25%
src/flowgger/input0% | 0% | 0% | 60% | 39%
ROOT0% | 0% | 0% | 57% | 42%
src/flowgger/merger0% | 0% | 0% | 0% | 100%
ci0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
record_capnp.rs
in src
694 39
file_output.rs
in src/flowgger/output
473 23
tls_output.rs
in src/flowgger/output
346 7
mod.rs
in src/flowgger
340 42
rfc5424_decoder.rs
in src/flowgger/decoder
281 11
rotating_file.rs
in src/flowgger/utils
273 14
ltsv_decoder.rs
in src/flowgger/decoder
234 4
capnp_splitter.rs
in src/flowgger/splitter
213 5
gelf_encoder.rs
in src/flowgger/encoder
208 7
kafka_output.rs
in src/flowgger/output
202 5
ltsv_encoder.rs
in src/flowgger/encoder
177 3
mod.rs
in src/flowgger/input/tls
175 3
discovery.rs
in src/flowgger/input/file
167 6
redis_input.rs
in src/flowgger/input
149 3
udp_input.rs
in src/flowgger/input
134 6
flowgger.toml
in root
134 -
capnp_encoder.rs
in src/flowgger/encoder
132 2
rfc3164_decoder.rs
in src/flowgger/decoder
122 5
record.rs
in src/flowgger
117 3
config.rs
in src/flowgger
117 6
worker.rs
in src/flowgger/input/file
104 1
tls_input.rs
in src/flowgger/input/tls
86 2
gelf_decoder.rs
in src/flowgger/decoder
81 -
tcp_input.rs
in src/flowgger/input/tcp
79 2
tlsco_input.rs
in src/flowgger/input/tls
69 2
syslen_splitter.rs
in src/flowgger/splitter
63 3
tcpco_input.rs
in src/flowgger/input/tcp
62 2
rfc5424_encoder.rs
in src/flowgger/encoder
60 -
Cargo.toml
in root
60 -
stdin_input.rs
in src/flowgger/input
59 1
mod.rs
in src/flowgger/input/tcp
57 2
nul_splitter.rs
in src/flowgger/splitter
53 1
rfc3164_encoder.rs
in src/flowgger/encoder
52 -
mod.rs
in src/flowgger/encoder
47 3
line_splitter.rs
in src/flowgger/splitter
46 1
mod.rs
in src/flowgger/utils
42 -
mod.rs
in src/flowgger/decoder
39 3
mod.rs
in src/flowgger/input/file
36 1
mod.rs
in src/flowgger/input
35 -
debug_output.rs
in src/flowgger/output
33 1
mod.rs
in src/flowgger/merger
27 3
capnp
record.capnp
in root
26 -
syslen_merger.rs
in src/flowgger/merger
26 1
mod.rs
in src/flowgger/splitter
23 -
main.rs
in src
22 1
mod.rs
in src/flowgger/output
20 -
before_deploy.ps1
in ci
16 -
passthrough_encoder.rs
in src/flowgger/encoder
15 -
nul_merger.rs
in src/flowgger/merger
14 1
line_merger.rs
in src/flowgger/merger
14 1
Files With Most Units (Top 20)
File# lines# units
mod.rs
in src/flowgger
340 42
record_capnp.rs
in src
694 39
file_output.rs
in src/flowgger/output
473 23
rotating_file.rs
in src/flowgger/utils
273 14
rfc5424_decoder.rs
in src/flowgger/decoder
281 11
tls_output.rs
in src/flowgger/output
346 7
gelf_encoder.rs
in src/flowgger/encoder
208 7
udp_input.rs
in src/flowgger/input
134 6
discovery.rs
in src/flowgger/input/file
167 6
config.rs
in src/flowgger
117 6
kafka_output.rs
in src/flowgger/output
202 5
rfc3164_decoder.rs
in src/flowgger/decoder
122 5
capnp_splitter.rs
in src/flowgger/splitter
213 5
ltsv_decoder.rs
in src/flowgger/decoder
234 4
mod.rs
in src/flowgger/merger
27 3
mod.rs
in src/flowgger/input/tls
175 3
redis_input.rs
in src/flowgger/input
149 3
record.rs
in src/flowgger
117 3
mod.rs
in src/flowgger/encoder
47 3
ltsv_encoder.rs
in src/flowgger/encoder
177 3
Files With Long Lines (Top 12)

There are 12 files with lines longer than 120 characters. In total, there are 56 long lines.

File# lines# units# long lines
record_capnp.rs
in src
694 39 36
gelf_encoder.rs
in src/flowgger/encoder
208 7 4
ltsv_encoder.rs
in src/flowgger/encoder
177 3 3
mod.rs
in src/flowgger/input/tls
175 3 2
record.rs
in src/flowgger
117 3 2
tls_output.rs
in src/flowgger/output
346 7 2
rfc5424_decoder.rs
in src/flowgger/decoder
281 11 2
file_output.rs
in src/flowgger/output
473 23 1
rfc5424_encoder.rs
in src/flowgger/encoder
60 - 1
capnp_encoder.rs
in src/flowgger/encoder
132 2 1
Cargo.toml
in root
60 - 1
flowgger.toml
in root
134 - 1