aws-samples / siem-on-amazon-opensearch-service
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 13% duplication:
    • 5,498 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 753 duplicated lines
  • 1,014 duplicates
system13% (753 lines)
Duplication per Extension
py13% (753 lines)
Duplication per Component (primary)
lambda/es_loader/siem16% (526 lines)
cdk-deployment-samples/deployment_samples34% (126 lines)
cdk-deployment-samples/lambda91% (41 lines)
cdk/mysiem2% (22 lines)
lambda/es_loader4% (20 lines)
cdk46% (6 lines)
cdk-deployment-samples18% (6 lines)
lambda/geoip_downloader6% (6 lines)
lambda/deploy_es0% (0 lines)

Duplication Between Components (50+ lines)

G cdk-deployment-samples/deployment_samples cdk-deployment-samples/deployment_samples lambda/es_loader/siem lambda/es_loader/siem cdk-deployment-samples/deployment_samples--lambda/es_loader/siem 240 cdk-deployment-samples/lambda cdk-deployment-samples/lambda cdk-deployment-samples/deployment_samples--cdk-deployment-samples/lambda 82 lambda/geoip_downloader lambda/geoip_downloader lambda/es_loader/siem--lambda/geoip_downloader 234 cdk/mysiem cdk/mysiem cdk/mysiem--lambda/es_loader/siem 234 cdk-deployment-samples cdk-deployment-samples cdk-deployment-samples--lambda/es_loader/siem 234 lambda/es_loader lambda/es_loader lambda/es_loader--lambda/es_loader/siem 234 cdk cdk cdk--lambda/es_loader/siem 234

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 1,014 duplicates...
Size#FoldersFilesLinesCode
27 x 2 source/cdk-deployment-samples/deployment_samples
source/cdk-deployment-samples/lambda
deployment_samples_stack.py
describe-workspaces.py
49:75 (7%)
29:55 (60%)
view
24 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
fileformat_multiline.py
fileformat_xml.py
34:61 (31%)
29:56 (39%)
view
14 x 2 source/cdk-deployment-samples/deployment_samples
source/cdk-deployment-samples/lambda
deployment_samples_stack.py
describe-workspaces.py
25:47 (3%)
4:27 (31%)
view
12 x 2 source/cdk-deployment-samples/deployment_samples
source/cdk-deployment-samples/deployment_samples
deployment_samples_stack.py
deployment_samples_stack.py
162:174 (3%)
215:227 (3%)
view
11 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
__init__.py
__init__.py
252:264 (1%)
274:286 (1%)
view
11 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
fileformat_multiline.py
fileformat_text.py
89:99 (14%)
47:57 (26%)
view
11 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
sf_directory_service.py
sf_fsx_win.py
3:21 (100%)
3:21 (100%)
view
10 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
sf_rds_mysql_audit.py
sf_rds_mysql_general.py
3:16 (27%)
3:16 (76%)
view
10 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
geodb.py
utils.py
52:61 (9%)
491:500 (1%)
view
9 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
fileformat_multiline.py
fileformat_text.py
25:34 (11%)
20:29 (21%)
view
9 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
fileformat_multiline.py
fileformat_xml.py
76:85 (11%)
70:79 (14%)
view
9 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
fileformat_winevtxml.py
fileformat_xml.py
3:24 (7%)
3:21 (14%)
view
8 x 2 source/cdk-deployment-samples/deployment_samples
source/cdk-deployment-samples/deployment_samples
deployment_samples_stack.py
deployment_samples_stack.py
109:116 (2%)
157:164 (2%)
view
8 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
sf_clb.py
sf_route53resolver.py
3:12 (66%)
3:12 (44%)
view
8 x 2 source/cdk-deployment-samples/deployment_samples
source/cdk-deployment-samples/deployment_samples
deployment_samples_stack.py
deployment_samples_stack.py
125:133 (2%)
182:190 (2%)
view
8 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
sf_config_history.py
sf_config_snapshot.py
15:23 (50%)
285:293 (3%)
view
8 x 2 source/cdk-deployment-samples/deployment_samples
source/cdk-deployment-samples/deployment_samples
deployment_samples_stack.py
deployment_samples_stack.py
139:146 (2%)
253:260 (2%)
view
8 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
sf_networkfirewall.py
sf_route53resolver.py
3:12 (53%)
3:12 (44%)
view
8 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
sf_cloudfront_realtime.py
sf_cloudfront_standard.py
20:28 (34%)
24:32 (29%)
view
8 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
sf_clb.py
sf_networkfirewall.py
3:12 (66%)
3:12 (53%)
view
Duplicated Units
The list of top 4 duplicated units.
See data for all 4 unit duplicates...
Size#FoldersFilesLinesCode
10 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
fileformat_text.py
fileformat_multiline.py
0:0 
0:0 
view
7 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
sf_config_history.py
sf_config_snapshot.py
0:0 
0:0 
view
6 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
fileformat_text.py
fileformat_multiline.py
0:0 
0:0 
view
6 x 2 source/lambda/es_loader/siem
source/lambda/es_loader/siem
fileformat_text.py
fileformat_csv.py
0:0 
0:0 
view