aws / amazon-ecs-agent
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 500 files with 51,153 lines of code.
    • 6 very long files (13,500 lines of code)
    • 7 long files (4,622 lines of code)
    • 39 medium size files (11,791 lines of codeclsfd_ftr_w_mp_ins)
    • 58 small files (7,719 lines of code)
    • 390 very small files (13,521 lines of code)
26% | 9% | 23% | 15% | 26%
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
go26% | 9% | 23% | 14% | 25%
ps10% | 0% | 0% | 42% | 57%
yml0% | 0% | 0% | 0% | 100%
c0% | 0% | 0% | 0% | 100%
yaml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
agent/ecs_client98% | 0% | 0% | 0% | 1%
agent/engine43% | 9% | 25% | 12% | 10%
agent/api32% | 21% | 18% | 6% | 20%
agent/dockerclient40% | 0% | 28% | 11% | 19%
agent/acs38% | 0% | 37% | 16% | 7%
agent/asm0% | 83% | 0% | 0% | 16%
agent/tcs0% | 53% | 25% | 13% | 7%
agent/app0% | 30% | 25% | 23% | 20%
agent/stats0% | 33% | 21% | 27% | 17%
agent/taskresource0% | 0% | 69% | 7% | 23%
agent/config0% | 0% | 52% | 12% | 34%
agent/ec20% | 0% | 51% | 21% | 26%
agent/wsclient0% | 0% | 41% | 17% | 40%
agent/eventhandler0% | 0% | 45% | 31% | 22%
agent/handlers0% | 0% | 11% | 38% | 49%
agent/logger0% | 0% | 26% | 0% | 73%
agent/eni0% | 0% | 0% | 43% | 56%
agent/containermetadata0% | 0% | 0% | 76% | 23%
agent/ecscni0% | 0% | 0% | 35% | 64%
agent/utils0% | 0% | 0% | 24% | 75%
agent/statemanager0% | 0% | 0% | 71% | 28%
agent/gogenerate0% | 0% | 0% | 100% | 0%
agent/ecr0% | 0% | 0% | 37% | 62%
scripts0% | 0% | 0% | 55% | 44%
misc/windows-deploy0% | 0% | 0% | 42% | 57%
agent/gpu0% | 0% | 0% | 55% | 44%
agent/data0% | 0% | 0% | 0% | 100%
agent/metrics0% | 0% | 0% | 0% | 100%
agent/doctor0% | 0% | 0% | 0% | 100%
agent/credentials0% | 0% | 0% | 0% | 100%
agent/s30% | 0% | 0% | 0% | 100%
agent/ssm0% | 0% | 0% | 0% | 100%
agent/httpclient0% | 0% | 0% | 0% | 100%
agent/async0% | 0% | 0% | 0% | 100%
agent/fsx0% | 0% | 0% | 0% | 100%
agent/sighandlers0% | 0% | 0% | 0% | 100%
agent/eventstream0% | 0% | 0% | 0% | 100%
misc/netkitten0% | 0% | 0% | 0% | 100%
misc/exec-command-agent-test0% | 0% | 0% | 0% | 100%
misc/gremlin0% | 0% | 0% | 0% | 100%
agent/version0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
misc/pause-container0% | 0% | 0% | 0% | 100%
agent0% | 0% | 0% | 0% | 100%
misc/volumes-test0% | 0% | 0% | 0% | 100%
misc/container-health-windows0% | 0% | 0% | 0% | 100%
misc/stats-windows0% | 0% | 0% | 0% | 100%
agent/statechange0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
api.go
in agent/ecs_client/model/ecs
6737 1159
task.go
in agent/api/task
1902 128
docker_task_engine.go
in agent/engine
1355 56
docker_client.go
in agent/dockerclient/dockerapi
1270 63
task_manager.go
in agent/engine
1121 41
api.go
in agent/acs/model/ecsacs
1115 192
secretsmanagerapi_mocks.go
in agent/asm/mocks
795 124
container.go
in agent/api/container
771 91
api.go
in agent/tcs/model/ecstcs
701 107
agent.go
in agent/app
699 29
engine.go
in agent/stats
588 29
docker_image_manager.go
in agent/engine
556 40
client.go
in agent/api/ecsclient
512 26
credentialspec_windows.go
in agent/taskresource/credentialspec
486 41
fsxwindowsfileserver_windows.go
in agent/taskresource/fsxwindowsfileserver
456 39
config.go
in agent/config
438 13
envfile.go
in agent/taskresource/envFiles
432 36
docker_task_engine_state.go
in agent/engine/dockerstate
401 38
firelens_unix.go
in agent/taskresource/firelens
394 44
queue.go
in agent/stats
370 29
asmsecret.go
in agent/taskresource/asmsecret
362 38
acs_handler.go
in agent/acs/handler
353 18
ssmsecret.go
in agent/taskresource/ssmsecret
338 37
graph.go
in agent/engine/dependencygraph
335 19
dockervolume.go
in agent/taskresource/volume
334 37
agent_capability.go
in agent/app
334 13
ec2_mocks.go
in agent/ec2/mocks
333 56
dockerapi_mocks.go
in agent/dockerclient/dockerapi/mocks
331 60
client.go
in agent/tcs/client
330 18
sdkclient_mocks.go
in agent/dockerclient/sdkclient/mocks
310 54
client.go
in agent/wsclient
303 15
parse.go
in agent/config
291 22
asmauth.go
in agent/taskresource/asmauth
290 34
dockerstate_mocks.go
in agent/engine/dockerstate/mocks
286 56
task_handler.go
in agent/eventhandler
283 14
cgroup.go
in agent/taskresource/cgroup
281 32
payload_handler.go
in agent/acs/handler
277 15
taskresource_mocks.go
in agent/taskresource/mocks
267 52
response.go
in agent/handlers/v2
263 6
errors.go
in agent/dockerclient/dockerapi
248 53
eni.go
in agent/api/eni
245 15
log.go
in agent/logger
244 11
agent_windows.go
in agent/app
242 20
api_mocks.go
in agent/api/mocks
225 38
task_manifest_handler.go
in agent/acs/handler
225 16
engine_mocks.go
in agent/engine/mocks
222 42
statechange.go
in agent/api
220 15
task_linux.go
in agent/api/task
216 17
updater.go
in agent/acs/update_handler
212 5
types.go
in agent/taskresource/types
210 11
Files With Most Units (Top 20)
File# lines# units
api.go
in agent/ecs_client/model/ecs
6737 1159
api.go
in agent/acs/model/ecsacs
1115 192
task.go
in agent/api/task
1902 128
secretsmanagerapi_mocks.go
in agent/asm/mocks
795 124
api.go
in agent/tcs/model/ecstcs
701 107
container.go
in agent/api/container
771 91
docker_client.go
in agent/dockerclient/dockerapi
1270 63
dockerapi_mocks.go
in agent/dockerclient/dockerapi/mocks
331 60
docker_task_engine.go
in agent/engine
1355 56
dockerstate_mocks.go
in agent/engine/dockerstate/mocks
286 56
ec2_mocks.go
in agent/ec2/mocks
333 56
sdkclient_mocks.go
in agent/dockerclient/sdkclient/mocks
310 54
errors.go
in agent/dockerclient/dockerapi
248 53
taskresource_mocks.go
in agent/taskresource/mocks
267 52
firelens_unix.go
in agent/taskresource/firelens
394 44
engine_mocks.go
in agent/engine/mocks
222 42
credentialspec_windows.go
in agent/taskresource/credentialspec
486 41
task_manager.go
in agent/engine
1121 41
docker_image_manager.go
in agent/engine
556 40
fsxwindowsfileserver_windows.go
in agent/taskresource/fsxwindowsfileserver
456 39
Files With Long Lines (Top 20)

There are 188 files with lines longer than 120 characters. In total, there are 1135 long lines.

File# lines# units# long lines
secretsmanagerapi_mocks.go
in agent/asm/mocks
795 124 143
api.go
in agent/ecs_client/model/ecs
6737 1159 84
task.go
in agent/api/task
1902 128 62
dockerapi_mocks.go
in agent/dockerclient/dockerapi/mocks
331 60 44
docker_task_engine.go
in agent/engine
1355 56 40
sdkclient_mocks.go
in agent/dockerclient/sdkclient/mocks
310 54 29
dockerstate_mocks.go
in agent/engine/dockerstate/mocks
286 56 26
docker_client.go
in agent/dockerclient/dockerapi
1270 63 25
api_mocks.go
in agent/api/mocks
225 38 24
taskresource_mocks.go
in agent/taskresource/mocks
267 52 23
ec2_mocks.go
in agent/ec2/mocks
333 56 23
manager_start.go
in agent/engine/execcmd
152 4 21
graph.go
in agent/engine/dependencygraph
335 19 20
docker_image_manager.go
in agent/engine
556 40 15
libcni_mocks.go
in agent/ecscni/mocks_libcni
129 22 14
engine_mocks.go
in agent/engine/mocks
222 42 13
agent.go
in agent/app
699 29 12
run-integ-tests.ps1
in scripts
64 - 12
attach_task_eni_handler.go
in agent/acs/handler
111 7 11
task_manager.go
in agent/engine
1121 41 11