aws / telegraf
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 667 files with 137,100 lines of code.
    • 7 very long files (39,647 lines of code)
    • 24 long files (15,279 lines of code)
    • 151 medium size files (43,818 lines of codeclsfd_ftr_w_mp_ins)
    • 168 small files (24,848 lines of code)
    • 317 very small files (13,508 lines of code)
28% | 11% | 31% | 18% | 9%
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
go29% | 10% | 31% | 18% | 9%
py0% | 100% | 0% | 0% | 0%
rl0% | 0% | 100% | 0% | 0%
proto0% | 0% | 86% | 0% | 13%
c0% | 0% | 0% | 100% | 0%
h0% | 0% | 0% | 0% | 100%
toml0% | 0% | 0% | 0% | 100%
yaml0% | 0% | 0% | 0% | 100%
yml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
plugins34% | 8% | 32% | 17% | 7%
patches6% | 18% | 35% | 21% | 18%
scripts0% | 100% | 0% | 0% | 0%
testutil0% | 65% | 0% | 17% | 16%
agent0% | 63% | 0% | 34% | 1%
config0% | 83% | 0% | 0% | 16%
models0% | 0% | 58% | 23% | 17%
metric0% | 0% | 61% | 26% | 11%
cmd0% | 0% | 73% | 24% | 2%
internal0% | 0% | 18% | 31% | 49%
selfstat0% | 0% | 0% | 62% | 37%
logger0% | 0% | 0% | 75% | 24%
ROOT0% | 0% | 0% | 0% | 100%
filter0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
machine.go
in plugins/parsers/influx
28562 18
github_webhooks_mock_json.go
in plugins/inputs/webhooks/github
3532 21
sqlserver.go
in plugins/inputs/sqlserver
2818 7
mysql.go
in plugins/inputs/mysql
1502 31
endpoint.go
in plugins/inputs/vsphere
1099 33
mongostat.go
in plugins/inputs/mongodb
1082 9
process_linux.go
in patches/gopsutil/process
1052 85
oc.pb.go
in plugins/inputs/jti_openconfig_telemetry/oc
989 157
snmp.go
in plugins/inputs/snmp
808 24
process_windows.go
in patches/gopsutil/process
790 91
docker.go
in plugins/inputs/docker
784 18
build.py
in scripts
743 27
statsd.go
in plugins/inputs/statsd
736 18
net_linux.go
in patches/gopsutil/net
715 41
rabbitmq.go
in plugins/inputs/rabbitmq
654 16
github_webhooks_models.go
in plugins/inputs/webhooks/github
653 21
net_windows.go
in patches/gopsutil/net
646 40
accumulator.go
in testutil
616 61
snmp_legacy.go
in plugins/inputs/snmp_legacy
608 11
agent.go
in agent
601 23
modbus.go
in plugins/inputs/modbus
593 30
config.go
in config
565 17
stackdriver.go
in plugins/inputs/stackdriver
564 20
elasticsearch.go
in plugins/inputs/elasticsearch
541 17
mesos.go
in plugins/inputs/mesos
536 14
azure_monitor.go
in plugins/outputs/azure_monitor
534 19
process_darwin.go
in patches/gopsutil/process
533 73
nginx_plus.go
in plugins/inputs/nginx_plus
530 17
cloudwatch.go
in plugins/inputs/cloudwatch
529 18
binary.go
in patches/gopsutil/internal/common
506 42
docker_testdata.go
in plugins/inputs/docker
505 4
nginx_plus_api_metrics.go
in plugins/inputs/nginx_plus_api
488 15
ceph.go
in plugins/inputs/ceph
467 19
amqp_consumer.go
in plugins/inputs/amqp_consumer
465 16
lustre2.go
in plugins/inputs/lustre2
459 5
host_linux.go
in patches/gopsutil/host
457 23
rl
machine.go.rl
in plugins/parsers/influx
453 -
process_openbsd.go
in patches/gopsutil/process
450 74
disk_linux.go
in patches/gopsutil/disk
448 9
cisco_telemetry_mdt.go
in plugins/inputs/cisco_telemetry_mdt
444 15
ec2tagger.go
in plugins/processors/ec2tagger
435 15
process_freebsd.go
in patches/gopsutil/process
428 72
cisco_telemetry_gnmi.go
in plugins/inputs/cisco_telemetry_gnmi
428 12
packetdecoder.go
in plugins/inputs/sflow
425 17
solr.go
in plugins/inputs/solr
423 21
parser.go
in plugins/parsers/grok
414 8
collection.go
in plugins/serializers/prometheus
409 11
http.go
in plugins/outputs/influxdb
404 16
converter.go
in plugins/processors/converter
403 14
burrow.go
in plugins/inputs/burrow
399 16
Files With Most Units (Top 20)
File# lines# units
oc.pb.go
in plugins/inputs/jti_openconfig_telemetry/oc
989 157
process_windows.go
in patches/gopsutil/process
790 91
process_linux.go
in patches/gopsutil/process
1052 85
process_fallback.go
in patches/gopsutil/process
278 82
process_openbsd.go
in patches/gopsutil/process
450 74
process_darwin.go
in patches/gopsutil/process
533 73
process_freebsd.go
in patches/gopsutil/process
428 72
accumulator.go
in testutil
616 61
binary.go
in patches/gopsutil/internal/common
506 42
net_linux.go
in patches/gopsutil/net
715 41
net_windows.go
in patches/gopsutil/net
646 40
endpoint.go
in plugins/inputs/vsphere
1099 33
mysql.go
in plugins/inputs/mysql
1502 31
metric.go
in metric
332 30
modbus.go
in plugins/inputs/modbus
593 30
net_aix.go
in patches/gopsutil/net
336 28
common.go
in patches/gopsutil/internal/common
275 27
build.py
in scripts
743 27
snmp.go
in plugins/inputs/snmp
808 24
host_linux.go
in patches/gopsutil/host
457 23
Files With Long Lines (Top 20)

There are 113 files with lines longer than 120 characters. In total, there are 374 long lines.

File# lines# units# long lines
sqlserver.go
in plugins/inputs/sqlserver
2818 7 60
github_webhooks_mock_json.go
in plugins/inputs/webhooks/github
3532 21 36
oc.pb.go
in plugins/inputs/jti_openconfig_telemetry/oc
989 157 30
mongostat.go
in plugins/inputs/mongodb
1082 9 29
machine.go
in plugins/parsers/influx
28562 18 9
modbus.go
in plugins/inputs/modbus
593 30 7
host_windows.go
in patches/gopsutil/host
288 20 6
net_linux.go
in patches/gopsutil/net
715 41 6
net_windows.go
in patches/gopsutil/net
646 40 6
endpoint.go
in plugins/inputs/vsphere
1099 33 6
cpu_solaris.go
in patches/gopsutil/cpu
247 9 5
accumulator.go
in testutil
616 61 5
azure_monitor.go
in plugins/outputs/azure_monitor
534 19 5
build.py
in scripts
743 27 5
ec2tagger.go
in plugins/processors/ec2tagger
435 15 4
pdh.go
in plugins/inputs/win_perf_counters
259 14 4
smart.go
in plugins/inputs/smart
363 14 4
docker_testdata.go
in plugins/inputs/docker
505 4 4
elasticsearch.go
in plugins/outputs/elasticsearch
346 10 4
disk_windows.go
in patches/gopsutil/disk
170 6 3