static boolean apply(@Nullable HttpStatus httpStatus) {
		if (Objects.isNull(httpStatus)) {
			return false;
		}
		RpcEnhancementReporterProperties reportProperties;
		try {
			reportProperties = ApplicationContextAwareUtils.getApplicationContext()
					.getBean(RpcEnhancementReporterProperties.class);
		}
		catch (BeansException e) {
			LOG.error("get RpcEnhancementReporterProperties bean err", e);
			reportProperties = new RpcEnhancementReporterProperties();
		}
		// statuses > series
		List<HttpStatus> status = reportProperties.getStatuses();
		if (status.isEmpty()) {
			List<HttpStatus.Series> series = reportProperties.getSeries();
			// Check INTERNAL_SERVER_ERROR (500) status.
			if (reportProperties.isIgnoreInternalServerError() && Objects.equals(httpStatus, INTERNAL_SERVER_ERROR)) {
				return false;
			}
			if (series.isEmpty()) {
				return HTTP_STATUSES.contains(httpStatus);
			}
			return series.contains(httpStatus.series());
		}
		// Use the user-specified fuse status code.
		return status.contains(httpStatus);
	}
@Test
	public void testApplyWithIgnoreInternalServerError() {
		RpcEnhancementReporterProperties properties = new RpcEnhancementReporterProperties();
		// Mock Condition
		properties.getStatuses().clear();
		properties.setIgnoreInternalServerError(true);

		ApplicationContext applicationContext = mock(ApplicationContext.class);
		doReturn(properties)
				.when(applicationContext).getBean(RpcEnhancementReporterProperties.class);
		mockedApplicationContextAwareUtils.when(ApplicationContextAwareUtils::getApplicationContext)
				.thenReturn(applicationContext);

		// Assert
		assertThat(PolarisEnhancedPluginUtils.apply(HttpStatus.OK)).isEqualTo(false);
		assertThat(PolarisEnhancedPluginUtils.apply(HttpStatus.INTERNAL_SERVER_ERROR)).isEqualTo(false);
		assertThat(PolarisEnhancedPluginUtils.apply(HttpStatus.BAD_GATEWAY)).isEqualTo(true);
	}