Files
UserhomeService/src/main/java/com/yunhai/userhome/loadtestmetrics/ApiMetricsConfig.java
T
chenxing 59e8197d22
build / build-push (push) Successful in 1m11s
健康检查,数据埋点
2026-09-03 11:50:22 +08:00

36 lines
1.6 KiB
Java

package com.yunhai.userhome.loadtestmetrics;
/* =============================================================================
* [LOADTEST-METRICS] 临时埋点 —— 《压测与oapi埋点统计方案.md》阶段二
* 压测结束后整体移除:删除 loadtestmetrics 包 + 回退 pom.xml/application.yml
* 中 [LOADTEST-METRICS] 标记段 + DROP TABLE api_metrics。
* 移除步骤详见仓库根《埋点移除清单.md》。
* ============================================================================= */
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.Ordered;
import org.springframework.scheduling.annotation.EnableScheduling;
/**
* [LOADTEST-METRICS] 埋点装配:注册入站指标过滤器 + 开启定时快照。<br>
* @EnableScheduling 只服务于 {@link ApiMetricsCollector#flush()}(UserHome 主类原本未开定时任务,
* 删包后此能力一并消失,主类零改动);过滤器取最前置 order,连 CAS 302 也计入入站口径。
*/
@Configuration
@EnableScheduling
public class ApiMetricsConfig {
@Bean
public FilterRegistrationBean<ApiMetricsFilter> apiMetricsFilter(ApiMetricsCollector collector) {
FilterRegistrationBean<ApiMetricsFilter> bean = new FilterRegistrationBean<>();
bean.setFilter(new ApiMetricsFilter(collector));
bean.addUrlPatterns("/*");
bean.setOrder(Ordered.HIGHEST_PRECEDENCE);
bean.setName("apiMetricsFilter");
return bean;
}
}