老师,日志持久化问题

来源:6-6 jwt改造之日志及错误处理(2)

慕容4009360

2020-09-30

在本例中日志持久化使用Autowrid注解注入的对象都为null;

//@Component
public class GatewayAuditLogFilter extends OncePerRequestFilter {
	@Autowrid
	private LogService logService;

	@Override
	protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
			throws ServletException, IOException {
		String user = (String) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
		System.out.println("add log for: " + user);
		// TODO
		// 日志持久化
		filterChain.doFilter(request, response);
		if (!StringUtils.isNotBlank((String) request.getAttribute("logUpdated"))) {
			System.out.println("end log for: " + user);
		}
	}

}

1、这个类没有注解为Component或是在添加到配置后是通过new出来的;这个注入就无效了,是这样的吗?
2、如果通过Spring的上下文获取Bean的方法来获取,那我几乎所有的服务如果有用的日志的都要实现这个工具类?
3、对日志的处理老师有更好的办法吗?
谢谢

写回答

1回答

慕容4009360

提问者

2020-10-03

可以使用Elasticsearch做日志分析

0
0

Spring Cloud微服务安全实战 可落地的安全方案

从API到复杂微服务场景,实战部署可落地的安全方案。

1029 学习 · 370 问题

查看课程