Трассировка Spring Interceptor сквозная связь - как вложенные вызовы
Я пытаюсь войти в систему сквозной связи между службами, однако я изо всех сил пытаюсь выяснить, каковы вложенные вызовы.
Я пытаюсь достичь чего-то вроде этого (меня интересует глубина):
Я сделал перехватчик для restTemplate
@Bean
public AuditRestInterceptor auditRequestInterceptor() {
return new AuditRestInterceptor();
}
@Bean
public RestTemplate restTemplate() {
RestTemplate template = new RestTemplate();
template.setInterceptors(Arrays.asList(auditRequestInterceptor()));
return template;
}
Я также регистрирую Interceptor, поэтому любой вызов /api/* сначала проходит через interceptor.
@Override
public void onStartup(ServletContext servletContext) throws ServletException {
super.onStartup(servletContext);
FilterRegistration.Dynamic restAuditFilter = servletContext.addFilter("restAuditFilter",
new AuditRequestFilter(null, InvocationProtocol.REST));
restAuditFilter.addMappingForUrlPatterns(null, false, "/api/*");
}
Теперь в перехватчике я хотел бы проследить, как вложенный вызов (deepId), но я не мог найти какое-либо решение / алгоритм. Есть ли что-то из весны (например, ApplicationContext) или что-то, что помогло бы мне узнать, насколько глубоко я нахожусь в сквозной связи между несколькими службами? Или кто-то может указать мне правильное направление, как реализовать такую вещь?