Skip to content

Commit f13f041

Browse files
committed
Consistent trace logging for init and destroy methods
Issue: SPR-17090
1 parent 6ef0938 commit f13f041

File tree

2 files changed

+13
-16
lines changed

2 files changed

+13
-16
lines changed

spring-beans/src/main/java/org/springframework/beans/factory/annotation/InitDestroyAnnotationBeanPostProcessor.java

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,6 @@ private LifecycleMetadata findLifecycleMetadata(Class<?> clazz) {
196196
}
197197

198198
private LifecycleMetadata buildLifecycleMetadata(final Class<?> clazz) {
199-
final boolean debug = logger.isDebugEnabled();
200199
List<LifecycleElement> initMethods = new ArrayList<>();
201200
List<LifecycleElement> destroyMethods = new ArrayList<>();
202201
Class<?> targetClass = clazz;
@@ -209,14 +208,14 @@ private LifecycleMetadata buildLifecycleMetadata(final Class<?> clazz) {
209208
if (this.initAnnotationType != null && method.isAnnotationPresent(this.initAnnotationType)) {
210209
LifecycleElement element = new LifecycleElement(method);
211210
currInitMethods.add(element);
212-
if (debug) {
213-
logger.debug("Found init method on class [" + clazz.getName() + "]: " + method);
211+
if (logger.isTraceEnabled()) {
212+
logger.trace("Found init method on class [" + clazz.getName() + "]: " + method);
214213
}
215214
}
216215
if (this.destroyAnnotationType != null && method.isAnnotationPresent(this.destroyAnnotationType)) {
217216
currDestroyMethods.add(new LifecycleElement(method));
218-
if (debug) {
219-
logger.debug("Found destroy method on class [" + clazz.getName() + "]: " + method);
217+
if (logger.isTraceEnabled()) {
218+
logger.trace("Found destroy method on class [" + clazz.getName() + "]: " + method);
220219
}
221220
}
222221
});
@@ -276,8 +275,8 @@ public void checkConfigMembers(RootBeanDefinition beanDefinition) {
276275
if (!beanDefinition.isExternallyManagedInitMethod(methodIdentifier)) {
277276
beanDefinition.registerExternallyManagedInitMethod(methodIdentifier);
278277
checkedInitMethods.add(element);
279-
if (logger.isDebugEnabled()) {
280-
logger.debug("Registered init method on class [" + this.targetClass.getName() + "]: " + element);
278+
if (logger.isTraceEnabled()) {
279+
logger.trace("Registered init method on class [" + this.targetClass.getName() + "]: " + element);
281280
}
282281
}
283282
}
@@ -287,8 +286,8 @@ public void checkConfigMembers(RootBeanDefinition beanDefinition) {
287286
if (!beanDefinition.isExternallyManagedDestroyMethod(methodIdentifier)) {
288287
beanDefinition.registerExternallyManagedDestroyMethod(methodIdentifier);
289288
checkedDestroyMethods.add(element);
290-
if (logger.isDebugEnabled()) {
291-
logger.debug("Registered destroy method on class [" + this.targetClass.getName() + "]: " + element);
289+
if (logger.isTraceEnabled()) {
290+
logger.trace("Registered destroy method on class [" + this.targetClass.getName() + "]: " + element);
292291
}
293292
}
294293
}
@@ -301,10 +300,9 @@ public void invokeInitMethods(Object target, String beanName) throws Throwable {
301300
Collection<LifecycleElement> initMethodsToIterate =
302301
(checkedInitMethods != null ? checkedInitMethods : this.initMethods);
303302
if (!initMethodsToIterate.isEmpty()) {
304-
boolean debug = logger.isDebugEnabled();
305303
for (LifecycleElement element : initMethodsToIterate) {
306-
if (debug) {
307-
logger.debug("Invoking init method on bean '" + beanName + "': " + element.getMethod());
304+
if (logger.isTraceEnabled()) {
305+
logger.trace("Invoking init method on bean '" + beanName + "': " + element.getMethod());
308306
}
309307
element.invoke(target);
310308
}
@@ -316,10 +314,9 @@ public void invokeDestroyMethods(Object target, String beanName) throws Throwabl
316314
Collection<LifecycleElement> destroyMethodsToUse =
317315
(checkedDestroyMethods != null ? checkedDestroyMethods : this.destroyMethods);
318316
if (!destroyMethodsToUse.isEmpty()) {
319-
boolean debug = logger.isDebugEnabled();
320317
for (LifecycleElement element : destroyMethodsToUse) {
321-
if (debug) {
322-
logger.debug("Invoking destroy method on bean '" + beanName + "': " + element.getMethod());
318+
if (logger.isTraceEnabled()) {
319+
logger.trace("Invoking destroy method on bean '" + beanName + "': " + element.getMethod());
323320
}
324321
element.invoke(target);
325322
}

spring-beans/src/main/java/org/springframework/beans/factory/support/AbstractAutowireCapableBeanFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1831,7 +1831,7 @@ protected void invokeCustomInitMethod(String beanName, final Object bean, RootBe
18311831

18321832
if (initMethod == null) {
18331833
if (mbd.isEnforceInitMethod()) {
1834-
throw new BeanDefinitionValidationException("Couldn't find an init method named '" +
1834+
throw new BeanDefinitionValidationException("Could not find an init method named '" +
18351835
initMethodName + "' on bean with name '" + beanName + "'");
18361836
}
18371837
else {

0 commit comments

Comments
 (0)