apache / logging-log4j2
Components & Dependencies

An overview of source code logical components.

Intro

Logical decomposition is a representation of the organization of the main source code, where every and each file is put in exactly one logical component.

Learn more...
Logical Decompositions Overview

Analyzed system has 1 logical decomposition:

Logical Decomposition #1: PRIMARY

The decompositions is based on the folder structure at level 1 (relative to the source code root).

Bubble Chart | Tree Map
Component Sizes (Lines of Code)
The "primary" logical decomposition has 37 components.
  • 3,431 files, 147,516 LOC (100.0% vs. main code).
  • "log4j-core" is biggest, containing 40.05% of LOC.
  • "log4j-spring-cloud-config" is smallest, containing 0.03% of LOC.


log4j-core59084 LOC (40%) 712 files
src32032 LOC (21%) 1,956 files
log4j-api13641 LOC (9%) 144 files
log4j-1.2-api11879 LOC (8%) 162 files
log4j-perf9077 LOC (6%) 124 files
log4j-layout-template-json6740 LOC (4%) 83 files
log4j-iostreams1788 LOC (1%) 26 files
log4j-flume-ng1700 LOC (1%) 11 files
log4j-jpa962 LOC (<1%) 18 files
log4j-slf4j2-impl823 LOC (<1%) 9 files
log4j-jul820 LOC (<1%) 13 files
log4j-web714 LOC (<1%) 13 files
log4j-jakarta-web714 LOC (<1%) 13 files
log4j-slf4j-impl680 LOC (<1%) 12 files
log4j-to-slf4j623 LOC (<1%) 8 files
log4j-taglib610 LOC (<1%) 20 files
log4j-docker608 LOC (<1%) 8 files
log4j-core-java9571 LOC (<1%) 16 files
log4j-jmx-gui495 LOC (<1%) 7 files
log4j-kubernetes486 LOC (<1%) 4 files
log4j-spring-boot406 LOC (<1%) 4 files
log4j-mongodb3401 LOC (<1%) 6 files
log4j-jdbc-dbcp2335 LOC (<1%) 2 files
log4j-to-jul310 LOC (<1%) 7 files
log4j-cassandra303 LOC (<1%) 4 files
log4j-jakarta-smtp277 LOC (<1%) 2 files
log4j-mongodb4251 LOC (<1%) 6 files
log4j-api-java9235 LOC (<1%) 17 files
log4j-appserver205 LOC (<1%) 4 files
log4j-jcl153 LOC (<1%) 4 files
log4j-couchdb149 LOC (<1%) 3 files
log4j-layout-template-json-test145 LOC (<1%) 2 files
log4j-jpl132 LOC (<1%) 3 files
log4j-core-test47 LOC (<1%) 2 files
ROOT42 LOC (<1%) 3 files
log4j-distribution39 LOC (<1%) 1 file
log4j-spring-cloud-config39 LOC (<1%) 2 files
Static Dependencies
Dependencies among components are static code dependencies among files in different components.
  • Analyzed system has 124 links (arrows) between components.
  • The number on the arrow represents the number of files from referring component that depend on files in referred component.
  • These 124 links contain 1710 dependencies.
  • There are 4 places (8 links) with cyclic dependencies (299 file dependencies).
G log4j-jdbc-dbcp2 log4j-jdbc-dbcp2 log4j-api-java9 log4j-api-java9 log4j-jdbc-dbcp2->log4j-api-java9 1 log4j-api log4j-api log4j-jdbc-dbcp2->log4j-api 1 log4j-appserver log4j-appserver log4j-perf log4j-perf log4j-appserver->log4j-perf 2 log4j-appserver->log4j-api-java9 2 log4j-appserver->log4j-api 2 log4j-jpl log4j-jpl log4j-jpl->log4j-perf 2 log4j-jpl->log4j-api-java9 2 log4j-jpl->log4j-api 2 log4j-1.2-api log4j-1.2-api log4j-1.2-api->log4j-perf 33 log4j-core-java9 log4j-core-java9 log4j-1.2-api->log4j-core-java9 12 log4j-1.2-api->log4j-api-java9 54 log4j-1.2-api->log4j-api 54 log4j-core log4j-core log4j-1.2-api->log4j-core 55 log4j-couchdb log4j-couchdb log4j-couchdb->log4j-perf 1 log4j-couchdb->log4j-api-java9 2 log4j-couchdb->log4j-api 2 log4j-couchdb->log4j-core 2 ROOT ROOT log4j-mongodb3 log4j-mongodb3 log4j-mongodb3->log4j-perf 3 log4j-mongodb3->log4j-api-java9 3 log4j-mongodb3->log4j-api 3 log4j-mongodb3->log4j-core 3 log4j-slf4j2-impl log4j-slf4j2-impl log4j-slf4j2-impl->log4j-perf 6 log4j-slf4j2-impl->log4j-api-java9 6 log4j-slf4j2-impl->log4j-api 6 log4j-flume-ng log4j-flume-ng log4j-flume-ng->log4j-perf 4 log4j-flume-ng->log4j-core-java9 5 log4j-flume-ng->log4j-api-java9 5 log4j-flume-ng->log4j-api 5 log4j-flume-ng->log4j-core 8 log4j-mongodb4 log4j-mongodb4 log4j-mongodb4->log4j-perf 3 log4j-mongodb4->log4j-api-java9 3 log4j-mongodb4->log4j-api 3 log4j-mongodb4->log4j-core 3 log4j-distribution log4j-distribution log4j-perf->log4j-1.2-api 3 log4j-perf->log4j-core-java9 23 log4j-perf->log4j-api-java9 18 log4j-perf->log4j-api 18 log4j-jpa log4j-jpa log4j-perf->log4j-jpa 2 log4j-perf->log4j-core 38 log4j-core-java9->log4j-api-java9 3 log4j-core-java9->log4j-api 3 log4j-layout-template-json log4j-layout-template-json log4j-layout-template-json->log4j-perf 10 log4j-layout-template-json->log4j-core-java9 5 log4j-layout-template-json->log4j-api-java9 19 log4j-layout-template-json->log4j-api 19 log4j-layout-template-json->log4j-core 54 log4j-jakarta-smtp log4j-jakarta-smtp log4j-jakarta-smtp->log4j-core-java9 2 log4j-jakarta-smtp->log4j-core 2 log4j-kubernetes log4j-kubernetes log4j-kubernetes->log4j-perf 3 log4j-kubernetes->log4j-api-java9 4 log4j-kubernetes->log4j-api 4 log4j-cassandra log4j-cassandra log4j-cassandra->log4j-core-java9 2 log4j-cassandra->log4j-core 3 log4j-jpa->log4j-perf 7 log4j-jpa->log4j-core-java9 6 log4j-jpa->log4j-api-java9 14 log4j-jpa->log4j-api 14 log4j-jpa->log4j-core 7 log4j-jul log4j-jul log4j-jul->log4j-perf 10 log4j-jul->log4j-api-java9 10 log4j-jul->log4j-api 10 log4j-web log4j-web log4j-web->log4j-perf 8 log4j-web->log4j-core-java9 2 log4j-web->log4j-api-java9 9 log4j-web->log4j-api 9 log4j-web->log4j-core 7 log4j-spring-cloud-config log4j-spring-cloud-config log4j-iostreams log4j-iostreams log4j-iostreams->log4j-perf 24 log4j-iostreams->log4j-api-java9 24 log4j-iostreams->log4j-api 24 log4j-jakarta-web log4j-jakarta-web log4j-jakarta-web->log4j-perf 8 log4j-jakarta-web->log4j-core-java9 2 log4j-jakarta-web->log4j-api-java9 9 log4j-jakarta-web->log4j-api 9 log4j-jakarta-web->log4j-core 7 log4j-layout-template-json-test log4j-layout-template-json-test log4j-layout-template-json-test->log4j-perf 1 log4j-layout-template-json-test->log4j-core 2 log4j-to-slf4j log4j-to-slf4j log4j-to-slf4j->log4j-perf 6 log4j-to-slf4j->log4j-api-java9 7 log4j-to-slf4j->log4j-api 7 log4j-core->log4j-perf 192 log4j-core->log4j-api-java9 304 log4j-core->log4j-api 304 log4j-jcl log4j-jcl log4j-jcl->log4j-perf 3 log4j-jcl->log4j-api-java9 3 log4j-jcl->log4j-api 3 log4j-slf4j-impl log4j-slf4j-impl log4j-slf4j-impl->log4j-perf 6 log4j-slf4j-impl->log4j-api-java9 6 log4j-slf4j-impl->log4j-api 6 log4j-jmx-gui log4j-jmx-gui log4j-jmx-gui->log4j-core 3 log4j-to-jul log4j-to-jul log4j-to-jul->log4j-perf 4 log4j-to-jul->log4j-api-java9 6 log4j-to-jul->log4j-api 6 log4j-docker log4j-docker log4j-spring-boot log4j-spring-boot log4j-spring-boot->log4j-perf 3 log4j-spring-boot->log4j-core-java9 2 log4j-spring-boot->log4j-api-java9 4 log4j-spring-boot->log4j-api 4 log4j-spring-boot->log4j-core 3 log4j-core-test log4j-core-test src src log4j-taglib log4j-taglib log4j-taglib->log4j-perf 16 log4j-taglib->log4j-api-java9 16 log4j-taglib->log4j-api 16


Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details about dependencies...




Component Commits
Components ordered by number of commits
Total Commits per Component
All commits, some commits may include files from multiple components.
log4j-core3832 commits (30%)
log4j-api1232 commits (9%)
src970 commits (7%)
log4j-1.2-api353 commits (2%)
log4j-perf265 commits (2%)
log4j-flume-ng139 commits (1%)
log4j-web116 commits (<1%)
log4j-to-slf4j98 commits (<1%)
log4j-jul77 commits (<1%)
log4j-slf4j-impl62 commits (<1%)
log4j-layout-template-json56 commits (<1%)
log4j-api-java935 commits (<1%)
log4j-jmx-gui34 commits (<1%)
log4j-iostreams25 commits (<1%)
log4j-taglib25 commits (<1%)
log4j-appserver23 commits (<1%)
log4j-jcl21 commits (<1%)
log4j-jdbc-dbcp217 commits (<1%)
log4j-jpa16 commits (<1%)
log4j-spring-boot12 commits (<1%)
log4j-slf4j2-impl11 commits (<1%)
log4j-mongodb311 commits (<1%)
log4j-jakarta-web11 commits (<1%)
log4j-cassandra10 commits (<1%)
log4j-docker10 commits (<1%)
log4j-core-java99 commits (<1%)
log4j-mongodb49 commits (<1%)
ROOT8 commits (<1%)
log4j-to-jul7 commits (<1%)
log4j-spring-cloud-config7 commits (<1%)
log4j-kubernetes7 commits (<1%)
log4j-distribution6 commits (<1%)
log4j-jpl5 commits (<1%)
log4j-couchdb5 commits (<1%)
log4j-core-test3 commits (<1%)
log4j-jakarta-smtp3 commits (<1%)
log4j-layout-template-json-test2 commits (<1%)
Yearly File Updates Trend per Components
The number of file changes in commits
animated commit history: all time cumulative | 12 months window
2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011
src
9633
81
74
23
24
40
130
362
167
181
146
144
43
log4j-core
911
335
293
259
251
1012
1167
4726
1960
1967
306
log4j-1.2-api
269
377
80
141
116
16
13
152
16
34
29
log4j-api
199
101
50
59
39
218
255
967
321
366
74
log4j-perf
143
8
12
34
18
36
55
417
61
83
log4j-layout-template-json
103
18
114
102
log4j-api-java9
21
11
3
4
8
7
18
log4j-slf4j2-impl
18
14
log4j-jul
18
10
4
8
3
10
5
8
23
34
log4j-iostreams
25
3
28
33
1
1
1
91
log4j-web
17
7
7
5
10
4
54
14
65
log4j-jakarta-web
17
5
29
log4j-slf4j-impl
11
10
7
5
2
1
5
14
39
6
log4j-jpa
17
3
1
2
30
log4j-flume-ng
18
2
3
4
6
11
10
77
30
52
15
log4j-core-java9
20
11
log4j-taglib
19
1
2
6
10
17
21
log4j-to-jul
8
10
log4j-spring-boot
9
7
1
4
log4j-docker
15
1
3
1
13
log4j-to-slf4j
15
1
6
1
6
44
5
21
27
log4j-mongodb4
8
6
5
log4j-mongodb3
5
6
2
4
5
log4j-kubernetes
8
2
4
3
log4j-jpl
6
1
1
3
ROOT
6
1
1
log4j-cassandra
6
7
4
log4j-jmx-gui
6
1
3
2
4
4
7
17
3
log4j-core-test
3
2
log4j-jakarta-smtp
3
2
log4j-jcl
3
1
1
3
1
2
13
4
log4j-spring-cloud-config
4
1
2
3
log4j-jdbc-dbcp2
3
1
1
14
log4j-layout-template-json-test
2
2
log4j-couchdb
3
2
3
log4j-appserver
2
1
4
20
log4j-distribution
5
1


Dependencies between components in same commits (past 180 days)
The number on the lines shows the number of shared commits.
See detailed temporal dependencies report...

G log4j-core log4j-core log4j-core--log4j-core 14 log4j-1.2-api log4j-1.2-api log4j-core--log4j-1.2-api 6 log4j-api log4j-api log4j-core--log4j-api 6 log4j-core-java9 log4j-core-java9 log4j-core--log4j-core-java9 4 log4j-1.2-api--log4j-1.2-api 5 log4j-api--log4j-1.2-api 5 log4j-api--log4j-api 5 log4j-flume-ng log4j-flume-ng log4j-flume-ng--log4j-core 4 log4j-flume-ng--log4j-1.2-api 3 log4j-flume-ng--log4j-api 4 log4j-flume-ng--log4j-flume-ng 4 log4j-core-java9--log4j-core-java9 4 log4j-perf log4j-perf log4j-perf--log4j-core 3 log4j-perf--log4j-1.2-api 3 log4j-perf--log4j-api 2 log4j-perf--log4j-perf 3 log4j-spring-boot log4j-spring-boot log4j-spring-boot--log4j-core 3 log4j-spring-boot--log4j-1.2-api 3 log4j-spring-boot--log4j-api 3 log4j-spring-boot--log4j-core-java9 2 log4j-layout-template-json log4j-layout-template-json log4j-spring-boot--log4j-layout-template-json 3 log4j-layout-template-json--log4j-core 3 log4j-layout-template-json--log4j-1.2-api 3 log4j-layout-template-json--log4j-api 3 log4j-jakarta-web log4j-jakarta-web log4j-layout-template-json--log4j-jakarta-web 3 log4j-web log4j-web log4j-web--log4j-core 3 log4j-web--log4j-1.2-api 3 log4j-web--log4j-api 3 log4j-web--log4j-spring-boot 3 log4j-web--log4j-layout-template-json 3 log4j-web--log4j-web 3 log4j-web--log4j-jakarta-web 3 log4j-jul log4j-jul log4j-jul--log4j-core 3 log4j-jul--log4j-1.2-api 3 log4j-jul--log4j-api 3 log4j-jul--log4j-flume-ng 3 log4j-jul--log4j-jul 3 log4j-to-slf4j log4j-to-slf4j log4j-to-slf4j--log4j-core 3 log4j-to-slf4j--log4j-1.2-api 3 log4j-to-slf4j--log4j-api 3 log4j-to-slf4j--log4j-flume-ng 3 log4j-to-slf4j--log4j-jul 3 log4j-jakarta-web--log4j-core 3 log4j-jakarta-web--log4j-1.2-api 3 log4j-jakarta-web--log4j-api 3 log4j-jakarta-web--log4j-spring-boot 3 log4j-jakarta-web--log4j-jakarta-web 3 log4j-cassandra log4j-cassandra log4j-cassandra--log4j-perf 2 log4j-jpl log4j-jpl log4j-jpl--log4j-core 2 log4j-kubernetes log4j-kubernetes log4j-kubernetes--log4j-jpl 2


2023-08-10 14:48