You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by gi...@apache.org on 2025/11/25 20:37:37 UTC

(logging-log4j2) branch 2.x-site-stg-out updated: Add website content generated from `73733dadf4250ad6bd683f99474266d18c6b6c35`

This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch 2.x-site-stg-out
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git


The following commit(s) were added to refs/heads/2.x-site-stg-out by this push:
     new b1132bdbe1 Add website content generated from `73733dadf4250ad6bd683f99474266d18c6b6c35`
b1132bdbe1 is described below

commit b1132bdbe1848be621170453470825125001aec8
Author: ASF Logging Services RM <pr...@logging.apache.org>
AuthorDate: Tue Nov 25 20:37:31 2025 +0000

    Add website content generated from `73733dadf4250ad6bd683f99474266d18c6b6c35`
---
 ...ag-01168003b98f120d2f0736e5172de8e1218f189e.svg |   1 +
 ...ag-0c23746e246efa4a462049e2adc4b0349185aa77.svg |   1 +
 ...ag-2158b7cc88b372c32a9592f8cdbc1cc926bb8b80.svg |   1 +
 ...ag-232cdf1d44336897239fa03f6521cc730f38f32d.svg |   1 +
 ...ag-35cc4e8101ffe76d0edc44ed334a6273018dc51b.svg |   1 +
 ...ag-3f8a04c810525cc09a5e7564abf3aa14ed1f7c81.svg |   1 +
 ...ag-4d55aeb99a0ae8707b4121b1f76e9544af16b3c4.svg |   1 +
 ...ag-581e854ee8ecdb00104bac5affda10a653d8f76d.svg |   1 +
 ...ag-58c484caf8cd616db4f1c7ed31b51c123b5859d4.svg |   1 +
 ...ag-5c97f284d82478c0499cab16fe90893de781b11f.svg |   1 +
 ...ag-5ffe377615be9b0375b26533bbf7b10507dc946b.svg |   1 +
 ...ag-63d449f3bcd24cfa522a41f6e2f545416de30322.svg |   1 +
 ...ag-73365a4d8197b5441a98fd1d661b07760da178be.svg |   1 +
 ...ag-768e5e02508ea736d8901892b519a6d3a7a770ab.svg |   1 +
 ...ag-77a13b00749af95e3ed0eefd605a73f25d70973c.svg |   1 +
 ...ag-7a08e5a79432e9299cc0d9671bd39677be5618e8.svg |   1 +
 ...ag-892fd9dbd9ea6bece55c1d4078ae1de2edd5c689.svg |   1 +
 ...ag-a15d9b3aaacbf863f81fe0dcb0ed21346b6c46ed.svg |   1 +
 ...ag-a51b68065f249459078382aa4c61888857f01b2c.svg |   1 +
 ...ag-d5122741a680d765fa3170a444015b615a1fdafd.svg |   1 +
 ...ag-fd71b342bbb89cd55a1ddb592976b9ac26b6348e.svg |   1 +
 graalvm.html                                       |  58 +--
 hibernate.html                                     |  58 +--
 .../org/apache/logging/log4j/class-use/Level.html  |   6 +-
 .../logging/log4j/message/class-use/Message.html   |   6 +-
 .../logging/log4j/simple/package-summary.html      |   2 +-
 .../apache/logging/log4j/status/StatusData.html    |  25 +-
 .../logging/log4j/status/StatusLogger.Config.html  |   5 +-
 .../logging/log4j/status/package-summary.html      |   2 +-
 .../apache/logging/log4j/util/package-summary.html |   2 +-
 javadoc/log4j-api/serialized-form.html             |   4 +-
 .../core/appender/db/jdbc/package-summary.html     |   2 +-
 .../core/config/builder/impl/package-summary.html  |   2 +-
 .../config/plugins/convert/package-summary.html    |   2 +-
 .../core/config/plugins/util/package-summary.html  |   2 +-
 .../core/config/status/StatusConfiguration.html    |  15 +-
 .../status/class-use/StatusConfiguration.html      |   6 +-
 .../log4j/core/config/status/package-summary.html  |   2 +-
 .../logging/log4j/core/filter/package-summary.html |   2 +-
 .../logging/log4j/core/jmx/package-summary.html    |   2 +-
 .../logging/log4j/core/net/package-summary.html    |   2 +-
 .../log4j/core/net/ssl/package-summary.html        |   2 +-
 .../apache/logging/log4j/core/package-summary.html |   2 +-
 .../logging/log4j/core/tools/package-summary.html  |   2 +-
 .../logging/log4j/core/util/package-summary.html   |   2 +-
 log4j-jul.html                                     |  58 +--
 manual/appenders/rolling-file.html                 | 134 +----
 manual/architecture.html                           | 554 ++-------------------
 manual/filters.html                                |  97 +---
 manual/installation.html                           |  58 +--
 manual/lookups.html                                |  28 +-
 migrate-from-logback.html                          |  58 +--
 migrate-from-slf4j.html                            |  58 +--
 plugin-reference.html                              |  14 +-
 release-notes.html                                 |   3 +
 sitemap.xml                                        | 118 ++---
 56 files changed, 209 insertions(+), 1205 deletions(-)

diff --git a/_images/diag-01168003b98f120d2f0736e5172de8e1218f189e.svg b/_images/diag-01168003b98f120d2f0736e5172de8e1218f189e.svg
new file mode 100644
index 0000000000..5967ac1018
--- /dev/null
+++ b/_images/diag-01168003b98f120d2f0736e5172de8e1218f189e.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="278px" preserveAspectRatio="none" style="width:787px;height:278px;background:#FFFFFF;" version="1.1" viewBox="0 0 787 278" width="787px" zoomAndPan="magnify"><defs/><g><!--cluster LoggerContext--><g class="cluster" data-entity="LoggerContext" data-source-line="3" data-uid="ent0002" id="cluster_LoggerContext"><path d="M8.5,6 L126.251,6 A3.75,3.75 [...]
\ No newline at end of file
diff --git a/_images/diag-0c23746e246efa4a462049e2adc4b0349185aa77.svg b/_images/diag-0c23746e246efa4a462049e2adc4b0349185aa77.svg
new file mode 100644
index 0000000000..0b91ec1f33
--- /dev/null
+++ b/_images/diag-0c23746e246efa4a462049e2adc4b0349185aa77.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="ACTIVITY" height="405px" preserveAspectRatio="none" style="width:377px;height:405px;background:#FFFFFF;" version="1.1" viewBox="0 0 377 405" width="377px" zoomAndPan="magnify"><defs/><g><ellipse cx="203.1892" cy="20" fill="#222222" rx="10" ry="10" style="stroke:#222222;stroke-width:1;"/><rect fill="#F1F1F1" height="33.9688" rx="12.5" ry="12.5" style="stroke:#1 [...]
\ No newline at end of file
diff --git a/_images/diag-2158b7cc88b372c32a9592f8cdbc1cc926bb8b80.svg b/_images/diag-2158b7cc88b372c32a9592f8cdbc1cc926bb8b80.svg
new file mode 100644
index 0000000000..02758ee08a
--- /dev/null
+++ b/_images/diag-2158b7cc88b372c32a9592f8cdbc1cc926bb8b80.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="ACTIVITY" height="417px" preserveAspectRatio="none" style="width:431px;height:417px;background:#FFFFFF;" version="1.1" viewBox="0 0 431 417" width="431px" zoomAndPan="magnify"><defs/><g><ellipse cx="211.396" cy="20" fill="#222222" rx="10" ry="10" style="stroke:#222222;stroke-width:1;"/><rect fill="none" height="270.3628" style="stroke:#000000;stroke-width:1.5; [...]
\ No newline at end of file
diff --git a/_images/diag-232cdf1d44336897239fa03f6521cc730f38f32d.svg b/_images/diag-232cdf1d44336897239fa03f6521cc730f38f32d.svg
new file mode 100644
index 0000000000..097664555b
--- /dev/null
+++ b/_images/diag-232cdf1d44336897239fa03f6521cc730f38f32d.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="218px" preserveAspectRatio="none" style="width:200px;height:218px;background:#FFFFFF;" version="1.1" viewBox="0 0 200 218" width="200px" zoomAndPan="magnify"><defs/><g><!--class Appender--><g class="entity" data-entity="Appender" data-source-line="1" data-uid="ent0002" id="entity_Appender"><rect fill="#F1F1F1" height="80.5938" rx="2.5" ry="2.5"  [...]
\ No newline at end of file
diff --git a/_images/diag-35cc4e8101ffe76d0edc44ed334a6273018dc51b.svg b/_images/diag-35cc4e8101ffe76d0edc44ed334a6273018dc51b.svg
new file mode 100644
index 0000000000..7844787ffe
--- /dev/null
+++ b/_images/diag-35cc4e8101ffe76d0edc44ed334a6273018dc51b.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="226px" preserveAspectRatio="none" style="width:790px;height:226px;background:#FFFFFF;" version="1.1" viewBox="0 0 790 226" width="790px" zoomAndPan="magnify"><defs/><g><!--class initial--><g class="entity" data-entity="initial" data-source-line="1" data-uid="ent0002" id="entity_initial"><rect fill="#F1F1F1" height="64.2969" rx="2.5" ry="2.5" sty [...]
\ No newline at end of file
diff --git a/_images/diag-3f8a04c810525cc09a5e7564abf3aa14ed1f7c81.svg b/_images/diag-3f8a04c810525cc09a5e7564abf3aa14ed1f7c81.svg
new file mode 100644
index 0000000000..f585a3e64d
--- /dev/null
+++ b/_images/diag-3f8a04c810525cc09a5e7564abf3aa14ed1f7c81.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="1022px" preserveAspectRatio="none" style="width:1354px;height:1022px;background:#FFFFFF;" version="1.1" viewBox="0 0 1354 1022" width="1354px" zoomAndPan="magnify"><defs/><g><!--cluster c--><g class="cluster" data-entity="c" data-source-line="13" data-uid="ent0008" id="cluster_c"><path d="M8.5,150.89 L117.665,150.89 A3.75,3.75 0 0 1 120.165,153. [...]
\ No newline at end of file
diff --git a/_images/diag-4d55aeb99a0ae8707b4121b1f76e9544af16b3c4.svg b/_images/diag-4d55aeb99a0ae8707b4121b1f76e9544af16b3c4.svg
new file mode 100644
index 0000000000..bf875fa646
--- /dev/null
+++ b/_images/diag-4d55aeb99a0ae8707b4121b1f76e9544af16b3c4.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="ACTIVITY" height="424px" preserveAspectRatio="none" style="width:279px;height:424px;background:#FFFFFF;" version="1.1" viewBox="0 0 279 424" width="279px" zoomAndPan="magnify"><defs/><g><ellipse cx="127.0029" cy="20" fill="#222222" rx="10" ry="10" style="stroke:#222222;stroke-width:1;"/><rect fill="#F1F1F1" height="33.9688" rx="12.5" ry="12.5" style="stroke:#1 [...]
\ No newline at end of file
diff --git a/_images/diag-581e854ee8ecdb00104bac5affda10a653d8f76d.svg b/_images/diag-581e854ee8ecdb00104bac5affda10a653d8f76d.svg
new file mode 100644
index 0000000000..c52d850cf7
--- /dev/null
+++ b/_images/diag-581e854ee8ecdb00104bac5affda10a653d8f76d.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="614px" preserveAspectRatio="none" style="width:558px;height:614px;background:#FFFFFF;" version="1.1" viewBox="0 0 558 614" width="558px" zoomAndPan="magnify"><defs/><g><!--class Configuration--><g class="entity" data-entity="Configuration" data-source-line="1" data-uid="ent0002" id="entity_Configuration"><rect fill="#F1F1F1" height="129.4844" rx [...]
\ No newline at end of file
diff --git a/_images/diag-58c484caf8cd616db4f1c7ed31b51c123b5859d4.svg b/_images/diag-58c484caf8cd616db4f1c7ed31b51c123b5859d4.svg
new file mode 100644
index 0000000000..5cb0dc863e
--- /dev/null
+++ b/_images/diag-58c484caf8cd616db4f1c7ed31b51c123b5859d4.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="MINDMAP" height="134px" preserveAspectRatio="none" style="width:627px;height:134px;background:#FFFFFF;" version="1.1" viewBox="0 0 627 134" width="627px" zoomAndPan="magnify"><defs/><g><rect fill="#F1F1F1" height="36.2969" rx="12.5" ry="12.5" style="stroke:#181818;stroke-width:1.5;" width="48.376" x="10" y="48.1484"/><text fill="#000000" font-family="sans-seri [...]
\ No newline at end of file
diff --git a/_images/diag-5c97f284d82478c0499cab16fe90893de781b11f.svg b/_images/diag-5c97f284d82478c0499cab16fe90893de781b11f.svg
new file mode 100644
index 0000000000..38e7b19d9c
--- /dev/null
+++ b/_images/diag-5c97f284d82478c0499cab16fe90893de781b11f.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="408px" preserveAspectRatio="none" style="width:336px;height:408px;background:#FFFFFF;" version="1.1" viewBox="0 0 336 408" width="336px" zoomAndPan="magnify"><defs/><g><!--class StrSubstitutor--><g class="entity" data-entity="StrSubstitutor" data-source-line="1" data-uid="ent0002" id="entity_StrSubstitutor"><rect fill="#F1F1F1" height="96.8906"  [...]
\ No newline at end of file
diff --git a/_images/diag-5ffe377615be9b0375b26533bbf7b10507dc946b.svg b/_images/diag-5ffe377615be9b0375b26533bbf7b10507dc946b.svg
new file mode 100644
index 0000000000..108e29a8ca
--- /dev/null
+++ b/_images/diag-5ffe377615be9b0375b26533bbf7b10507dc946b.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="489px" preserveAspectRatio="none" style="width:938px;height:489px;background:#FFFFFF;" version="1.1" viewBox="0 0 938 489" width="938px" zoomAndPan="magnify"><defs/><g><!--class LoggerContext--><g class="entity" data-entity="LoggerContext" data-source-line="1" data-uid="ent0002" id="entity_LoggerContext"><rect fill="#F1F1F1" height="96.8906" rx= [...]
\ No newline at end of file
diff --git a/_images/diag-63d449f3bcd24cfa522a41f6e2f545416de30322.svg b/_images/diag-63d449f3bcd24cfa522a41f6e2f545416de30322.svg
new file mode 100644
index 0000000000..3e2e0d951e
--- /dev/null
+++ b/_images/diag-63d449f3bcd24cfa522a41f6e2f545416de30322.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="754px" preserveAspectRatio="none" style="width:557px;height:754px;background:#FFFFFF;" version="1.1" viewBox="0 0 557 754" width="557px" zoomAndPan="magnify"><defs/><g><!--class Configuration--><g class="entity" data-entity="Configuration" data-source-line="1" data-uid="ent0002" id="entity_Configuration"><rect fill="#F1F1F1" height="129.4844" rx [...]
\ No newline at end of file
diff --git a/_images/diag-73365a4d8197b5441a98fd1d661b07760da178be.svg b/_images/diag-73365a4d8197b5441a98fd1d661b07760da178be.svg
new file mode 100644
index 0000000000..ccf13b8c88
--- /dev/null
+++ b/_images/diag-73365a4d8197b5441a98fd1d661b07760da178be.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="507px" preserveAspectRatio="none" style="width:663px;height:507px;background:#FFFFFF;" version="1.1" viewBox="0 0 663 507" width="663px" zoomAndPan="magnify"><defs/><g><!--class Configuration--><g class="entity" data-entity="Configuration" data-source-line="1" data-uid="ent0002" id="entity_Configuration"><rect fill="#F1F1F1" height="129.4844" rx [...]
\ No newline at end of file
diff --git a/_images/diag-768e5e02508ea736d8901892b519a6d3a7a770ab.svg b/_images/diag-768e5e02508ea736d8901892b519a6d3a7a770ab.svg
new file mode 100644
index 0000000000..969ddda54c
--- /dev/null
+++ b/_images/diag-768e5e02508ea736d8901892b519a6d3a7a770ab.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="143px" preserveAspectRatio="none" style="width:790px;height:143px;background:#FFFFFF;" version="1.1" viewBox="0 0 790 143" width="790px" zoomAndPan="magnify"><defs/><g><!--class initial--><g class="entity" data-entity="initial" data-source-line="1" data-uid="ent0002" id="entity_initial"><rect fill="#F1F1F1" height="64.2969" rx="2.5" ry="2.5" sty [...]
\ No newline at end of file
diff --git a/_images/diag-77a13b00749af95e3ed0eefd605a73f25d70973c.svg b/_images/diag-77a13b00749af95e3ed0eefd605a73f25d70973c.svg
new file mode 100644
index 0000000000..322c7caedd
--- /dev/null
+++ b/_images/diag-77a13b00749af95e3ed0eefd605a73f25d70973c.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="442px" preserveAspectRatio="none" style="width:304px;height:442px;background:#FFFFFF;" version="1.1" viewBox="0 0 304 442" width="304px" zoomAndPan="magnify"><defs/><g><!--class LoggerContext--><g class="entity" data-entity="LoggerContext" data-source-line="1" data-uid="ent0002" id="entity_LoggerContext"><rect fill="#F1F1F1" height="96.8906" rx= [...]
\ No newline at end of file
diff --git a/_images/diag-7a08e5a79432e9299cc0d9671bd39677be5618e8.svg b/_images/diag-7a08e5a79432e9299cc0d9671bd39677be5618e8.svg
new file mode 100644
index 0000000000..cabc9546bb
--- /dev/null
+++ b/_images/diag-7a08e5a79432e9299cc0d9671bd39677be5618e8.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="548px" preserveAspectRatio="none" style="width:337px;height:548px;background:#FFFFFF;" version="1.1" viewBox="0 0 337 548" width="337px" zoomAndPan="magnify"><defs/><g><!--class Configuration--><g class="entity" data-entity="Configuration" data-source-line="1" data-uid="ent0002" id="entity_Configuration"><rect fill="#F1F1F1" height="129.4844" rx [...]
\ No newline at end of file
diff --git a/_images/diag-892fd9dbd9ea6bece55c1d4078ae1de2edd5c689.svg b/_images/diag-892fd9dbd9ea6bece55c1d4078ae1de2edd5c689.svg
new file mode 100644
index 0000000000..0896cde16c
--- /dev/null
+++ b/_images/diag-892fd9dbd9ea6bece55c1d4078ae1de2edd5c689.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="MINDMAP" height="134px" preserveAspectRatio="none" style="width:349px;height:134px;background:#FFFFFF;" version="1.1" viewBox="0 0 349 134" width="349px" zoomAndPan="magnify"><defs/><g><rect fill="#F1F1F1" height="36.2969" rx="12.5" ry="12.5" style="stroke:#181818;stroke-width:1.5;" width="48.376" x="10" y="48.1484"/><text fill="#000000" font-family="sans-seri [...]
\ No newline at end of file
diff --git a/_images/diag-a15d9b3aaacbf863f81fe0dcb0ed21346b6c46ed.svg b/_images/diag-a15d9b3aaacbf863f81fe0dcb0ed21346b6c46ed.svg
new file mode 100644
index 0000000000..31e11da2e7
--- /dev/null
+++ b/_images/diag-a15d9b3aaacbf863f81fe0dcb0ed21346b6c46ed.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="ACTIVITY" height="275px" preserveAspectRatio="none" style="width:278px;height:275px;background:#FFFFFF;" version="1.1" viewBox="0 0 278 275" width="278px" zoomAndPan="magnify"><defs/><g><ellipse cx="135.8411" cy="20" fill="#222222" rx="10" ry="10" style="stroke:#222222;stroke-width:1;"/><rect fill="#F1F1F1" height="33.9688" rx="12.5" ry="12.5" style="stroke:#1 [...]
\ No newline at end of file
diff --git a/_images/diag-a51b68065f249459078382aa4c61888857f01b2c.svg b/_images/diag-a51b68065f249459078382aa4c61888857f01b2c.svg
new file mode 100644
index 0000000000..4d88a83c8f
--- /dev/null
+++ b/_images/diag-a51b68065f249459078382aa4c61888857f01b2c.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="DESCRIPTION" height="906px" preserveAspectRatio="none" style="width:1183px;height:906px;background:#FFFFFF;" version="1.1" viewBox="0 0 1183 906" width="1183px" zoomAndPan="magnify"><defs/><g><rect fill="#DDDDDD" height="104.7969" rx="7.5" ry="7.5" style="stroke:#000000;stroke-width:1;" width="214.0479" x="943.9321" y="12"/><rect fill="#90EE90" height="16.2969 [...]
\ No newline at end of file
diff --git a/_images/diag-d5122741a680d765fa3170a444015b615a1fdafd.svg b/_images/diag-d5122741a680d765fa3170a444015b615a1fdafd.svg
new file mode 100644
index 0000000000..4674e90658
--- /dev/null
+++ b/_images/diag-d5122741a680d765fa3170a444015b615a1fdafd.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="226px" preserveAspectRatio="none" style="width:790px;height:226px;background:#FFFFFF;" version="1.1" viewBox="0 0 790 226" width="790px" zoomAndPan="magnify"><defs/><g><!--class initial--><g class="entity" data-entity="initial" data-source-line="1" data-uid="ent0002" id="entity_initial"><rect fill="#F1F1F1" height="64.2969" rx="2.5" ry="2.5" sty [...]
\ No newline at end of file
diff --git a/_images/diag-fd71b342bbb89cd55a1ddb592976b9ac26b6348e.svg b/_images/diag-fd71b342bbb89cd55a1ddb592976b9ac26b6348e.svg
new file mode 100644
index 0000000000..36eba760cf
--- /dev/null
+++ b/_images/diag-fd71b342bbb89cd55a1ddb592976b9ac26b6348e.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="300px" preserveAspectRatio="none" style="width:663px;height:300px;background:#FFFFFF;" version="1.1" viewBox="0 0 663 300" width="663px" zoomAndPan="magnify"><defs/><g><!--class LoggerContext--><g class="entity" data-entity="LoggerContext" data-source-line="1" data-uid="ent0002" id="entity_LoggerContext"><rect fill="#F1F1F1" height="96.8906" rx= [...]
\ No newline at end of file
diff --git a/graalvm.html b/graalvm.html
index 07f5819d6d..2c34e3d953 100644
--- a/graalvm.html
+++ b/graalvm.html
@@ -406,63 +406,11 @@ For instance, <code>log4j-slf4j2-impl</code> <em>bridges</em> SLF4J calls to Log
 <div class="paragraph">
 <p>To make things a little bit more tangible, consider the following visualization of a typical Log4j Core installation with bridges for an application:</p>
 </div>
-<div class="literalblock kroki-error">
-<div class="title">Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-frame "Compile time" {
-  [Application] --&gt; [Log4j API] : logs to
-
-  [Log4j API] #Cyan
-
-  [SLF4J] #Cyan
-
-  [Library 1] --&gt; [SLF4J] : logs to
-  [Application] --&gt; [Library 1] : uses
-  [Application] --&gt; [Library 2] : uses
-  [Application] --&gt; [Library 3] : uses
-}
-
-frame Runtime {
-
-  [Log4j Core] &lt;.. [Log4j API] : is implemented by
-  [Log4j Core] &lt;.. (log4j2.xml) : is provided to
-  [Log4j Core] #LightGreen
-
-  [JPL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JPL-to-Log4j] #Yellow
-
-  [SLF4J-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [SLF4J-to-Log4j] #Yellow
-
-  [JUL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JUL-to-Log4j] #Yellow
-
-  frame JRE {
-    [JPL] #Cyan
-    [JUL] #Cyan
-  }
-
-}
-
-[Library 2] --&gt; [JUL] : logs to
-[Library 3] --&gt; [JPL] : logs to
-
-[JPL] ..&gt; [JPL-to-Log4j] : is implemented by
-[JUL] ..&gt; [JUL-to-Log4j] : is implemented by
-[SLF4J] ..&gt; [SLF4J-to-Log4j] : is implemented by
-
-legend top right
-  | &lt;#LightGreen&gt; | Logging implementation |
-  | &lt;#Yellow&gt; | Logging bridge |
-  | &lt;#Cyan&gt; | Logging API |
-  | &lt;size:18&gt;&lt;U+2192&gt;&lt;/size&gt; | Compile-time usage |
-  | &lt;size:18&gt;&lt;U+21E2&gt;&lt;/size&gt; | Runtime usage |
-endlegend
-
-@enduml</pre>
+<img src="_images/diag-a51b68065f249459078382aa4c61888857f01b2c.svg" alt="Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges">
 </div>
+<div class="title">Figure 1. Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
 </div>
 </div>
 </details>
diff --git a/hibernate.html b/hibernate.html
index 1896b89618..fea4dc23c0 100644
--- a/hibernate.html
+++ b/hibernate.html
@@ -395,63 +395,11 @@ For instance, <code>log4j-slf4j2-impl</code> <em>bridges</em> SLF4J calls to Log
 <div class="paragraph">
 <p>To make things a little bit more tangible, consider the following visualization of a typical Log4j Core installation with bridges for an application:</p>
 </div>
-<div class="literalblock kroki-error">
-<div class="title">Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-frame "Compile time" {
-  [Application] --&gt; [Log4j API] : logs to
-
-  [Log4j API] #Cyan
-
-  [SLF4J] #Cyan
-
-  [Library 1] --&gt; [SLF4J] : logs to
-  [Application] --&gt; [Library 1] : uses
-  [Application] --&gt; [Library 2] : uses
-  [Application] --&gt; [Library 3] : uses
-}
-
-frame Runtime {
-
-  [Log4j Core] &lt;.. [Log4j API] : is implemented by
-  [Log4j Core] &lt;.. (log4j2.xml) : is provided to
-  [Log4j Core] #LightGreen
-
-  [JPL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JPL-to-Log4j] #Yellow
-
-  [SLF4J-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [SLF4J-to-Log4j] #Yellow
-
-  [JUL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JUL-to-Log4j] #Yellow
-
-  frame JRE {
-    [JPL] #Cyan
-    [JUL] #Cyan
-  }
-
-}
-
-[Library 2] --&gt; [JUL] : logs to
-[Library 3] --&gt; [JPL] : logs to
-
-[JPL] ..&gt; [JPL-to-Log4j] : is implemented by
-[JUL] ..&gt; [JUL-to-Log4j] : is implemented by
-[SLF4J] ..&gt; [SLF4J-to-Log4j] : is implemented by
-
-legend top right
-  | &lt;#LightGreen&gt; | Logging implementation |
-  | &lt;#Yellow&gt; | Logging bridge |
-  | &lt;#Cyan&gt; | Logging API |
-  | &lt;size:18&gt;&lt;U+2192&gt;&lt;/size&gt; | Compile-time usage |
-  | &lt;size:18&gt;&lt;U+21E2&gt;&lt;/size&gt; | Runtime usage |
-endlegend
-
-@enduml</pre>
+<img src="_images/diag-a51b68065f249459078382aa4c61888857f01b2c.svg" alt="Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges">
 </div>
+<div class="title">Figure 1. Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
 </div>
 </div>
 </details>
diff --git a/javadoc/log4j-api/org/apache/logging/log4j/class-use/Level.html b/javadoc/log4j-api/org/apache/logging/log4j/class-use/Level.html
index 0cbf4adbff..663a748b93 100644
--- a/javadoc/log4j-api/org/apache/logging/log4j/class-use/Level.html
+++ b/javadoc/log4j-api/org/apache/logging/log4j/class-use/Level.html
@@ -2476,11 +2476,11 @@ loadScripts(document, 'script');</script>
 <div class="block">Constructs a <a href="../status/StatusConsoleListener.html" title="class in org.apache.logging.log4j.status"><code>StatusConsoleListener</code></a> instance using the supplied level and stream.</div>
 </div>
 <div class="col-first even-row-color"><code>&nbsp;</code></div>
-<div class="col-second even-row-color"><code><a href="../status/StatusData.html#%3Cinit%3E(java.lang.StackTraceElement,org.apache.logging.log4j.Level,org.apache.logging.log4j.message.Message,java.lang.Throwable,java.lang.String)" class="member-name-link">StatusData</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a>&nbsp;caller,
+<div class="col-second even-row-color"><code><a href="../status/StatusData.html#%3Cinit%3E(java.lang.StackTraceElement,org.apache.logging.log4j.Level,org.apache.logging.log4j.message.Message,java.lang.Throwable,java.lang.String)" class="member-name-link">StatusData</a><wbr>(@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a>&nbsp;caller,
  <a href="../Level.html" title="class in org.apache.logging.log4j">Level</a>&nbsp;level,
  <a href="../message/Message.html" title="interface in org.apache.logging.log4j.message">Message</a>&nbsp;message,
- <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a>&nbsp;throwable,
- <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;threadName)</code></div>
+ @Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a>&nbsp;throwable,
+ @Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;threadName)</code></div>
 <div class="col-last even-row-color">
 <div class="block">Constructs the instance using given properties.</div>
 </div>
diff --git a/javadoc/log4j-api/org/apache/logging/log4j/message/class-use/Message.html b/javadoc/log4j-api/org/apache/logging/log4j/message/class-use/Message.html
index 4669490603..b1e029c42c 100644
--- a/javadoc/log4j-api/org/apache/logging/log4j/message/class-use/Message.html
+++ b/javadoc/log4j-api/org/apache/logging/log4j/message/class-use/Message.html
@@ -1701,11 +1701,11 @@ loadScripts(document, 'script');</script>
 <div class="table-header col-second">Constructor</div>
 <div class="table-header col-last">Description</div>
 <div class="col-first even-row-color"><code>&nbsp;</code></div>
-<div class="col-second even-row-color"><code><a href="../../status/StatusData.html#%3Cinit%3E(java.lang.StackTraceElement,org.apache.logging.log4j.Level,org.apache.logging.log4j.message.Message,java.lang.Throwable,java.lang.String)" class="member-name-link">StatusData</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a>&nbsp;caller,
+<div class="col-second even-row-color"><code><a href="../../status/StatusData.html#%3Cinit%3E(java.lang.StackTraceElement,org.apache.logging.log4j.Level,org.apache.logging.log4j.message.Message,java.lang.Throwable,java.lang.String)" class="member-name-link">StatusData</a><wbr>(@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a>&nbsp;caller,
  <a href="../../Level.html" title="class in org.apache.logging.log4j">Level</a>&nbsp;level,
  <a href="../Message.html" title="interface in org.apache.logging.log4j.message">Message</a>&nbsp;message,
- <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a>&nbsp;throwable,
- <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;threadName)</code></div>
+ @Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a>&nbsp;throwable,
+ @Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;threadName)</code></div>
 <div class="col-last even-row-color">
 <div class="block">Constructs the instance using given properties.</div>
 </div>
diff --git a/javadoc/log4j-api/org/apache/logging/log4j/simple/package-summary.html b/javadoc/log4j-api/org/apache/logging/log4j/simple/package-summary.html
index 34af407dda..e611b49ee3 100644
--- a/javadoc/log4j-api/org/apache/logging/log4j/simple/package-summary.html
+++ b/javadoc/log4j-api/org/apache/logging/log4j/simple/package-summary.html
@@ -61,7 +61,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.24.1")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.simple</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Simple logging implementation. This is a rather minimal Log4j Provider that is used by default if no other Log4j
diff --git a/javadoc/log4j-api/org/apache/logging/log4j/status/StatusData.html b/javadoc/log4j-api/org/apache/logging/log4j/status/StatusData.html
index df44a8b717..22143c71a7 100644
--- a/javadoc/log4j-api/org/apache/logging/log4j/status/StatusData.html
+++ b/javadoc/log4j-api/org/apache/logging/log4j/status/StatusData.html
@@ -104,11 +104,11 @@ implements <a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializab
 <div class="summary-table two-column-summary">
 <div class="table-header col-first">Constructor</div>
 <div class="table-header col-last">Description</div>
-<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.StackTraceElement,org.apache.logging.log4j.Level,org.apache.logging.log4j.message.Message,java.lang.Throwable,java.lang.String)" class="member-name-link">StatusData</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a>&nbsp;caller,
+<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.StackTraceElement,org.apache.logging.log4j.Level,org.apache.logging.log4j.message.Message,java.lang.Throwable,java.lang.String)" class="member-name-link">StatusData</a><wbr>(@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a>&nbsp;caller,
  <a href="../Level.html" title="class in org.apache.logging.log4j">Level</a>&nbsp;level,
  <a href="../message/Message.html" title="interface in org.apache.logging.log4j.message">Message</a>&nbsp;message,
- <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a>&nbsp;throwable,
- <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;threadName)</code></div>
+ @Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a>&nbsp;throwable,
+ @Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;threadName)</code></div>
 <div class="col-last even-row-color">
 <div class="block">Constructs the instance using given properties.</div>
 </div>
@@ -146,7 +146,7 @@ implements <a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializab
 <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
 <div class="block">Returns the message associated with the event.</div>
 </div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a></code></div>
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a></code></div>
 <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getStackTraceElement()" class="member-name-link">getStackTraceElement</a>()</code></div>
 <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
 <div class="block">Returns the method that created the event.</div>
@@ -156,7 +156,7 @@ implements <a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializab
 <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
 <div class="block">Returns the name of the thread associated with the event.</div>
 </div>
-<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a></code></div>
+<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a></code></div>
 <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getThrowable()" class="member-name-link">getThrowable</a>()</code></div>
 <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
 <div class="block">Returns the error associated with the event.</div>
@@ -191,14 +191,11 @@ implements <a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializab
 <li>
 <section class="detail" id="&lt;init&gt;(java.lang.StackTraceElement,org.apache.logging.log4j.Level,org.apache.logging.log4j.message.Message,java.lang.Throwable,java.lang.String)">
 <h3>StatusData</h3>
-<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">StatusData</span><wbr><span class="parameters">(@Nullable
- <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a>&nbsp;caller,
+<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">StatusData</span><wbr><span class="parameters">(@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a>&nbsp;caller,
  <a href="../Level.html" title="class in org.apache.logging.log4j">Level</a>&nbsp;level,
  <a href="../message/Message.html" title="interface in org.apache.logging.log4j.message">Message</a>&nbsp;message,
- @Nullable
- <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a>&nbsp;throwable,
- @Nullable
- <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;threadName)</span></div>
+ @Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a>&nbsp;throwable,
+ @Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;threadName)</span></div>
 <div class="block">Constructs the instance using given properties.</div>
 <dl class="notes">
 <dt>Parameters:</dt>
@@ -251,8 +248,7 @@ implements <a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializab
 <li>
 <section class="detail" id="getStackTraceElement()">
 <h3>getStackTraceElement</h3>
-<div class="member-signature"><span class="annotations">@Nullable
-</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a></span>&nbsp;<span class="element-name">getStackTraceElement</span>()</div>
+<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a></span>&nbsp;<span class="element-name">getStackTraceElement</span>()</div>
 <div class="block">Returns the method that created the event.</div>
 <dl class="notes">
 <dt>Returns:</dt>
@@ -298,8 +294,7 @@ implements <a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializab
 <li>
 <section class="detail" id="getThrowable()">
 <h3>getThrowable</h3>
-<div class="member-signature"><span class="annotations">@Nullable
-</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a></span>&nbsp;<span class="element-name">getThrowable</span>()</div>
+<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a></span>&nbsp;<span class="element-name">getThrowable</span>()</div>
 <div class="block">Returns the error associated with the event.</div>
 <dl class="notes">
 <dt>Returns:</dt>
diff --git a/javadoc/log4j-api/org/apache/logging/log4j/status/StatusLogger.Config.html b/javadoc/log4j-api/org/apache/logging/log4j/status/StatusLogger.Config.html
index 2a4a6612b2..b93a43163c 100644
--- a/javadoc/log4j-api/org/apache/logging/log4j/status/StatusLogger.Config.html
+++ b/javadoc/log4j-api/org/apache/logging/log4j/status/StatusLogger.Config.html
@@ -101,7 +101,7 @@ loadScripts(document, 'script');</script>
 <div class="table-header col-last">Description</div>
 <div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(boolean,int,java.time.format.DateTimeFormatter)" class="member-name-link">Config</a><wbr>(boolean&nbsp;debugEnabled,
  int&nbsp;bufferCapacity,
- <a href="https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html" title="class or interface in java.time.format" class="external-link">DateTimeFormatter</a>&nbsp;instantFormatter)</code></div>
+ @Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html" title="class or interface in java.time.format" class="external-link">DateTimeFormatter</a>&nbsp;instantFormatter)</code></div>
 <div class="col-last even-row-color">
 <div class="block">Constructs an instance using the given properties.</div>
 </div>
@@ -146,8 +146,7 @@ loadScripts(document, 'script');</script>
 <h3>Config</h3>
 <div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">Config</span><wbr><span class="parameters">(boolean&nbsp;debugEnabled,
  int&nbsp;bufferCapacity,
- @Nullable
- <a href="https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html" title="class or interface in java.time.format" class="external-link">DateTimeFormatter</a>&nbsp;instantFormatter)</span></div>
+ @Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html" title="class or interface in java.time.format" class="external-link">DateTimeFormatter</a>&nbsp;instantFormatter)</span></div>
 <div class="block">Constructs an instance using the given properties.
  <b>Users should not create new instances, but use <a href="#getInstance()"><code>getInstance()</code></a> instead</b>!</div>
 <dl class="notes">
diff --git a/javadoc/log4j-api/org/apache/logging/log4j/status/package-summary.html b/javadoc/log4j-api/org/apache/logging/log4j/status/package-summary.html
index 283e7777fa..fcca797cfb 100644
--- a/javadoc/log4j-api/org/apache/logging/log4j/status/package-summary.html
+++ b/javadoc/log4j-api/org/apache/logging/log4j/status/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.23.1")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.status</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Status API for Log4j 2. Should not be used by typical applications performing logging but may be
diff --git a/javadoc/log4j-api/org/apache/logging/log4j/util/package-summary.html b/javadoc/log4j-api/org/apache/logging/log4j/util/package-summary.html
index 023c5b119c..78cbf43025 100644
--- a/javadoc/log4j-api/org/apache/logging/log4j/util/package-summary.html
+++ b/javadoc/log4j-api/org/apache/logging/log4j/util/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.25.0")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.util</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Internal utility classes for the Log4j 2 API. Note that the use of any classes in this package is not supported.
diff --git a/javadoc/log4j-api/serialized-form.html b/javadoc/log4j-api/serialized-form.html
index 0d21ad2d3e..cc9b88a474 100644
--- a/javadoc/log4j-api/serialized-form.html
+++ b/javadoc/log4j-api/serialized-form.html
@@ -1214,7 +1214,7 @@ loadScripts(document, 'script');</script>
 <ul class="block-list">
 <li class="block-list">
 <h5>caller</h5>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a> caller</pre>
+<pre>@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StackTraceElement.html" title="class or interface in java.lang" class="external-link">StackTraceElement</a> caller</pre>
 </li>
 <li class="block-list">
 <h5>instant</h5>
@@ -1238,7 +1238,7 @@ loadScripts(document, 'script');</script>
 </li>
 <li class="block-list">
 <h5>throwable</h5>
-<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a> throwable</pre>
+<pre>@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a> throwable</pre>
 </li>
 </ul>
 </section>
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/appender/db/jdbc/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/appender/db/jdbc/package-summary.html
index 14d5c8812a..cbeca42fda 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/appender/db/jdbc/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/appender/db/jdbc/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.20.1")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core.appender.db.jdbc</span></div>
 <section class="package-description" id="package-description">
 <div class="block">The JDBC Appender supports writing log events to a relational database using standard JDBC connections. You will need
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/config/builder/impl/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/config/builder/impl/package-summary.html
index de78961f44..0e9588897c 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/config/builder/impl/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/config/builder/impl/package-summary.html
@@ -61,7 +61,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.25.0")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core.config.builder.impl</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Configuration Builder Implementation.</div>
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/config/plugins/convert/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/config/plugins/convert/package-summary.html
index 0074db5f3e..dd1388aa87 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/config/plugins/convert/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/config/plugins/convert/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.24.0")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core.config.plugins.convert</span></div>
 <section class="package-description" id="package-description">
 <div class="block">TypeConverter plugins for converter strings into various types. These plugins are used for parsing plugin
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/config/plugins/util/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/config/plugins/util/package-summary.html
index 30bebfa0ac..717112b83a 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/config/plugins/util/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/config/plugins/util/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.20.2")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core.config.plugins.util</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Utility and manager classes for Log4j 2 plugins.</div>
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/StatusConfiguration.html b/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/StatusConfiguration.html
index d95fe3bf88..b07879fcf2 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/StatusConfiguration.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/StatusConfiguration.html
@@ -139,17 +139,17 @@ loadScripts(document, 'script');</script>
 <div class="block">Configures and initializes the StatusLogger using the configured options in this instance.</div>
 </div>
 <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></code></div>
-<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#withDestination(java.lang.String)" class="member-name-link">withDestination</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;destination)</code></div>
+<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#withDestination(java.lang.String)" class="member-name-link">withDestination</a><wbr>(@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;destination)</code></div>
 <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
 <div class="block">Sets the output of the <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/status/StatusLogger.html" title="class or interface in org.apache.logging.log4j.status" class="external-link"><code>StatusLogger</code></a> fallback listener.</div>
 </div>
 <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></code></div>
-<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#withStatus(java.lang.String)" class="member-name-link">withStatus</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;level)</code></div>
+<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#withStatus(java.lang.String)" class="member-name-link">withStatus</a><wbr>(@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;level)</code></div>
 <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
 <div class="block">Sets the level of the <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/status/StatusLogger.html" title="class or interface in org.apache.logging.log4j.status" class="external-link"><code>StatusLogger</code></a> fallback listener.</div>
 </div>
 <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></code></div>
-<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#withStatus(org.apache.logging.log4j.Level)" class="member-name-link">withStatus</a><wbr>(<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/Level.html" title="class or interface in org.apache.logging.log4j" class="external-link">Level</a>&nbsp;level)</code></div>
+<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#withStatus(org.apache.logging.log4j.Level)" class="member-name-link">withStatus</a><wbr>(@Nullable <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/Level.html" title="class or interface in org.apache.logging.log4j" class="external-link">Level</a>&nbsp;level)</code></div>
 <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
 <div class="block">Sets the level of the <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/status/StatusLogger.html" title="class or interface in org.apache.logging.log4j.status" class="external-link"><code>StatusLogger</code></a> fallback listener.</div>
 </div>
@@ -216,8 +216,7 @@ loadScripts(document, 'script');</script>
 <li>
 <section class="detail" id="withDestination(java.lang.String)">
 <h3>withDestination</h3>
-<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></span>&nbsp;<span class="element-name">withDestination</span><wbr><span class="parameters">(@Nullable
- <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;destination)</span></div>
+<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></span>&nbsp;<span class="element-name">withDestination</span><wbr><span class="parameters">(@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;destination)</span></div>
 <div class="block">Sets the output of the <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/status/StatusLogger.html" title="class or interface in org.apache.logging.log4j.status" class="external-link"><code>StatusLogger</code></a> fallback listener.
  <p>
  Accepted values are as follows:
@@ -241,8 +240,7 @@ loadScripts(document, 'script');</script>
 <li>
 <section class="detail" id="withStatus(java.lang.String)">
 <h3>withStatus</h3>
-<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></span>&nbsp;<span class="element-name">withStatus</span><wbr><span class="parameters">(@Nullable
- <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;level)</span></div>
+<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></span>&nbsp;<span class="element-name">withStatus</span><wbr><span class="parameters">(@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;level)</span></div>
 <div class="block">Sets the level of the <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/status/StatusLogger.html" title="class or interface in org.apache.logging.log4j.status" class="external-link"><code>StatusLogger</code></a> fallback listener.</div>
 <dl class="notes">
 <dt>Parameters:</dt>
@@ -255,8 +253,7 @@ loadScripts(document, 'script');</script>
 <li>
 <section class="detail" id="withStatus(org.apache.logging.log4j.Level)">
 <h3>withStatus</h3>
-<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></span>&nbsp;<span class="element-name">withStatus</span><wbr><span class="parameters">(@Nullable
- <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/Level.html" title="class or interface in org.apache.logging.log4j" class="external-link">Level</a>&nbsp;level)</span></div>
+<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></span>&nbsp;<span class="element-name">withStatus</span><wbr><span class="parameters">(@Nullable <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/Level.html" title="class or interface in org.apache.logging.log4j" class="external-link">Level</a [...]
 <div class="block">Sets the level of the <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/status/StatusLogger.html" title="class or interface in org.apache.logging.log4j.status" class="external-link"><code>StatusLogger</code></a> fallback listener.</div>
 <dl class="notes">
 <dt>Parameters:</dt>
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/class-use/StatusConfiguration.html b/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/class-use/StatusConfiguration.html
index 77157e566d..a8d5fc0e45 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/class-use/StatusConfiguration.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/class-use/StatusConfiguration.html
@@ -89,17 +89,17 @@ loadScripts(document, 'script');</script>
 <div class="table-header col-second">Method</div>
 <div class="table-header col-last">Description</div>
 <div class="col-first even-row-color"><code><a href="../StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></code></div>
-<div class="col-second even-row-color"><span class="type-name-label">StatusConfiguration.</span><code><a href="../StatusConfiguration.html#withDestination(java.lang.String)" class="member-name-link">withDestination</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;destination)</code></div>
+<div class="col-second even-row-color"><span class="type-name-label">StatusConfiguration.</span><code><a href="../StatusConfiguration.html#withDestination(java.lang.String)" class="member-name-link">withDestination</a><wbr>(@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;destination)</code></div>
 <div class="col-last even-row-color">
 <div class="block">Sets the output of the <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/status/StatusLogger.html" title="class or interface in org.apache.logging.log4j.status" class="external-link"><code>StatusLogger</code></a> fallback listener.</div>
 </div>
 <div class="col-first odd-row-color"><code><a href="../StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></code></div>
-<div class="col-second odd-row-color"><span class="type-name-label">StatusConfiguration.</span><code><a href="../StatusConfiguration.html#withStatus(java.lang.String)" class="member-name-link">withStatus</a><wbr>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;level)</code></div>
+<div class="col-second odd-row-color"><span class="type-name-label">StatusConfiguration.</span><code><a href="../StatusConfiguration.html#withStatus(java.lang.String)" class="member-name-link">withStatus</a><wbr>(@Nullable <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;level)</code></div>
 <div class="col-last odd-row-color">
 <div class="block">Sets the level of the <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/status/StatusLogger.html" title="class or interface in org.apache.logging.log4j.status" class="external-link"><code>StatusLogger</code></a> fallback listener.</div>
 </div>
 <div class="col-first even-row-color"><code><a href="../StatusConfiguration.html" title="class in org.apache.logging.log4j.core.config.status">StatusConfiguration</a></code></div>
-<div class="col-second even-row-color"><span class="type-name-label">StatusConfiguration.</span><code><a href="../StatusConfiguration.html#withStatus(org.apache.logging.log4j.Level)" class="member-name-link">withStatus</a><wbr>(<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/Level.html" title="class or interface in org.apache.logging.log4j" class="external-link">Level</a>&nbsp;level)</code></div>
+<div class="col-second even-row-color"><span class="type-name-label">StatusConfiguration.</span><code><a href="../StatusConfiguration.html#withStatus(org.apache.logging.log4j.Level)" class="member-name-link">withStatus</a><wbr>(@Nullable <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/Level.html" title="class or interface in org.apache.logging.log4j" class="external-link">Level</a>&nbsp;level)</code></div>
 <div class="col-last even-row-color">
 <div class="block">Sets the level of the <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/status/StatusLogger.html" title="class or interface in org.apache.logging.log4j.status" class="external-link"><code>StatusLogger</code></a> fallback listener.</div>
 </div>
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/package-summary.html
index 010f59fbb6..002817298f 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/config/status/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.20.2")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core.config.status</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Configuration classes for the <a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/status/StatusLogger.html" title="class or interface in org.apache.logging.log4j.status" class="external-link"><code>StatusLogger</code></a> API.</div>
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/filter/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/filter/package-summary.html
index 00dcc4acda..960bf6c14b 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/filter/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/filter/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.25.0")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core.filter</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Log4j 2 Filter support. <a href="../Filter.html" title="interface in org.apache.logging.log4j.core"><code>Filter</code></a> plugins should use the
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/jmx/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/jmx/package-summary.html
index 76c9531382..6a3ce3321a 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/jmx/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/jmx/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.23.0")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core.jmx</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Log4j 2 JMX support.</div>
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/net/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/net/package-summary.html
index c7d05fa963..8cb8481cea 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/net/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/net/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.20.3")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core.net</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Log4j 2 network support. This package (and subpackages) include support for:
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/net/ssl/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/net/ssl/package-summary.html
index 91f0574ba0..b5e1838373 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/net/ssl/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/net/ssl/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.20.3")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core.net.ssl</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Log4j 2 SSL support</div>
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/package-summary.html
index 64c46745b2..11e2c6582f 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.24.2")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Implementation of Log4j 2.</div>
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/tools/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/tools/package-summary.html
index b5d1389f32..0f42b451a6 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/tools/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/tools/package-summary.html
@@ -61,7 +61,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.20.1")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core.tools</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Log4j 2 command line tools.</div>
diff --git a/javadoc/log4j-core/org/apache/logging/log4j/core/util/package-summary.html b/javadoc/log4j-core/org/apache/logging/log4j/core/util/package-summary.html
index b8ef49d0e8..9e39cb67a9 100644
--- a/javadoc/log4j-core/org/apache/logging/log4j/core/util/package-summary.html
+++ b/javadoc/log4j-core/org/apache/logging/log4j/core/util/package-summary.html
@@ -65,7 +65,7 @@ loadScripts(document, 'script');</script>
 </div>
 <hr>
 <div class="package-signature"><span class="annotations">@Export
-@Version("2.25.0")
+@Version("2.26.0")
 </span>package <span class="element-name">org.apache.logging.log4j.core.util</span></div>
 <section class="package-description" id="package-description">
 <div class="block">Log4j 2 helper classes.</div>
diff --git a/log4j-jul.html b/log4j-jul.html
index 608a1a976d..1306a9bdce 100644
--- a/log4j-jul.html
+++ b/log4j-jul.html
@@ -418,63 +418,11 @@ For instance, <code>log4j-slf4j2-impl</code> <em>bridges</em> SLF4J calls to Log
 <div class="paragraph">
 <p>To make things a little bit more tangible, consider the following visualization of a typical Log4j Core installation with bridges for an application:</p>
 </div>
-<div class="literalblock kroki-error">
-<div class="title">Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-frame "Compile time" {
-  [Application] --&gt; [Log4j API] : logs to
-
-  [Log4j API] #Cyan
-
-  [SLF4J] #Cyan
-
-  [Library 1] --&gt; [SLF4J] : logs to
-  [Application] --&gt; [Library 1] : uses
-  [Application] --&gt; [Library 2] : uses
-  [Application] --&gt; [Library 3] : uses
-}
-
-frame Runtime {
-
-  [Log4j Core] &lt;.. [Log4j API] : is implemented by
-  [Log4j Core] &lt;.. (log4j2.xml) : is provided to
-  [Log4j Core] #LightGreen
-
-  [JPL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JPL-to-Log4j] #Yellow
-
-  [SLF4J-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [SLF4J-to-Log4j] #Yellow
-
-  [JUL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JUL-to-Log4j] #Yellow
-
-  frame JRE {
-    [JPL] #Cyan
-    [JUL] #Cyan
-  }
-
-}
-
-[Library 2] --&gt; [JUL] : logs to
-[Library 3] --&gt; [JPL] : logs to
-
-[JPL] ..&gt; [JPL-to-Log4j] : is implemented by
-[JUL] ..&gt; [JUL-to-Log4j] : is implemented by
-[SLF4J] ..&gt; [SLF4J-to-Log4j] : is implemented by
-
-legend top right
-  | &lt;#LightGreen&gt; | Logging implementation |
-  | &lt;#Yellow&gt; | Logging bridge |
-  | &lt;#Cyan&gt; | Logging API |
-  | &lt;size:18&gt;&lt;U+2192&gt;&lt;/size&gt; | Compile-time usage |
-  | &lt;size:18&gt;&lt;U+21E2&gt;&lt;/size&gt; | Runtime usage |
-endlegend
-
-@enduml</pre>
+<img src="_images/diag-a51b68065f249459078382aa4c61888857f01b2c.svg" alt="Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges">
 </div>
+<div class="title">Figure 1. Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
 </div>
 </div>
 </details>
diff --git a/manual/appenders/rolling-file.html b/manual/appenders/rolling-file.html
index ec58cad4e7..bebd9c1778 100644
--- a/manual/appenders/rolling-file.html
+++ b/manual/appenders/rolling-file.html
@@ -1609,50 +1609,9 @@ It is <strong>not</strong> the default strategy of Log4j 2.</p>
 <div class="paragraph">
 <p>Assuming <code>min="1"</code> and <code>max="3"</code> the rotation of the log files is represented in the graph below:</p>
 </div>
-<div class="literalblock kroki-error">
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-class "Initial status" as initial {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-}
-class "1st rollover" as first {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-}
-class "2nd rollover" as second {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-  app.2.log
-}
-class "3rd rollover" as third {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-  app.2.log
-  app.3.log
-}
-class "4th rollover" as fourth {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-  app.2.log
-  app.3.log
-}
-
-object "Delete file" as delete
-
-initial::app.log -&gt; first::app.1.log
-
-first::app.log -&gt; second::app.1.log
-first::app.1.log -&gt; second::app.2.log
-
-second::app.log -&gt; third::app.1.log
-second::app.1.log -&gt; third::app.2.log
-second::app.2.log -&gt; third::app.3.log
-
-third::app.log -&gt; fourth::app.1.log
-third::app.1.log -&gt; fourth::app.2.log
-third::app.2.log -&gt; fourth::app.3.log
-third::app.3.log -[#red]-&gt; delete
-@enduml</pre>
+<img src="../../_images/diag-d5122741a680d765fa3170a444015b615a1fdafd.svg" alt="Diagram">
 </div>
 </div>
 </dd>
@@ -1680,50 +1639,9 @@ third::app.3.log -[#red]-&gt; delete
 <div class="paragraph">
 <p>Assuming <code>min="1"</code> and <code>max="3"</code> the rotation of the log files is represented in the graph below:</p>
 </div>
-<div class="literalblock kroki-error">
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-class "Initial status" as initial {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-}
-class "1st rollover" as first {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-}
-class "2nd rollover" as second {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-  app.2.log
-}
-class "3rd rollover" as third {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-  app.2.log
-  app.3.log
-}
-class "4th rollover" as fourth {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-  app.2.log
-  app.3.log
-}
-
-object "Delete file" as delete
-
-initial::app.log -&gt; first::app.1.log
-
-first::app.log -&gt; second::app.2.log
-first::app.1.log -&gt; second::app.1.log
-
-second::app.log -&gt; third::app.3.log
-second::app.1.log -&gt; third::app.1.log
-second::app.2.log -&gt; third::app.2.log
-
-third::app.log -&gt; fourth::app.3.log
-third::app.1.log -[#red]-&gt; delete
-third::app.2.log -&gt; fourth::app.1.log
-third::app.3.log -&gt; fourth::app.2.log
-@enduml</pre>
+<img src="../../_images/diag-35cc4e8101ffe76d0edc44ed334a6273018dc51b.svg" alt="Diagram">
 </div>
 </div>
 </dd>
@@ -1736,49 +1654,9 @@ third::app.3.log -&gt; fourth::app.2.log
 <div class="paragraph">
 <p>Using the <code>nomax</code> strategy no files will ever be deleted and newer archive files will be assigned increasing index numbers, starting from <code>min</code>.</p>
 </div>
-<div class="literalblock kroki-error">
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-class "Initial status" as initial {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-}
-class "1st rollover" as first {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-}
-class "2nd rollover" as second {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-  app.2.log
-}
-class "3rd rollover" as third {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-  app.2.log
-  app.3.log
-}
-class "4th rollover" as fourth {
-  &lt;color:green&gt;app.log&lt;/color&gt;
-  app.1.log
-  app.2.log
-  app.3.log
-  app.4.log
-}
-
-initial::app.log -&gt; first::app.1.log
-
-first::app.log -&gt; second::app.2.log
-first::app.1.log -&gt; second::app.1.log
-
-second::app.log -&gt; third::app.3.log
-second::app.1.log -&gt; third::app.1.log
-second::app.2.log -&gt; third::app.2.log
-
-third::app.log -&gt; fourth::app.4.log
-third::app.1.log -&gt; fourth::app.1.log
-third::app.2.log -&gt; fourth::app.2.log
-third::app.3.log -&gt; fourth::app.3.log
-@enduml</pre>
+<img src="../../_images/diag-768e5e02508ea736d8901892b519a6d3a7a770ab.svg" alt="Diagram">
 </div>
 </div>
 </dd>
diff --git a/manual/architecture.html b/manual/architecture.html
index b93ca570ea..62e653241f 100644
--- a/manual/architecture.html
+++ b/manual/architecture.html
@@ -359,146 +359,11 @@
 In this section we will try to explain major pillars its architecture stands on.
 An overview these major classes can be depicted as follows:</p>
 </div>
-<div id="architecture-diagram" class="literalblock kroki-error">
-<div class="title">An overview of major classes and their relation</div>
+<div id="architecture-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-class LoggerContext {
-  Configuration config
-  Logger[] loggers
-  Logger getLogger(String name)
-}
-
-note left of LoggerContext {
-  Anchor for the logging system
-}
-
-LoggerContext --&gt; "0..*" Logger
-
-package "Configuration" as c {
-
-    class Configuration {
-      Appender[] appenders
-      Filter filter
-      LoggerConfig[] loggerConfigs
-      LoggerConfig getLoggerConfig(String name)
-      StrSubstitutor substitutor
-    }
-
-    note left of Configuration
-      Encapsulates components compiled
-      from a user-provided configuration
-      file (e.g., `log4j2.xml`)
-    end note
-
-    Configuration --&gt; Filter
-
-    Configuration --&gt; "0..*" Appender
-
-    Configuration --&gt; "0..*" LoggerConfig
-
-    Configuration --&gt; StrSubstitutor
-
-    class Appender {
-      AbstractManager manager
-      Layout layout
-      Filter filter
-      void append(LogEvent)
-    }
-
-    Appender --&gt; Layout
-
-    Appender --&gt; Filter
-
-    class Layout {
-      byte[] encode(LogEvent)
-    }
-
-    class Filter {
-      Result filter(LogEvent)
-    }
-
-    note right of Filter
-      Note that a `Filter` can
-      be provided at 4 levels:
-      1. `Configuration`
-      2. `LoggerConfig`
-      3. `AppenderControl`
-      4. `Appender`
-    end note
-
-    class LoggerConfig {
-      AppenderControl[] appenderControls
-      Level level
-      Filter filter
-      void log(LogEvent)
-    }
-
-    LoggerConfig -[#green,thickness=6]-&gt; "0..*" AppenderControl
-
-    LoggerConfig --&gt; Filter
-
-    class AppenderControl {
-      Appender appender
-      Filter filter
-      void append(LogEvent)
-    }
-
-    note right of AppenderControl
-      Decorates an `Appender`
-      with a `Filter`
-    end note
-
-    AppenderControl -[#green,thickness=6]-&gt; Appender
-
-    AppenderControl --&gt; Filter
-
-    class StrSubstitutor {
-      Interpolator interpolator
-      String replace(String input)
-    }
-
-    note right of StrSubstitutor
-      Responsible for
-      property substitution
-      (e.g., `${env:USER}`)
-    end note
-
-    StrSubstitutor --&gt; Interpolator
-
-    class Interpolator {
-      StrLookup[] lookups
-      String lookup(String input)
-    }
-
-    Interpolator --&gt; "0..*" StrLookup
-
-    class StrLookup {
-      String lookup(String input)
-    }
-}
-
-LoggerContext --&gt; Configuration
-
-class Logger {
-  void log(Level level, Message message)
-}
-
-note right of Logger
-  The main API entry point
-  users interact with
-end note
-
-Logger -[#green,thickness=6]-&gt; LoggerConfig : delegates `log()`
-
-class AbstractManager {
-}
-
-Appender -[#green,thickness=6]-&gt; AbstractManager
-
-@enduml</pre>
+<img src="../_images/diag-3f8a04c810525cc09a5e7564abf3aa14ed1f7c81.svg" alt="An overview of major classes and their relation">
 </div>
+<div class="title">Figure 1. An overview of major classes and their relation</div>
 </div>
 <div class="paragraph">
 <p>At a high level,</p>
@@ -522,7 +387,7 @@ Both can be created directly (i.e., programmatically) or indirectly at first int
 <p><a href="#Configuration"><code>Configuration</code></a> is equipped with <a href="#StrSubstitutor"><code>StrSubstitutor</code> et al.</a> to allow property substitution in <code>String</code>-typed values.</p>
 </li>
 <li>
-<p>A typical <code>log()</code> call triggers a chain of invocations through classes <code>Logger</code>, <code>LoggerConfig</code>, <code>AppenderControl</code>, <code>Appender</code>, and <code>AbstractManager</code> in order – this is depicted using green arrows in <a href="#architecture-diagram">An overview of major classes and their relation</a>.</p>
+<p>A typical <code>log()</code> call triggers a chain of invocations through classes <code>Logger</code>, <code>LoggerConfig</code>, <code>AppenderControl</code>, <code>Appender</code>, and <code>AbstractManager</code> in order – this is depicted using green arrows in <a href="#architecture-diagram">Figure 1</a>.</p>
 </li>
 </ul>
 </div>
@@ -538,35 +403,11 @@ Both can be created directly (i.e., programmatically) or indirectly at first int
 <p>The <a href="../javadoc/log4j-api/org/apache/logging/log4j/spi/LoggerContext.html"><code>LoggerContext</code></a> acts as the anchor point for the logging system.
 It is associated with an active <a href="#Configuration"><code>Configuration</code></a> and is primarily responsible for instantiating <a href="#Logger"><code>Logger</code></a>s.</p>
 </div>
-<div id="LoggerContext-diagram" class="literalblock kroki-error">
-<div class="title"><code>LoggerContext</code> and other directly related classes</div>
+<div id="LoggerContext-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-class LoggerContext #line.bold {
-  Configuration config
-  Logger[] loggers
-  Logger getLogger(String name)
-}
-
-LoggerContext --&gt; Configuration
-
-LoggerContext --&gt; "0..*" Logger
-
-class Configuration {
-  Appender[] appenders
-  Filter filter
-  LoggerConfig[] loggerConfigs
-  LoggerConfig getLoggerConfig(String name)
-  StrSubstitutor substitutor
-}
-
-class Logger {
-  void log(Level level, Message message)
-}
-
-@enduml</pre>
+<img src="../_images/diag-fd71b342bbb89cd55a1ddb592976b9ac26b6348e.svg" alt="`LoggerContext` and other directly related classes">
 </div>
+<div class="title">Figure 2. <code>LoggerContext</code> and other directly related classes</div>
 </div>
 <div class="paragraph">
 <p>In most cases, applications have a single global <code>LoggerContext</code>.
@@ -582,58 +423,11 @@ Refer to <a href="../jakarta.html#log-separation" class="xref page">Log Separati
 <p>Every <a href="#LoggerContext"><code>LoggerContext</code></a> is associated with an active <a href="../javadoc/log4j-core/org/apache/logging/log4j/core/config/Configuration.html"><code>Configuration</code></a>.
 It models the configuration of all appenders, layouts, filters, loggers, and contains the reference to <a href="#StrSubstitutor"><code>StrSubstitutor</code> et al.</a>.</p>
 </div>
-<div id="Configuration-diagram" class="literalblock kroki-error">
-<div class="title"><code>Configuration</code> and other directly related classes</div>
+<div id="Configuration-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-class LoggerContext {
-  Configuration config
-  Logger[] loggers
-  Logger getLogger(String name)
-}
-
-LoggerContext --&gt; Configuration
-
-class Configuration #line.bold {
-  Appender[] appenders
-  Filter filter
-  LoggerConfig[] loggerConfigs
-  LoggerConfig getLoggerConfig(String name)
-  StrSubstitutor substitutor
-}
-
-Configuration --&gt; "0..*" Filter
-
-Configuration --&gt; "0..*" Appender
-
-Configuration --&gt; "0..*" LoggerConfig
-
-Configuration --&gt; StrSubstitutor
-
-class Appender {
-  Layout layout
-  void append(LogEvent)
-}
-
-class Filter {
-  Result filter(LogEvent)
-}
-
-class LoggerConfig {
-  AppenderRef[] appenderRefs
-  AppenderControl[] appenderControls
-  Level level
-  Filter filter
-  void log(LogEvent)
-}
-
-class StrSubstitutor {
-  Interpolator interpolator
-  String replace(String input)
-}
-@enduml</pre>
+<img src="../_images/diag-5ffe377615be9b0375b26533bbf7b10507dc946b.svg" alt="`Configuration` and other directly related classes">
 </div>
+<div class="title">Figure 3. <code>Configuration</code> and other directly related classes</div>
 </div>
 <div class="paragraph">
 <p>Configuration of Log4j Core is typically done at application initialization.
@@ -670,41 +464,11 @@ Threads that already started processing a log event will either:</p>
 </li>
 </ul>
 </div>
-<div class="literalblock kroki-error">
-<div class="title">Overview of the reconfiguration process</div>
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-left to right direction
-
-package LoggerContext {
-    object Logger
-
-    package "New Configuration" as c2 {
-        object "LoggerConfig" as lc2
-        object "AppenderControl" as ac2
-        object "Appender" as app2
-    }
-
-    package "Old Configuration" as c1 {
-        object "LoggerConfig" as lc1
-        object "AppenderControl" as ac1
-        object "Appender" as app1
-    }
-}
-
-object AbstractManager
-
-Logger ..&gt; lc1
-lc1 --&gt; ac1
-ac1 --&gt; app1
-app1 --&gt; AbstractManager
-
-Logger --&gt; lc2
-lc2 --&gt; ac2
-ac2 --&gt; app2
-app2 --&gt; AbstractManager
-@enduml</pre>
+<img src="../_images/diag-01168003b98f120d2f0736e5172de8e1218f189e.svg" alt="Overview of the reconfiguration process">
 </div>
+<div class="title">Figure 4. Overview of the reconfiguration process</div>
 </div>
 </div>
 </div>
@@ -718,35 +482,11 @@ They are created by calling one of the <code>getLogger()</code> methods of <a hr
 The <code>Logger</code> itself performs no direct actions.
 It simply has a name and is associated with a <a href="#LoggerConfig"><code>LoggerConfig</code></a>.</p>
 </div>
-<div id="Logger-diagram" class="literalblock kroki-error">
-<div class="title"><code>Logger</code> and other directly related classes</div>
+<div id="Logger-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-class LoggerContext {
-  Configuration config
-  Logger[] loggers
-  Logger getLogger(String name)
-}
-
-LoggerContext --&gt; "0..*" Logger
-
-class LoggerConfig {
-  AppenderRef[] appenderRefs
-  AppenderControl[] appenderControls
-  Level level
-  Filter filter
-  void log(LogEvent)
-}
-
-class Logger #line.bold {
-  void log(Level level, Message message)
-}
-
-Logger -[#green,thickness=6]-&gt; LoggerConfig : delegates `log()`
-
-@enduml</pre>
+<img src="../_images/diag-77a13b00749af95e3ed0eefd605a73f25d70973c.svg" alt="`Logger` and other directly related classes">
 </div>
+<div class="title">Figure 5. <code>Logger</code> and other directly related classes</div>
 </div>
 <div class="paragraph">
 <p>The hierarchy between <a href="#LoggerConfig"><code>LoggerConfig</code></a>s, implies the very same hierarchy between <code>Logger</code>s too.
@@ -784,59 +524,11 @@ A <code>LoggerConfig</code> essentially contains</p>
 </li>
 </ul>
 </div>
-<div id="LoggerConfig-diagram" class="literalblock kroki-error">
-<div class="title"><code>LoggerConfig</code> and other directly related classes</div>
+<div id="LoggerConfig-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-class Configuration {
-  Appender[] appenders
-  Filter filter
-  LoggerConfig[] loggerConfigs
-  LoggerConfig getLoggerConfig(String name)
-  StrSubstitutor substitutor
-}
-
-Configuration --&gt; "0..*" LoggerConfig
-
-class Filter {
-  Result filter(LogEvent)
-}
-
-class LoggerConfig #line.bold {
-  AppenderRef[] appenderRefs
-  AppenderControl[] appenderControls
-  Level level
-  Filter filter
-  void log(LogEvent)
-}
-
-LoggerConfig --&gt; "0..*" AppenderRef
-
-LoggerConfig -[#green,thickness=6]-&gt; "0..*" AppenderControl
-
-LoggerConfig --&gt; Filter
-
-class AppenderRef {
-  String appenderName
-  Level level
-  Filter filter
-}
-
-class AppenderControl {
-  Appender appender
-  Filter filter
-  void append(LogEvent)
-}
-
-class Logger {
-  void log(Level level, Message message)
-}
-
-Logger -[#green,thickness=6]-&gt; LoggerConfig : delegates `log()`
-
-@enduml</pre>
+<img src="../_images/diag-73365a4d8197b5441a98fd1d661b07760da178be.svg" alt="`LoggerConfig` and other directly related classes">
 </div>
+<div class="title">Figure 6. <code>LoggerConfig</code> and other directly related classes</div>
 </div>
 <div class="sect2">
 <h3 id="logger-hierarchy"><a class="anchor" href="#logger-hierarchy"></a>Logger hierarchy</h3>
@@ -845,19 +537,13 @@ Logger -[#green,thickness=6]-&gt; LoggerConfig : delegates `log()`
 A <code>LoggerConfig</code> called <code>child</code> is said to be parented by <code>parent</code>, if <code>parent</code> has the <em>longest prefix match</em> on name.
 This match is case-sensitive and performed after tokenizing the name by splitting it from <code>.</code> (dot) characters.
 For a positive name match, tokens must match exhaustively.
-See <a href="#logger-hiearchy-diagram">Example hierarchy of loggers named <code>X</code>, <code>X.Y</code>, <code>X.Y.Z</code>, and <code>X.YZ</code></a> for an example.</p>
+See <a href="#logger-hiearchy-diagram">Figure 7</a> for an example.</p>
 </div>
-<div id="logger-hiearchy-diagram" class="literalblock kroki-error">
-<div class="title">Example hierarchy of loggers named <code>X</code>, <code>X.Y</code>, <code>X.Y.Z</code>, and <code>X.YZ</code></div>
+<div id="logger-hiearchy-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startmindmap
-* root
-** X
-*** X.Y
-**** X.Y.Z
-*** X.YZ
-@endmindmap</pre>
+<img src="../_images/diag-892fd9dbd9ea6bece55c1d4078ae1de2edd5c689.svg" alt="Example hierarchy of loggers named `X`, `X.Y`, `X.Y.Z`, and `X.YZ`">
 </div>
+<div class="title">Figure 7. Example hierarchy of loggers named <code>X</code>, <code>X.Y</code>, <code>X.Y.Z</code>, and <code>X.YZ</code></div>
 </div>
 <div class="paragraph">
 <p>If a <code>LoggerConfig</code> is not provided an explicit level, it will be inherited from its parent.
@@ -1099,57 +785,11 @@ That is, we will examine the effective level of a <code>Logger</code> in various
 <div class="paragraph">
 <p>In addition to <a href="#LoggerConfig">the level-based filtering facilitated by <code>LoggerConfig</code></a>, Log4j provides <a href="../javadoc/log4j-core/org/apache/logging/log4j/core/Filter.html"><code>Filter</code></a>s to evaluate the parameters of a logging call (i.e., context-wide filter) or a log event, and decide if it should be processed further in the pipeline.</p>
 </div>
-<div id="Filter-diagram" class="literalblock kroki-error">
-<div class="title"><code>Filter</code> and other directly related classes</div>
+<div id="Filter-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-class Configuration {
-  Appender[] appenders
-  Filter filter
-  LoggerConfig[] loggerConfigs
-  LoggerConfig getLoggerConfig(String name)
-  StrSubstitutor substitutor
-}
-
-Configuration --&gt; Filter
-
-Configuration --&gt; "0..*" LoggerConfig
-
-class Filter #line.bold {
-  Result filter(LogEvent)
-}
-
-class LoggerConfig {
-  AppenderRef[] appenderRefs
-  AppenderControl[] appenderControls
-  Level level
-  Filter filter
-  void log(LogEvent)
-}
-
-LoggerConfig --&gt; "0..*" AppenderRef
-
-LoggerConfig -[#green,thickness=6]-&gt; "0..*" AppenderControl
-
-LoggerConfig --&gt; Filter
-
-class AppenderRef {
-  String appenderName
-  Level level
-  Filter filter
-}
-
-class AppenderControl {
-  Filter filter
-}
-
-AppenderRef --&gt; Filter
-
-AppenderControl --&gt; Filter
-
-@enduml</pre>
+<img src="../_images/diag-581e854ee8ecdb00104bac5affda10a653d8f76d.svg" alt="`Filter` and other directly related classes">
 </div>
+<div class="title">Figure 8. <code>Filter</code> and other directly related classes</div>
 </div>
 <div class="paragraph">
 <p>Refer to <a href="filters.html" class="xref page">Filters</a> for further information.</p>
@@ -1164,74 +804,11 @@ AppenderControl --&gt; Filter
 While doing so, they typically use <a href="#Layout"><code>Layout</code></a>s to encode the log event.
 See <a href="appenders.html" class="xref page">Appenders</a> for the complete guide.</p>
 </div>
-<div id="Appender-diagram" class="literalblock kroki-error">
-<div class="title"><code>Appender</code> and other directly related classes</div>
+<div id="Appender-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-class Configuration {
-  Appender[] appenders
-  Filter filter
-  LoggerConfig[] loggerConfigs
-  LoggerConfig getLoggerConfig(String name)
-  StrSubstitutor substitutor
-}
-
-Configuration --&gt; "0..*" Filter
-
-Configuration --&gt; "0..*" Appender
-
-Configuration --&gt; "0..*" LoggerConfig
-
-class Appender #line.bold {
-  Layout layout
-  void append(LogEvent)
-}
-
-Appender -[#green,thickness=6]-&gt; Layout
-
-class Layout {
-  byte[] encode(LogEvent)
-}
-
-class Filter {
-  Result filter(LogEvent)
-}
-
-class LoggerConfig {
-  AppenderRef[] appenderRefs
-  AppenderControl[] appenderControls
-  Level level
-  Filter filter
-  void log(LogEvent)
-}
-
-LoggerConfig --&gt; "0..*" AppenderRef
-
-LoggerConfig -[#green,thickness=6]-&gt; "0..*" AppenderControl
-
-LoggerConfig --&gt; Filter
-
-class AppenderRef {
-  String appenderName
-  Level level
-  Filter filter
-}
-
-AppenderRef --&gt; Filter
-
-class AppenderControl {
-  Appender appender
-  Filter filter
-  void append(LogEvent)
-}
-
-AppenderControl -[#green,thickness=6]-&gt; Appender
-
-AppenderControl --&gt; Filter
-
-@enduml</pre>
+<img src="../_images/diag-63d449f3bcd24cfa522a41f6e2f545416de30322.svg" alt="`Appender` and other directly related classes">
 </div>
+<div class="title">Figure 9. <code>Appender</code> and other directly related classes</div>
 </div>
 <div class="paragraph">
 <p>An <code>Appender</code> can be added to a <a href="#Logger"><code>Logger</code></a> by calling the <a href="../javadoc/log4j-core/org/apache/logging/log4j/core/config/Configuration.html#addLoggerAppender(org.apache.logging.log4j.core.Logger,%20org.apache.logging.log4j.core.Appender)"><code>addLoggerAppender()</code></a> method of the current <a href="#Configuration"><code>Configuration</code></a>.
@@ -1254,25 +831,17 @@ However, if an ancestor of the <code>LoggerConfig</code> associated with <code>L
 <details>
 <summary class="title">Click for an example on appender additivity</summary>
 <div class="content">
-<div id="appender-additivity-diagram" class="literalblock kroki-error">
-<div class="title">Example hierarchy of logger configurations to demonstrate appender additivity</div>
+<div id="appender-additivity-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startmindmap
-* root
-** A
-*** A.B1 (additivity=false)
-**** A.B1.C
-***** A.B1.C.D
-*** A.B2.C
-**** A.B2.C.D (additivity=false)
-@endmindmap</pre>
+<img src="../_images/diag-58c484caf8cd616db4f1c7ed31b51c123b5859d4.svg" alt="Example hierarchy of logger configurations to demonstrate appender additivity">
 </div>
+<div class="title">Figure 10. Example hierarchy of logger configurations to demonstrate appender additivity</div>
 </div>
 <div class="paragraph">
-<p>In <a href="#appender-additivity-diagram">Example hierarchy of logger configurations to demonstrate appender additivity</a>, the effective appenders for each logger configuration are as follows:</p>
+<p>In <a href="#appender-additivity-diagram">Figure 10</a>, the effective appenders for each logger configuration are as follows:</p>
 </div>
 <table class="tableblock frame-all grid-all stretch">
-<caption class="title">Table 6. Effective appenders of logger configurations in <a href="#appender-additivity-diagram">Example hierarchy of logger configurations to demonstrate appender additivity</a></caption>
+<caption class="title">Table 6. Effective appenders of logger configurations in <a href="#appender-additivity-diagram">Figure 10</a></caption>
 <colgroup>
 <col style="width: 14.2857%;">
 <col style="width: 14.2857%;">
@@ -1404,24 +973,11 @@ Since during a <a href="#reconfiguration">reconfiguration event</a> multiple ins
 <div class="paragraph">
 <p>An <a href="#Appender"><code>Appender</code></a> uses a <strong>layout</strong> to encode a <a href="../javadoc/log4j-core/org/apache/logging/log4j/core/LogEvent.html"><code>LogEvent</code></a> into a form that meets the needs of whatever will be consuming the log event.</p>
 </div>
-<div id="Layout-diagram" class="literalblock kroki-error">
-<div class="title"><code>Layout</code> and other directly related classes</div>
+<div id="Layout-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-class Appender {
-  Layout layout
-  void append(LogEvent)
-}
-
-Appender -[#green,thickness=6]-&gt; Layout
-
-class Layout #line.bold {
-  byte[] encode(LogEvent)
-}
-
-@enduml</pre>
+<img src="../_images/diag-232cdf1d44336897239fa03f6521cc730f38f32d.svg" alt="`Layout` and other directly related classes">
 </div>
+<div class="title">Figure 11. <code>Layout</code> and other directly related classes</div>
 </div>
 <div class="paragraph">
 <p>Refer to <a href="layouts.html" class="xref page">Layouts</a> for details.</p>
@@ -1436,41 +992,11 @@ class Layout #line.bold {
 It accepts an <a href="../javadoc/log4j-core/org/apache/logging/log4j/core/lookup/Interpolator.html"><code>Interpolator</code></a> to determine if a key maps to a certain value.
 <code>Interpolator</code> is essentially a facade delegating to multiple <a href="../javadoc/log4j-core/org/apache/logging/log4j/core/lookup/StrLookup.html"><code>StrLookup</code></a> (aka. <em>lookup</em>) implementations.</p>
 </div>
-<div id="StrSubstitutor-diagram" class="literalblock kroki-error">
-<div class="title"><code>StrSubstitutor</code> et al. and other directly related classes</div>
+<div id="StrSubstitutor-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-class Configuration {
-  Appender[] appenders
-  Filter[] filters
-  LoggerConfig[] loggerConfigs
-  LoggerConfig getLoggerConfig(String name)
-  StrSubstitutor substitutor
-}
-
-Configuration --&gt; StrSubstitutor
-
-class StrSubstitutor #line.bold {
-  Interpolator interpolator
-  String replace(String input)
-}
-
-StrSubstitutor --&gt; Interpolator
-
-class Interpolator {
-  StrLookup[] lookups
-  String lookup(String input)
-}
-
-Interpolator --&gt; "0..*" StrLookup
-
-class StrLookup {
-  String lookup(String input)
-}
-
-@enduml</pre>
+<img src="../_images/diag-7a08e5a79432e9299cc0d9671bd39677be5618e8.svg" alt="`StrSubstitutor` et al. and other directly related classes">
 </div>
+<div class="title">Figure 12. <code>StrSubstitutor</code> et al. and other directly related classes</div>
 </div>
 <div class="paragraph">
 <p>See <a href="configuration.html#property-substitution" class="xref page">how property substitution works</a> and <a href="lookups.html" class="xref page">the predefined lookups</a> for further information.</p>
diff --git a/manual/filters.html b/manual/filters.html
index 2f26c527bf..64fedce47c 100644
--- a/manual/filters.html
+++ b/manual/filters.html
@@ -452,31 +452,9 @@ e.g., log event creation, population of context data, formatting, transfer throu
 </div>
 <div class="sect2">
 <h3 id="logger-stage"><a class="anchor" href="#logger-stage"></a>1. <code>Logger</code> stage</h3>
-<div class="literalblock kroki-error">
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-start
-group Logger
-
-:A Logger method;
-
-switch (Apply global filter)
-case (DENY)
-    #pink:Discard;
-    detach
-case (ACCEPT)
-case (NEUTRAL)
-    if (Is less severe than logger level?) then (yes)
-        #pink:Discard;
-        detach
-    else (no)
-        ' The label improves spacing
-        label a1
-    endif
-endswitch
-end group
-:Create LogEvent;
-stop</pre>
+<img src="../_images/diag-2158b7cc88b372c32a9592f8cdbc1cc926bb8b80.svg" alt="Diagram">
 </div>
 </div>
 <div class="paragraph">
@@ -548,29 +526,9 @@ or
 </div>
 <div class="sect2">
 <h3 id="logger-config-stage"><a class="anchor" href="#logger-config-stage"></a>2. <code>LoggerConfig</code> stage</h3>
-<div class="literalblock kroki-error">
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-start
-:LogEvent;
-
-group LoggerConfig
-repeat
-
-:LoggerConfig#log();
-
-if (Apply logger filter) then (DENY)
-    #pink:Discard;
-    detach
-else (not DENY)
-    ' The label improves spacing
-    label a1
-endif
-repeat while (Go to parent logger?) is (yes)
--&gt; no;
-end group
-stop
-@enduml</pre>
+<img src="../_images/diag-4d55aeb99a0ae8707b4121b1f76e9544af16b3c4.svg" alt="Diagram">
 </div>
 </div>
 <div class="paragraph">
@@ -585,33 +543,9 @@ until it reaches the logger that references the chosen appender.</p>
 </div>
 <div class="sect2">
 <h3 id="appender-control-stage"><a class="anchor" href="#appender-control-stage"></a>3. <code>AppenderControl</code> stage</h3>
-<div class="literalblock kroki-error">
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-start
-:LogEvent;
-
-group AppenderControl
-
-:AppenderControl#callAppender();
-
-if (Is less severe then appender reference level?) then (yes)
-    #pink:Discard;
-    detach
-else (no)
-    ' The label improves spacing
-    label a2
-endif
-if (Apply appender reference filter) then (DENY)
-    #pink:Discard;
-    detach
-else (not DENY)
-    ' The label improves spacing
-    label a1
-endif
-end group
-stop
-@enduml</pre>
+<img src="../_images/diag-0c23746e246efa4a462049e2adc4b0349185aa77.svg" alt="Diagram">
 </div>
 </div>
 <div class="paragraph">
@@ -632,24 +566,9 @@ of the appender reference.</p>
 </div>
 <div class="sect2">
 <h3 id="appender-stage"><a class="anchor" href="#appender-stage"></a>4. <code>Appender</code> stage (optional)</h3>
-<div class="literalblock kroki-error">
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-start
-:LogEvent;
-
-group Appender
-
-if (Apply appender filter) then (DENY)
-    #pink:Discard;
-    detach
-else (not DENY)
-    ' The label improves spacing
-    label a1
-endif
-end group
-#palegreen:Appender#append();
-@enduml</pre>
+<img src="../_images/diag-a15d9b3aaacbf863f81fe0dcb0ed21346b6c46ed.svg" alt="Diagram">
 </div>
 </div>
 <div class="paragraph">
diff --git a/manual/installation.html b/manual/installation.html
index 7ebcf768e8..83903b2eed 100644
--- a/manual/installation.html
+++ b/manual/installation.html
@@ -460,63 +460,11 @@ In this case, you need to install <code>log4j-core</code> and <code>log4j-slf4j2
 <div class="paragraph">
 <p>To make things a little bit more tangible, consider the following visualization of a typical Log4j Core installation with bridges for an application:</p>
 </div>
-<div class="literalblock kroki-error">
-<div class="title">Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-frame "Compile time" {
-  [Application] --&gt; [Log4j API] : logs to
-
-  [Log4j API] #Cyan
-
-  [SLF4J] #Cyan
-
-  [Library 1] --&gt; [SLF4J] : logs to
-  [Application] --&gt; [Library 1] : uses
-  [Application] --&gt; [Library 2] : uses
-  [Application] --&gt; [Library 3] : uses
-}
-
-frame Runtime {
-
-  [Log4j Core] &lt;.. [Log4j API] : is implemented by
-  [Log4j Core] &lt;.. (log4j2.xml) : is provided to
-  [Log4j Core] #LightGreen
-
-  [JPL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JPL-to-Log4j] #Yellow
-
-  [SLF4J-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [SLF4J-to-Log4j] #Yellow
-
-  [JUL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JUL-to-Log4j] #Yellow
-
-  frame JRE {
-    [JPL] #Cyan
-    [JUL] #Cyan
-  }
-
-}
-
-[Library 2] --&gt; [JUL] : logs to
-[Library 3] --&gt; [JPL] : logs to
-
-[JPL] ..&gt; [JPL-to-Log4j] : is implemented by
-[JUL] ..&gt; [JUL-to-Log4j] : is implemented by
-[SLF4J] ..&gt; [SLF4J-to-Log4j] : is implemented by
-
-legend top right
-  | &lt;#LightGreen&gt; | Logging implementation |
-  | &lt;#Yellow&gt; | Logging bridge |
-  | &lt;#Cyan&gt; | Logging API |
-  | &lt;size:18&gt;&lt;U+2192&gt;&lt;/size&gt; | Compile-time usage |
-  | &lt;size:18&gt;&lt;U+21E2&gt;&lt;/size&gt; | Runtime usage |
-endlegend
-
-@enduml</pre>
+<img src="../_images/diag-a51b68065f249459078382aa4c61888857f01b2c.svg" alt="Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges">
 </div>
+<div class="title">Figure 1. Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
 </div>
 </div>
 </div>
diff --git a/manual/lookups.html b/manual/lookups.html
index 73ee1870fe..39e3ac5765 100644
--- a/manual/lookups.html
+++ b/manual/lookups.html
@@ -358,33 +358,11 @@
 <div class="paragraph">
 <p>Log4j Core provides a flexible and extensible property substitution system.</p>
 </div>
-<div id="StrSubstitutor-diagram" class="literalblock kroki-error">
-<div class="title">Property substitution system</div>
+<div id="StrSubstitutor-diagram" class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-class StrSubstitutor #line.bold {
-  Interpolator interpolator
-  String replace(String input)
-  String replace(LogEvent event, String input)
-}
-
-StrSubstitutor --&gt; Interpolator
-
-class Interpolator {
-  StrLookup[] lookups
-  String lookup(String key)
-  String lookup(LogEvent event, String key)
-}
-
-Interpolator --&gt; "0..*" StrLookup
-
-class StrLookup {
-  String lookup(String input)
-  String lookup(LogEvent event, String key)
-}
-
-@enduml</pre>
+<img src="../_images/diag-5c97f284d82478c0499cab16fe90893de781b11f.svg" alt="Property substitution system">
 </div>
+<div class="title">Figure 1. Property substitution system</div>
 </div>
 <div class="paragraph">
 <p>The property substitution system is composed of these elements:</p>
diff --git a/migrate-from-logback.html b/migrate-from-logback.html
index 00db2e50e6..61237eaf85 100644
--- a/migrate-from-logback.html
+++ b/migrate-from-logback.html
@@ -409,63 +409,11 @@ For instance, <code>log4j-slf4j2-impl</code> <em>bridges</em> SLF4J calls to Log
 <div class="paragraph">
 <p>To make things a little bit more tangible, consider the following visualization of a typical Log4j Core installation with bridges for an application:</p>
 </div>
-<div class="literalblock kroki-error">
-<div class="title">Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-frame "Compile time" {
-  [Application] --&gt; [Log4j API] : logs to
-
-  [Log4j API] #Cyan
-
-  [SLF4J] #Cyan
-
-  [Library 1] --&gt; [SLF4J] : logs to
-  [Application] --&gt; [Library 1] : uses
-  [Application] --&gt; [Library 2] : uses
-  [Application] --&gt; [Library 3] : uses
-}
-
-frame Runtime {
-
-  [Log4j Core] &lt;.. [Log4j API] : is implemented by
-  [Log4j Core] &lt;.. (log4j2.xml) : is provided to
-  [Log4j Core] #LightGreen
-
-  [JPL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JPL-to-Log4j] #Yellow
-
-  [SLF4J-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [SLF4J-to-Log4j] #Yellow
-
-  [JUL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JUL-to-Log4j] #Yellow
-
-  frame JRE {
-    [JPL] #Cyan
-    [JUL] #Cyan
-  }
-
-}
-
-[Library 2] --&gt; [JUL] : logs to
-[Library 3] --&gt; [JPL] : logs to
-
-[JPL] ..&gt; [JPL-to-Log4j] : is implemented by
-[JUL] ..&gt; [JUL-to-Log4j] : is implemented by
-[SLF4J] ..&gt; [SLF4J-to-Log4j] : is implemented by
-
-legend top right
-  | &lt;#LightGreen&gt; | Logging implementation |
-  | &lt;#Yellow&gt; | Logging bridge |
-  | &lt;#Cyan&gt; | Logging API |
-  | &lt;size:18&gt;&lt;U+2192&gt;&lt;/size&gt; | Compile-time usage |
-  | &lt;size:18&gt;&lt;U+21E2&gt;&lt;/size&gt; | Runtime usage |
-endlegend
-
-@enduml</pre>
+<img src="_images/diag-a51b68065f249459078382aa4c61888857f01b2c.svg" alt="Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges">
 </div>
+<div class="title">Figure 1. Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
 </div>
 </div>
 </details>
diff --git a/migrate-from-slf4j.html b/migrate-from-slf4j.html
index 3f78338fa1..db0868516b 100644
--- a/migrate-from-slf4j.html
+++ b/migrate-from-slf4j.html
@@ -409,63 +409,11 @@ For instance, <code>log4j-slf4j2-impl</code> <em>bridges</em> SLF4J calls to Log
 <div class="paragraph">
 <p>To make things a little bit more tangible, consider the following visualization of a typical Log4j Core installation with bridges for an application:</p>
 </div>
-<div class="literalblock kroki-error">
-<div class="title">Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
+<div class="imageblock kroki">
 <div class="content">
-<pre>@startuml
-
-frame "Compile time" {
-  [Application] --&gt; [Log4j API] : logs to
-
-  [Log4j API] #Cyan
-
-  [SLF4J] #Cyan
-
-  [Library 1] --&gt; [SLF4J] : logs to
-  [Application] --&gt; [Library 1] : uses
-  [Application] --&gt; [Library 2] : uses
-  [Application] --&gt; [Library 3] : uses
-}
-
-frame Runtime {
-
-  [Log4j Core] &lt;.. [Log4j API] : is implemented by
-  [Log4j Core] &lt;.. (log4j2.xml) : is provided to
-  [Log4j Core] #LightGreen
-
-  [JPL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JPL-to-Log4j] #Yellow
-
-  [SLF4J-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [SLF4J-to-Log4j] #Yellow
-
-  [JUL-to-Log4j] ..&gt; [Log4j Core] : forwards to
-  [JUL-to-Log4j] #Yellow
-
-  frame JRE {
-    [JPL] #Cyan
-    [JUL] #Cyan
-  }
-
-}
-
-[Library 2] --&gt; [JUL] : logs to
-[Library 3] --&gt; [JPL] : logs to
-
-[JPL] ..&gt; [JPL-to-Log4j] : is implemented by
-[JUL] ..&gt; [JUL-to-Log4j] : is implemented by
-[SLF4J] ..&gt; [SLF4J-to-Log4j] : is implemented by
-
-legend top right
-  | &lt;#LightGreen&gt; | Logging implementation |
-  | &lt;#Yellow&gt; | Logging bridge |
-  | &lt;#Cyan&gt; | Logging API |
-  | &lt;size:18&gt;&lt;U+2192&gt;&lt;/size&gt; | Compile-time usage |
-  | &lt;size:18&gt;&lt;U+21E2&gt;&lt;/size&gt; | Runtime usage |
-endlegend
-
-@enduml</pre>
+<img src="_images/diag-a51b68065f249459078382aa4c61888857f01b2c.svg" alt="Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges">
 </div>
+<div class="title">Figure 1. Visualization of a typical Log4j Core installation with SLF4J, JUL, and JPL bridges</div>
 </div>
 </div>
 </details>
diff --git a/plugin-reference.html b/plugin-reference.html
index 191b510219..154d69c9cd 100644
--- a/plugin-reference.html
+++ b/plugin-reference.html
@@ -1477,7 +1477,7 @@ Originally developed by Ceki Glc and Anders Kristensen.</p>
 </tr>
 <tr>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><code>header</code></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock"><code>String?</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><code>boolean?</code></p></td>
 <td class="tableblock halign-left valign-top"></td>
 <td class="tableblock halign-left valign-top"><div class="content"></div></td>
 </tr>
@@ -16312,10 +16312,10 @@ Supports Lookup expressions.</p>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><code>boolean?</code></p></td>
 <td class="tableblock halign-left valign-top"></td>
 <td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
-<p>If "true", includes the stacktrace of any Throwable in the generated JSON, defaults to "true".</p>
+<p>If "true", includes the stacktrace of any Throwable in the generated data, defaults to "true".</p>
 </div>
 <div class="paragraph">
-<p>If "true", includes the stacktrace of any Throwable in the generated data, defaults to "true".</p>
+<p>If "true", includes the stacktrace of any Throwable in the generated JSON, defaults to "true".</p>
 </div></div></td>
 </tr>
 <tr>
@@ -17609,10 +17609,10 @@ Supports Lookup expressions.</p>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><code>boolean?</code></p></td>
 <td class="tableblock halign-left valign-top"></td>
 <td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
-<p>If "true", includes the stacktrace of any Throwable in the generated JSON, defaults to "true".</p>
+<p>If "true", includes the stacktrace of any Throwable in the generated data, defaults to "true".</p>
 </div>
 <div class="paragraph">
-<p>If "true", includes the stacktrace of any Throwable in the generated data, defaults to "true".</p>
+<p>If "true", includes the stacktrace of any Throwable in the generated JSON, defaults to "true".</p>
 </div></div></td>
 </tr>
 <tr>
@@ -17808,10 +17808,10 @@ Supports Lookup expressions.</p>
 <td class="tableblock halign-left valign-top"><p class="tableblock"><code>boolean?</code></p></td>
 <td class="tableblock halign-left valign-top"></td>
 <td class="tableblock halign-left valign-top"><div class="content"><div class="paragraph">
-<p>If "true", includes the stacktrace of any Throwable in the generated JSON, defaults to "true".</p>
+<p>If "true", includes the stacktrace of any Throwable in the generated data, defaults to "true".</p>
 </div>
 <div class="paragraph">
-<p>If "true", includes the stacktrace of any Throwable in the generated data, defaults to "true".</p>
+<p>If "true", includes the stacktrace of any Throwable in the generated JSON, defaults to "true".</p>
 </div></div></td>
 </tr>
 <tr>
diff --git a/release-notes.html b/release-notes.html
index aa5ae506c8..cf9e3f732e 100644
--- a/release-notes.html
+++ b/release-notes.html
@@ -443,6 +443,9 @@
 <li>
 <p>Remove the <code>jvmrunargs</code> lookup. (<a href="https://github.com/apache/logging-log4j2/pull/3874">3874</a>)</p>
 </li>
+<li>
+<p>Remove the <code>com.github.spotbugs:spotbugs-annotations</code> dependency (<a href="https://github.com/apache/logging-log4j2/issues/3984">3984</a>, <a href="https://github.com/apache/logging-log4j2/pull/3985">3985</a>)</p>
+</li>
 </ul>
 </div>
 </div>
diff --git a/sitemap.xml b/sitemap.xml
index 6437d8a6f0..0fb54dfc2e 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -2,238 +2,238 @@
 <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
 <url>
 <loc>https://logging.apache.org/log4j/2.x/components.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/development.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/download.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/faq.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/graalvm.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/hibernate.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/index.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/jakarta.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/javadoc.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/log4j-iostreams.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/log4j-jul.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/log4j-spring-boot.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/log4j-spring-cloud-config-client.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/log4j-to-jul.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/api.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/appenders.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/appenders/database.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/appenders/delegating.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/appenders/file.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/appenders/message-queue.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/appenders/network.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/appenders/rolling-file.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/architecture.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/async.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/compatibility.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/config-intro.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/configuration.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/customconfig.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/customloglevels.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/eventlogging.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/extending.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/filters.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/flowtracing.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/garbagefree.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/getting-started.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/implementation.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/index.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/installation.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/jmx.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/json-template-layout.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/layouts.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/logbuilder.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/lookups.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/markers.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/messages.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/pattern-layout.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/performance.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/plugins.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/scripts.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/simple-logger.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/status-logger.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/systemproperties.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/manual/thread-context.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/migrate-from-log4j1.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/migrate-from-logback.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/migrate-from-slf4j.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/plugin-reference.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/release-notes.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 <url>
 <loc>https://logging.apache.org/log4j/2.x/soa.html</loc>
-<lastmod>2025-11-11T21:21:04.701Z</lastmod>
+<lastmod>2025-11-25T20:36:58.226Z</lastmod>
 </url>
 </urlset>