类com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy源码实例Demo

下面列出了怎么用com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy的API类实例代码及写法,或者点击链接到github查看源代码。

public RouterHystrixConcurrencyStrategy() {
  HystrixConcurrencyStrategy strategy = HystrixPlugins.getInstance().getConcurrencyStrategy();
  if (strategy instanceof RouterHystrixConcurrencyStrategy) {
    return;
  }
  HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance()
      .getCommandExecutionHook();
  HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
  HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
  HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance()
      .getPropertiesStrategy();
  HystrixPlugins.reset();
  HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
  HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
  HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
  HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
  HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
}
 
public CustomFeignHystrixConcurrencyStrategy() {
    try {
        this.hystrixConcurrencyStrategy = HystrixPlugins.getInstance().getConcurrencyStrategy();
        if (this.hystrixConcurrencyStrategy instanceof CustomFeignHystrixConcurrencyStrategy) {
            // Welcome to singleton hell...
            return;
        }
        HystrixCommandExecutionHook commandExecutionHook =
                HystrixPlugins.getInstance().getCommandExecutionHook();
        HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
        HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
        HystrixPropertiesStrategy propertiesStrategy =
                HystrixPlugins.getInstance().getPropertiesStrategy();
        this.logCurrentStateOfHystrixPlugins(eventNotifier, metricsPublisher, propertiesStrategy);
        HystrixPlugins.reset();
        HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
        HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
        HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
        HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
        HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
    } catch (Exception e) {
        log.error("Failed to register Sleuth Hystrix Concurrency Strategy", e);
    }
}
 
源代码3 项目: jframework   文件: RegisterCommandExcutionHook.java
public RegisterCommandExcutionHook() {
    HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
    HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
    HystrixConcurrencyStrategy concurrencyStrategy = HystrixPlugins.getInstance().getConcurrencyStrategy();
    HystrixMetricsPublisher hystrixMetricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();

    HystrixPlugins.reset();
    HystrixPlugins.getInstance().registerMetricsPublisher(hystrixMetricsPublisher);
    HystrixPlugins.getInstance().registerConcurrencyStrategy(concurrencyStrategy);
    HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
    HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
    HystrixPlugins.getInstance().registerCommandExecutionHook(new HystrixCommandExecutionHook() {
        @Override
        public <T> void onFallbackStart(HystrixInvokable<T> commandInstance) {
            HystrixCommand hystrixCommand = (HystrixCommand) commandInstance;
            String commandKey = hystrixCommand.getCommandKey().toString();
            log.error("Hystrix: {} 接口开始降级", commandKey);
            super.onFallbackStart(commandInstance);
        }
    });
}
 
@PostConstruct
public void init() {

    HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
    HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
    HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
    HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();

    HystrixPlugins.reset();

    HystrixPlugins.getInstance()
        .registerConcurrencyStrategy(new RequestAttributeHystrixConcurrencyStrategy(existingConcurrencyStrategy));
    HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
    HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
    HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
    HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
}
 
public ThreadLocalProcessHystrixConcurrencyStrategy() {
	try {

		this.delegate = HystrixPlugins.getInstance().getConcurrencyStrategy();
		if (this.delegate instanceof ThreadLocalProcessHystrixConcurrencyStrategy) {
			// Welcome to singleton hell...
			return;
		}
		HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();
		HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
		HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
		HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();

		this.logCurrentStateOfHystrixPlugins(eventNotifier, metricsPublisher, propertiesStrategy);

		HystrixPlugins.reset();
		HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
		HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
		HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
		HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
		HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
	}
	catch (Exception e) {
		log.error("Failed to register Sleuth Hystrix Concurrency Strategy", e);
	}
}
 
public SofaTracerHystrixConcurrencyStrategy() {
    try {
        this.delegate = HystrixPlugins.getInstance().getConcurrencyStrategy();
        if (this.delegate instanceof SofaTracerHystrixConcurrencyStrategy) {
            // Welcome to singleton hell...
            return;
        }
        HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance()
            .getCommandExecutionHook();
        HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
        HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance()
            .getMetricsPublisher();
        HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance()
            .getPropertiesStrategy();
        HystrixPlugins.reset();
        HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
        HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
        HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
        HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
        HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
    } catch (Exception ex) {
        SelfLog.error("Failed to register Sleuth Hystrix Concurrency Strategy", ex);
    }
}
 
public GrayHystrixContextConcurrencyStrategy() {
    this.delegate = HystrixPlugins.getInstance().getConcurrencyStrategy();
    if (this.delegate instanceof GrayHystrixContextConcurrencyStrategy) {
        return;
    }
    // Keeps references of existing Hystrix plugins.
    HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();
    HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
    HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
    HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();

    HystrixPlugins.reset();

    // Registers existing plugins excepts the Concurrent Strategy plugin.
    HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
    HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
    HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
    HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
    HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
}
 
@PostConstruct
public void init() {
	// Keeps references of existing Hystrix plugins.
	HystrixEventNotifier        eventNotifier        = HystrixPlugins.getInstance().getEventNotifier();
       HystrixMetricsPublisher     metricsPublisher     = HystrixPlugins.getInstance().getMetricsPublisher();
       HystrixPropertiesStrategy   propertiesStrategy   = HystrixPlugins.getInstance().getPropertiesStrategy();
       HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();

       HystrixPlugins.reset();

       HystrixPlugins.getInstance().registerConcurrencyStrategy(new ThreadLocalAwareStrategy(existingConcurrencyStrategy));  // Register your customized strategy ({@code ThreadLocalAwareStrategy})
       HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
       HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
       HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
       HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
}
 
@PostConstruct
public void init() {
	// Keeps references of existing Hystrix plugins.
	HystrixEventNotifier        eventNotifier        = HystrixPlugins.getInstance().getEventNotifier();
       HystrixMetricsPublisher     metricsPublisher     = HystrixPlugins.getInstance().getMetricsPublisher();
       HystrixPropertiesStrategy   propertiesStrategy   = HystrixPlugins.getInstance().getPropertiesStrategy();
       HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();

       HystrixPlugins.reset();

       HystrixPlugins.getInstance().registerConcurrencyStrategy(new ThreadLocalAwareStrategy(existingConcurrencyStrategy));  // Register your customized strategy ({@code ThreadLocalAwareStrategy})
       HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
       HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
       HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
       HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
}
 
@PostConstruct
public void init() {
	// Keeps references of existing Hystrix plugins.
	HystrixEventNotifier        eventNotifier        = HystrixPlugins.getInstance().getEventNotifier();
       HystrixMetricsPublisher     metricsPublisher     = HystrixPlugins.getInstance().getMetricsPublisher();
       HystrixPropertiesStrategy   propertiesStrategy   = HystrixPlugins.getInstance().getPropertiesStrategy();
       HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();

       HystrixPlugins.reset();

       HystrixPlugins.getInstance().registerConcurrencyStrategy(new ThreadLocalAwareStrategy(existingConcurrencyStrategy));  // Register your customized strategy ({@code ThreadLocalAwareStrategy})
       HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
       HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
       HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
       HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
}
 
@PostConstruct
public void init() {
	// Keeps references of existing Hystrix plugins.
	HystrixEventNotifier        eventNotifier        = HystrixPlugins.getInstance().getEventNotifier();
       HystrixMetricsPublisher     metricsPublisher     = HystrixPlugins.getInstance().getMetricsPublisher();
       HystrixPropertiesStrategy   propertiesStrategy   = HystrixPlugins.getInstance().getPropertiesStrategy();
       HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();

       HystrixPlugins.reset();

       HystrixPlugins.getInstance().registerConcurrencyStrategy(new ThreadLocalAwareStrategy(existingConcurrencyStrategy));  // Register your customized strategy ({@code ThreadLocalAwareStrategy})
       HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
       HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
       HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
       HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
}
 
源代码12 项目: blade-tool   文件: BladeHystrixAutoConfiguration.java
@PostConstruct
public void init() {
	// Keeps references of existing Hystrix plugins.
	HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
	HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
	HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
	HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();

	HystrixPlugins.reset();

	// Registers existing plugins excepts the Concurrent Strategy plugin.
	HystrixConcurrencyStrategy strategy = new BladeHystrixConcurrencyStrategy(existingConcurrencyStrategy, accountGetter, properties);
	HystrixPlugins.getInstance().registerConcurrencyStrategy(strategy);
	HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
	HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
	HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
	HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
}
 
/**
 * registers the {@link ExecutionContextAwareHystrixStrategy}
 */
public static void init() {
    // keeps references of existing Hystrix plugins.
    HystrixConcurrencyStrategy existingConcurrencyStrategy = HystrixPlugins.getInstance().getConcurrencyStrategy();
    HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
    HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
    HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
    HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();
    // reset the Hystrix plugin
    HystrixPlugins.reset();
    // configure the  plugin
    HystrixPlugins.getInstance().registerConcurrencyStrategy(new ExecutionContextAwareHystrixStrategy(existingConcurrencyStrategy));
    HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
    HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
    HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
    HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
    log.info("Context propagation enabled for Hystrix.");
}
 
public SeataHystrixConcurrencyStrategy() {
	try {
		this.delegate = HystrixPlugins.getInstance().getConcurrencyStrategy();
		if (this.delegate instanceof SeataHystrixConcurrencyStrategy) {
			return;
		}
		HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();
		HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
		HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
		HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
		logCurrentStateOfHystrixPlugins(eventNotifier, metricsPublisher, propertiesStrategy);
		HystrixPlugins.reset();
		HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
		HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
		HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
		HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
		HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
	} catch (Exception ex) {
		logger.error("Failed to register Seata Hystrix Concurrency Strategy", ex);
	}
}
 
源代码15 项目: micrometer   文件: HystrixMetricsBinder.java
@Override
public void bindTo(MeterRegistry registry) {
    // Keeps references of existing Hystrix plugins.
    HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
    HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
    HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();
    HystrixConcurrencyStrategy concurrencyStrategy = HystrixPlugins.getInstance().getConcurrencyStrategy();
    HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();

    HystrixPlugins.reset();

    // Registers existing plugins except the new MicroMeter Strategy plugin.
    HystrixPlugins.getInstance().registerMetricsPublisher(new MicrometerMetricsPublisher(registry, metricsPublisher));
    HystrixPlugins.getInstance().registerConcurrencyStrategy(concurrencyStrategy);
    HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
    HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
    HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
}
 
public AbstractContextConcurrencyStrategy(HystrixConcurrencyStrategy existingConcurrencyStrategy) {
	if (getClass().isInstance(existingConcurrencyStrategy)) {
		System.out.println("Welcome to singleton hell...");
		return;
	}
	
	this.existingConcurrencyStrategy = existingConcurrencyStrategy;
	
	HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance()
			.getEventNotifier();
	HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance()
			.getMetricsPublisher();
	HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance()
			.getPropertiesStrategy();
	HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance()
			.getCommandExecutionHook();

	HystrixPlugins.reset();

	// Registers existing plugins excepts the Concurrent Strategy plugin.
	HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
	HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
	HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
	HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
	HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
}
 
源代码17 项目: astrix   文件: MultiConfigs.java
private static void registerWithHystrix() {

        final HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
        final HystrixConcurrencyStrategy concurrencyStrategy = HystrixPlugins.getInstance().getConcurrencyStrategy();
        final HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
        final HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
        final HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();

        HystrixPlugins.reset();

        reRegister(eventNotifier, multiEventNotifierDispatcher, notifier -> HystrixPlugins.getInstance().registerEventNotifier(notifier));
        reRegister(concurrencyStrategy, multiConcurrencyStrategyDispatcher, strategy -> HystrixPlugins.getInstance().registerConcurrencyStrategy(strategy));
        HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
        reRegister(propertiesStrategy, multiPropertiesStrategyDispatcher, strategy -> HystrixPlugins.getInstance().registerPropertiesStrategy(strategy));
        HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);

        LOGGER.info(MultiPropertiesStrategyDispatcher.class.getName() + " registered with Hystrix!");
    }
 
源代码18 项目: skywalking   文件: HystrixPluginsInterceptor.java
private static void registerSWExecutionHookWrapper(SWExecutionHookWrapper wrapper) {
    HystrixConcurrencyStrategy concurrencyStrategy = HystrixPlugins.getInstance().getConcurrencyStrategy();
    HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
    HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
    HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
    HystrixPlugins.reset();
    HystrixPlugins.getInstance().registerConcurrencyStrategy(concurrencyStrategy);
    HystrixPlugins.getInstance().registerCommandExecutionHook(wrapper);
    HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
    HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
    HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
}
 
public SpringCloudDtsContextHystrixConcurrencyStrategy() {
    HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins.getInstance().getCommandExecutionHook();
    HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
    HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
    HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance().getPropertiesStrategy();
    HystrixPlugins.reset();
    HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
    HystrixPlugins.getInstance().registerCommandExecutionHook(commandExecutionHook);
    HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
    HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
    HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
}
 
private void logCurrentStateOfHystrixPlugins(HystrixEventNotifier eventNotifier,
                                             HystrixMetricsPublisher metricsPublisher, HystrixPropertiesStrategy propertiesStrategy) {
    if (log.isDebugEnabled()) {
        log.debug("Current Hystrix plugins configuration is [" + "concurrencyStrategy ["
                + this.hystrixConcurrencyStrategy + "]," + "eventNotifier [" + eventNotifier + "]," + "metricPublisher ["
                + metricsPublisher + "]," + "propertiesStrategy [" + propertiesStrategy + "]," + "]");
        log.debug("Registering Sleuth Hystrix Concurrency Strategy.");
    }
}
 
public FeignHystrixConcurrencyStrategy() {
    try {
        this.delegate = HystrixPlugins.getInstance().getConcurrencyStrategy();
        if (this.delegate instanceof FeignHystrixConcurrencyStrategy) {
            // Welcome to singleton hell...
            return;
        }

        HystrixCommandExecutionHook commandExecutionHook =
                HystrixPlugins.getInstance().getCommandExecutionHook();

        HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
        HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
        HystrixPropertiesStrategy propertiesStrategy =
                HystrixPlugins.getInstance().getPropertiesStrategy();
        this.logCurrentStateOfHystrixPlugins(eventNotifier, metricsPublisher, propertiesStrategy);

        HystrixPlugins.reset();
        HystrixPlugins instance = HystrixPlugins.getInstance();
        instance.registerConcurrencyStrategy(this);
        instance.registerCommandExecutionHook(commandExecutionHook);
        instance.registerEventNotifier(eventNotifier);
        instance.registerMetricsPublisher(metricsPublisher);
        instance.registerPropertiesStrategy(propertiesStrategy);
    } catch (Exception e) {
        log.error("Failed to register Sleuth Hystrix Concurrency Strategy", e);
    }
}
 
private void logCurrentStateOfHystrixPlugins(HystrixEventNotifier eventNotifier,
                                             HystrixMetricsPublisher metricsPublisher,
                                             HystrixPropertiesStrategy propertiesStrategy) {
    if (log.isDebugEnabled()) {
        log.debug("Current Hystrix plugins configuration is [" + "concurrencyStrategy ["
                + this.delegate + "]," + "eventNotifier [" + eventNotifier + "]," + "metricPublisher ["
                + metricsPublisher + "]," + "propertiesStrategy [" + propertiesStrategy + "]," + "]");
        log.debug("Registering Sleuth Hystrix Concurrency Strategy.");
    }
}
 
public FeignHystrixConcurrencyStrategy() {
    try {
        this.delegate = HystrixPlugins.getInstance().getConcurrencyStrategy();
        if (this.delegate instanceof FeignHystrixConcurrencyStrategy) {
            // Welcome to singleton hell...
            return;
        }

        HystrixCommandExecutionHook commandExecutionHook =
                HystrixPlugins.getInstance().getCommandExecutionHook();

        HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
        HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
        HystrixPropertiesStrategy propertiesStrategy =
                HystrixPlugins.getInstance().getPropertiesStrategy();
        this.logCurrentStateOfHystrixPlugins(eventNotifier, metricsPublisher, propertiesStrategy);

        HystrixPlugins.reset();
        HystrixPlugins instance = HystrixPlugins.getInstance();
        instance.registerConcurrencyStrategy(this);
        instance.registerCommandExecutionHook(commandExecutionHook);
        instance.registerEventNotifier(eventNotifier);
        instance.registerMetricsPublisher(metricsPublisher);
        instance.registerPropertiesStrategy(propertiesStrategy);
    } catch (Exception e) {
        log.error("Failed to register Sleuth Hystrix Concurrency Strategy", e);
    }
}
 
private void logCurrentStateOfHystrixPlugins(HystrixEventNotifier eventNotifier,
                                             HystrixMetricsPublisher metricsPublisher,
                                             HystrixPropertiesStrategy propertiesStrategy) {
    if (log.isDebugEnabled()) {
        log.debug("Current Hystrix plugins configuration is [" + "concurrencyStrategy ["
                + this.delegate + "]," + "eventNotifier [" + eventNotifier + "]," + "metricPublisher ["
                + metricsPublisher + "]," + "propertiesStrategy [" + propertiesStrategy + "]," + "]");
        log.debug("Registering Sleuth Hystrix Concurrency Strategy.");
    }
}
 
public FeignHystrixConcurrencyStrategy() {
    try {
        this.delegate = HystrixPlugins.getInstance().getConcurrencyStrategy();
        if (this.delegate instanceof FeignHystrixConcurrencyStrategy) {
            // Welcome to singleton hell...
            return;
        }

        HystrixCommandExecutionHook commandExecutionHook =
                HystrixPlugins.getInstance().getCommandExecutionHook();

        HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance().getEventNotifier();
        HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance().getMetricsPublisher();
        HystrixPropertiesStrategy propertiesStrategy =
                HystrixPlugins.getInstance().getPropertiesStrategy();
        this.logCurrentStateOfHystrixPlugins(eventNotifier, metricsPublisher, propertiesStrategy);

        HystrixPlugins.reset();
        HystrixPlugins instance = HystrixPlugins.getInstance();
        instance.registerConcurrencyStrategy(this);
        instance.registerCommandExecutionHook(commandExecutionHook);
        instance.registerEventNotifier(eventNotifier);
        instance.registerMetricsPublisher(metricsPublisher);
        instance.registerPropertiesStrategy(propertiesStrategy);
    } catch (Exception e) {
        log.error("Failed to register Sleuth Hystrix Concurrency Strategy", e);
    }
}
 
private void logCurrentStateOfHystrixPlugins(HystrixEventNotifier eventNotifier,
                                             HystrixMetricsPublisher metricsPublisher,
                                             HystrixPropertiesStrategy propertiesStrategy) {
    if (log.isDebugEnabled()) {
        log.debug("Current Hystrix plugins configuration is [" + "concurrencyStrategy ["
                + this.delegate + "]," + "eventNotifier [" + eventNotifier + "]," + "metricPublisher ["
                + metricsPublisher + "]," + "propertiesStrategy [" + propertiesStrategy + "]," + "]");
        log.debug("Registering Sleuth Hystrix Concurrency Strategy.");
    }
}
 
public RequestAttributeHystrixConcurrencyStrategy() {
    try {
        this.delegate = HystrixPlugins.getInstance().getConcurrencyStrategy();
        if (this.delegate instanceof RequestAttributeHystrixConcurrencyStrategy) {
            // Welcome to singleton hell...
            return;
        }
        HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins
                .getInstance().getCommandExecutionHook();
        HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance()
                .getEventNotifier();
        HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance()
                .getMetricsPublisher();
        HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance()
                .getPropertiesStrategy();
        this.logCurrentStateOfHystrixPlugins(eventNotifier, metricsPublisher,
                propertiesStrategy);
        HystrixPlugins.reset();
        HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
        HystrixPlugins.getInstance()
                .registerCommandExecutionHook(commandExecutionHook);
        HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
        HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
        HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
    } catch (Exception e) {
        log.error("Failed to register Sleuth Hystrix Concurrency Strategy", e);
    }
}
 
private void logCurrentStateOfHystrixPlugins(HystrixEventNotifier eventNotifier,
                                             HystrixMetricsPublisher metricsPublisher,
                                             HystrixPropertiesStrategy propertiesStrategy) {
    if (log.isDebugEnabled()) {
        log.debug("Current Hystrix plugins configuration is ["
                + "concurrencyStrategy [" + this.delegate + "]," + "eventNotifier ["
                + eventNotifier + "]," + "metricPublisher [" + metricsPublisher + "],"
                + "propertiesStrategy [" + propertiesStrategy + "]," + "]");
        log.debug("Registering Sleuth Hystrix Concurrency Strategy.");
    }
}
 
private void logCurrentStateOfHystrixPlugins(HystrixEventNotifier eventNotifier,
		HystrixMetricsPublisher metricsPublisher,
		HystrixPropertiesStrategy propertiesStrategy) {
	if (log.isDebugEnabled()) {
		log.debug("Current Hystrix plugins configuration is ["
				+ "concurrencyStrategy [" + this.delegate + "]," + "eventNotifier ["
				+ eventNotifier + "]," + "metricPublisher [" + metricsPublisher + "],"
				+ "propertiesStrategy [" + propertiesStrategy + "]," + "]");
		log.debug("Registering Sleuth Hystrix Concurrency Strategy.");
	}
}
 
public RequestAttributeHystrixConcurrencyStrategy() {
    try {
        this.delegate = HystrixPlugins.getInstance().getConcurrencyStrategy();
        if (this.delegate instanceof RequestAttributeHystrixConcurrencyStrategy) {
            // Welcome to singleton hell...
            return;
        }
        HystrixCommandExecutionHook commandExecutionHook = HystrixPlugins
                .getInstance().getCommandExecutionHook();
        HystrixEventNotifier eventNotifier = HystrixPlugins.getInstance()
                .getEventNotifier();
        HystrixMetricsPublisher metricsPublisher = HystrixPlugins.getInstance()
                .getMetricsPublisher();
        HystrixPropertiesStrategy propertiesStrategy = HystrixPlugins.getInstance()
                .getPropertiesStrategy();
        this.logCurrentStateOfHystrixPlugins(eventNotifier, metricsPublisher,
                propertiesStrategy);
        HystrixPlugins.reset();
        HystrixPlugins.getInstance().registerConcurrencyStrategy(this);
        HystrixPlugins.getInstance()
                .registerCommandExecutionHook(commandExecutionHook);
        HystrixPlugins.getInstance().registerEventNotifier(eventNotifier);
        HystrixPlugins.getInstance().registerMetricsPublisher(metricsPublisher);
        HystrixPlugins.getInstance().registerPropertiesStrategy(propertiesStrategy);
    }
    catch (Exception e) {
        log.error("Failed to register RequestAttributes Hystrix Concurrency Strategy", e);
    }
}
 
 类所在包
 类方法
 同包方法