code: public Object postProcessBeforeInitialization(final Object bean, String beanName)
              throws BeansException {
          ReflectionUtils.doWithFields(bean.getClass(), new FieldCallback() {
              @SuppressWarnings("unchecked")
              public void doWith(Field field) throws IllegalArgumentException,
                      IllegalAccessException {
                  ReflectionUtils.makeAccessible(field);
                  if (field.getAnnotation(AutowiredLogger.class) != null) {
                      Logger logger = LoggerFactory.getLogger(bean.getClass());
                      field.set(bean, logger);
                  }
              }
          });
  
          return bean;
      }
docs: {@inheritDoc}