| | |
| | | import com.genersoft.iot.vmp.conf.security.SecurityUtils; |
| | | import com.genersoft.iot.vmp.service.ILogService; |
| | | import com.genersoft.iot.vmp.storager.dao.dto.LogDto; |
| | | import com.genersoft.iot.vmp.utils.DateUtil; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.io.IOException; |
| | | import java.text.SimpleDateFormat; |
| | | |
| | | /** |
| | | * @author lin |
| | | */ |
| | | @WebFilter(filterName = "ApiAccessFilter", urlPatterns = "/api/*", asyncSupported=true) |
| | | public class ApiAccessFilter extends OncePerRequestFilter { |
| | | |
| | | private final static Logger logger = LoggerFactory.getLogger(ApiAccessFilter.class); |
| | | |
| | | private final SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | |
| | | @Autowired |
| | | private UserSetup userSetup; |
| | | private UserSetting userSetting; |
| | | |
| | | @Autowired |
| | | private ILogService logService; |
| | |
| | | |
| | | filterChain.doFilter(servletRequest, servletResponse); |
| | | |
| | | if (uriName != null && userSetup.getLogInDatebase()) { |
| | | if (uriName != null && userSetting.getLogInDatebase()) { |
| | | |
| | | LogDto logDto = new LogDto(); |
| | | logDto.setName(uriName); |
| | |
| | | logDto.setTiming(System.currentTimeMillis() - start); |
| | | logDto.setType(servletRequest.getMethod()); |
| | | logDto.setUri(servletRequest.getRequestURI()); |
| | | logDto.setCreateTime(format.format(System.currentTimeMillis())); |
| | | logDto.setCreateTime(DateUtil.getNow()); |
| | | logService.add(logDto); |
| | | // logger.warn("[Api Access] [{}] [{}] [{}] [{}] [{}] {}ms", |
| | | // uriName, servletRequest.getMethod(), servletRequest.getRequestURI(), servletRequest.getRemoteAddr(), HttpStatus.valueOf(servletResponse.getStatus()), |