aws / aws-xray-sdk-java
Unit Size

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

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 1,407 units with 8,018 lines of code in units (63.8% of code).
    • 0 very long units (0 lines of code)
    • 5 long units (332 lines of code)
    • 49 medium size units (1,560 lines of code)
    • 110 small units (1,546 lines of code)
    • 1,243 very small units (4,580 lines of code)
0% | 4% | 19% | 19% | 57%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
java0% | 4% | 19% | 19% | 57%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
aws-xray-recorder-sdk-core0% | 2% | 17% | 17% | 61%
aws-xray-recorder-sdk-aws-sdk0% | 32% | 39% | 8% | 19%
aws-xray-recorder-sdk-sql0% | 13% | 7% | 6% | 73%
aws-xray-recorder-sdk-aws-sdk-v20% | 0% | 40% | 29% | 30%
aws-xray-recorder-sdk-sql-postgres0% | 0% | 67% | 10% | 22%
aws-xray-recorder-sdk-sql-mysql0% | 0% | 67% | 10% | 22%
aws-xray-recorder-sdk-apache-http0% | 0% | 9% | 66% | 24%
aws-xray-recorder-sdk-metrics0% | 0% | 18% | 44% | 36%
aws-xray-recorder-sdk-spring0% | 0% | 0% | 73% | 26%
aws-xray-recorder-sdk-benchmark0% | 0% | 0% | 14% | 85%
aws-xray-recorder-sdk-slf4j0% | 0% | 0% | 46% | 53%
aws-xray-recorder-sdk-log4j0% | 0% | 0% | 46% | 53%
aws-xray-recorder-sdk-aws-sdk-core0% | 0% | 0% | 0% | 100%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
public Segment preFilter()
in aws-xray-recorder-sdk-core/src/main/java/com/amazonaws/xray/javax/servlet/AWSXRayServletFilter.java
81 21 2
public AWSXRayRecorder build()
in aws-xray-recorder-sdk-core/src/main/java/com/amazonaws/xray/AWSXRayRecorderBuilder.java
79 21 0
private HashMap extractRequestParameters()
in aws-xray-recorder-sdk-aws-sdk/src/main/java/com/amazonaws/xray/handlers/TracingHandler.java
60 17 1
private HashMap extractResponseParameters()
in aws-xray-recorder-sdk-aws-sdk/src/main/java/com/amazonaws/xray/handlers/TracingHandler.java
58 17 2
public static Subsegment forQuery()
in aws-xray-recorder-sdk-sql/src/main/java/com/amazonaws/xray/sql/SqlSubsegments.java
54 15 2
public Object invoke()
in aws-xray-recorder-sdk-sql-postgres/src/main/java/com/amazonaws/xray/sql/postgres/TracingInterceptor.java
44 15 3
public Object invoke()
in aws-xray-recorder-sdk-sql-mysql/src/main/java/com/amazonaws/xray/sql/mysql/TracingInterceptor.java
44 15 3
public Object createStatement()
in aws-xray-recorder-sdk-sql-postgres/src/main/java/com/amazonaws/xray/sql/postgres/TracingInterceptor.java
43 6 4
public List describeInContext()
in aws-xray-recorder-sdk-core/src/main/java/com/amazonaws/xray/strategy/DefaultThrowableSerializationStrategy.java
43 8 3
public Object createStatement()
in aws-xray-recorder-sdk-sql-mysql/src/main/java/com/amazonaws/xray/sql/mysql/TracingInterceptor.java
43 6 4
public static boolean wildcardMatch()
in aws-xray-recorder-sdk-core/src/main/java/com/amazonaws/xray/entities/SearchPattern.java
42 17 3
Map fetch()
in aws-xray-recorder-sdk-core/src/main/java/com/amazonaws/xray/plugins/EC2MetadataFetcher.java
41 10 0
public void afterError()
in aws-xray-recorder-sdk-aws-sdk/src/main/java/com/amazonaws/xray/handlers/TracingHandler.java
41 13 3
public SamplingResponse shouldTrace()
in aws-xray-recorder-sdk-core/src/main/java/com/amazonaws/xray/strategy/sampling/CentralizedSamplingStrategy.java
39 10 1
static String fetchString()
in aws-xray-recorder-sdk-core/src/main/java/com/amazonaws/xray/plugins/MetadataUtils.java
39 9 5
public void endSubsegment()
in aws-xray-recorder-sdk-core/src/main/java/com/amazonaws/xray/contexts/LambdaSegmentContext.java
38 8 1
public AWSXRayRecorder()
in aws-xray-recorder-sdk-core/src/main/java/com/amazonaws/xray/AWSXRayRecorder.java
37 4 0
private T sendRequest()
in aws-xray-recorder-sdk-core/src/main/java/com/amazonaws/xray/internal/UnsignedXrayClient.java
37 7 3
private HashMap extractRequestParameters()
in aws-xray-recorder-sdk-aws-sdk-v2/src/main/java/com/amazonaws/xray/interceptors/TracingInterceptor.java
37 13 2
private HashMap extractResponseParameters()
in aws-xray-recorder-sdk-aws-sdk-v2/src/main/java/com/amazonaws/xray/interceptors/TracingInterceptor.java
37 13 2