Commit Graph

65 Commits

Author SHA1 Message Date
Oliver Drotbohm
7315c8a13e GH-514 - Release version 1.2.0-M2. 2024-02-23 16:54:57 +01:00
Oliver Drotbohm
864baac3c2 GH-501 - Make Micrometer Tracing a mandatory dependency of the observability module.
ModuleObservabilityAutoConfiguration strongly depends on said module and there's no way to make it optionally depending on that.
2024-02-19 13:37:19 +01:00
Oliver Drotbohm
84a4453281 GH-498 - Prevent configuration properties from being proxied for observability.
We now avoid proxying configuration properties in the BeanPostProcessor that creates tracing proxies.
2024-02-14 11:30:24 +01:00
Oliver Drotbohm
c06a2c915e GH-474 - Prepare next development iteration. 2024-01-19 19:49:09 +01:00
Oliver Drotbohm
6f5886ddef GH-474 - Release version 1.2.0-M1. 2024-01-19 19:49:08 +01:00
Oliver Drotbohm
c32227bdfb GH-463 - Update copyright headers. 2024-01-17 19:45:40 +01:00
Oliver Drotbohm
5bb16e4c93 GH-393 - Prepare next development iteration. 2023-11-24 18:22:06 +01:00
Oliver Drotbohm
c6c0c0f500 GH-393 - Release version 1.1.0. 2023-11-24 18:22:06 +01:00
Oliver Drotbohm
20a7474f2f GH-358 - Prepare next development iteration. 2023-11-03 09:02:46 +01:00
Oliver Drotbohm
6336e32d54 GH-358 - Release version 1.1.0-RC2. 2023-11-03 09:02:45 +01:00
Oliver Drotbohm
69fd64dbf7 GH-341 - Prepare next development iteration. 2023-10-23 09:12:13 +02:00
Oliver Drotbohm
d4cde409a1 GH-341 - Release version 1.1.0-RC1. 2023-10-23 09:12:13 +02:00
Oliver Drotbohm
752b5d7cf3 GH-332 - Avoid proxying configuration classes for observability purposes.
We now skip configuration classes for observability-related proxying as it's hard to detect those during the ProxyFactory setup to configure target class proxying. Also, configuration classes are usually no targets of inter-module communication and thus don't need to be observed at all.
2023-10-16 21:11:30 +02:00
Oliver Drotbohm
560315ae14 GH-315 - Avoid processing infrastructure beans in observability infrastructure.
We now skip infrastructure role beans during the processing of beans that could be subject to inter-module interaction observability. Previously, we could accidentally trigger a dependency cycle if the ModuleTracingBeanPostProcessor triggered the initial creation of AutoConfigurationPackages as that would then trigger the PostProcessor in turn which would try to lookup the ACP bean again to determine whether it should post process that to apply observability.
2023-10-16 13:38:11 +02:00
Oliver Drotbohm
61fa94ad63 GH-303 - Prepare next development iteration. 2023-09-21 23:35:47 +02:00
Oliver Drotbohm
6f5b3c0baa GH-303 - Release version 1.1.0-M1. 2023-09-21 23:35:47 +02:00
Oliver Drotbohm
ddaf34d4d8 GH-274 - Prepare next development iteration. 2023-08-21 07:00:02 -07:00
Oliver Drotbohm
6197d35937 GH-274 - Release version 1.0.0. 2023-08-21 06:59:57 -07:00
Oliver Drotbohm
39ce5346c6 GH-270 - Prepare next development iteration. 2023-08-16 08:05:46 +02:00
Oliver Drotbohm
2c5cedd1d1 GH-270 - Release version 1.0.0-RC2. 2023-08-16 08:05:46 +02:00
Oliver Drotbohm
1a84ae256f GH-260 - Prepare next development iteration. 2023-08-09 22:29:57 +02:00
Oliver Drotbohm
bf68d74756 GH-260 - Release version 1.0.0-RC1. 2023-08-09 22:29:56 +02:00
Oliver Drotbohm
5e2da724da GH-199 - Prepare next development iteration. 2023-06-23 12:55:10 +02:00
Oliver Drotbohm
a74c4e582d GH-199 - Release version 1.0.0-M1. 2023-06-23 12:55:09 +02:00
Oliver Drotbohm
596e8828a2 GH-197 - Promote project out of experimental status.
Set version number to 1.0.0-SNAPSHOT. New group id is org.springframework.modulith. Also adapt links to new project home.
2023-05-02 14:32:32 +02:00
Oliver Drotbohm
60ce7da56e GH-189 - Prepare next development iteration. 2023-05-02 12:28:30 +02:00
Oliver Drotbohm
9d1180017e GH-189 - Release version 0.6.0. 2023-05-02 12:28:29 +02:00
Oliver Drotbohm
281da55eac GH-172 - Prepare next development iteration. 2023-03-24 10:24:47 +01:00
Oliver Drotbohm
d5bdff3f77 GH-172 - Release version 0.5.1. 2023-03-24 10:24:47 +01:00
Oliver Drotbohm
f0aaca2917 GH-164 - Prepare next development iteration. 2023-03-08 11:35:15 +01:00
Oliver Drotbohm
50dd8969fb GH-164 - Release version 0.5.0. 2023-03-08 11:35:14 +01:00
Oliver Drotbohm
c51ac5c6fb GH-147 - Prepare next development iteration. 2023-02-24 16:47:15 +01:00
Oliver Drotbohm
13c9f96448 GH-147 - Release version 0.4.1. 2023-02-24 16:47:14 +01:00
Oliver Drotbohm
64a5929367 GH-143 - Prepare next development iteration. 2023-02-23 23:26:25 +01:00
Oliver Drotbohm
3e705a162e GH-143 - Release version 0.4.0. 2023-02-23 23:26:25 +01:00
Oliver Drotbohm
3c25958edc GH-123 - Prepare next development iteration. 2023-01-20 10:16:34 +01:00
Oliver Drotbohm
43bea11041 GH-123 - Release version 0.3.0. 2023-01-20 10:16:34 +01:00
Oliver Drotbohm
7649a84254 GH-122 - Default to enable observability features. 2023-01-20 10:07:50 +01:00
Oliver Drotbohm
5c34886907 GH-114 - Rename ….modulith.model to ….modulith.core. 2023-01-12 16:34:07 +01:00
Oliver Drotbohm
0d009f06c9 GH-111 - Package and publish Javadoc.
A lot of Javadoc polish. Not done yet.
2023-01-12 16:20:20 +01:00
Oliver Drotbohm
9ce6bf23ae GH-14 - Remove Lombok from production sources.
Polished a lot of Javadoc.
2023-01-12 01:05:35 +01:00
Oliver Drotbohm
5f25974f0d GH-107 - Improve runtime support configuration setup.
The configuration classes declaring SpringBootApplicationRuntime and ApplicationModulesRuntime beans now describe them as infrastructure beans so that they do not get reported as eagly initialized as their initialization will be triggered when creating the BeanPostProcessors our observability support is based on.

The configuration of the observability support now consistently refer to ApplicationModulesRuntime directly and to the Tracer instance via a supplier as the latter is only needed during the actual component invocation while the former is already needed to decide whether to decorate the instances in the first place. Simplify the inheritance arrangement underneath ModuleTracingSupport.

The logging adapter for ApplicationModuleInitializers now properly unwraps proxy types so that the log output uses the user classes properly.
2023-01-05 20:00:58 +01:00
Oliver Drotbohm
262efb5828 GH-106 - Avoid intercepting Object and proxy-related methods for module interaction tracing.
We now skip Object methods and ones declared on Spring's Advised or TargetClassAware types when intercepting invocations to trigger a module entry.
2023-01-05 20:00:54 +01:00
Oliver Drotbohm
a7e033172b GH-102 - ApplicationModules now allows traversing modules in topological order.
We now optionally integrate with the JGraphT library to calculate the topological order of modules based on their dependency structure. That order is then exposed in ApplicationModules' iteration and via ….getComparator().

Renamed FormattableJavaClass to FormattableType and allow it to be created from a plain Class as well.
2023-01-05 10:21:36 +01:00
Oliver Drotbohm
4e13fbf7f8 GH-99 - Extend license headers to 2023. 2023-01-02 18:12:29 +01:00
Oliver Drotbohm
2d933d07c5 GH-92 - Prepare next development iteration. 2022-12-23 17:32:38 +01:00
Oliver Drotbohm
888055cf7c GH-92 - Release version 0.2.0. 2022-12-23 17:32:37 +01:00
Oliver Drotbohm
c1fc3032b7 GH-87 - Expose module structure as actuator endpoint.
Introduce Spring Modulith Actuator module to expose the application module structure as Spring Boot actuator. This required a Spring Modulith Runtime module to be extracted from the Spring Modulith Observability one. The former now contains the auto-configured ApplicationRuntime and ApplicationModulesRuntime bean instances to be able to bootstrap a ApplicationModules asynchronously on application startup. The actuator module then contains a Spring Boot @Endpoint implementation consuming the ApplicationModules to render JSON describing the application module structure.
2022-12-23 10:56:47 +01:00
Oliver Drotbohm
ac072805b8 GH-78 - Prepare next development iteration. 2022-11-24 23:30:15 +01:00
Oliver Drotbohm
7f1e22db63 GH-78 - Release version 0.1.0. 2022-11-24 23:30:15 +01:00