public void configure()

in extensions/micrometer/runtime/src/main/java/org/apache/camel/quarkus/component/micrometer/CamelMicrometerRecorder.java [68:117]


        public void configure(CamelContext camelContext) {
            if (config.enableRoutePolicy()) {
                MicrometerRoutePolicyFactory factory = new MicrometerRoutePolicyFactory();
                factory.setCamelContext(camelContext);
                camelContext.addRoutePolicyFactory(factory);

                if (config.namingStrategy().equals(MetricsNamingStrategy.LEGACY)) {
                    factory.setNamingStrategy(MicrometerRoutePolicyNamingStrategy.LEGACY);
                }

                MicrometerRoutePolicyConfiguration policyConfiguration = factory.getPolicyConfiguration();
                if (config.routePolicyLevel().equals(RoutePolicyLevel.ALL)) {
                    factory.getPolicyConfiguration().setContextEnabled(true);
                    factory.getPolicyConfiguration().setRouteEnabled(true);
                } else if (config.routePolicyLevel().equals(RoutePolicyLevel.CONTEXT)) {
                    factory.getPolicyConfiguration().setContextEnabled(true);
                    factory.getPolicyConfiguration().setRouteEnabled(false);
                } else {
                    policyConfiguration.setContextEnabled(false);
                    policyConfiguration.setRouteEnabled(true);
                }

                config.routePolicyExcludePattern().ifPresent(policyConfiguration::setExcludePattern);
            }

            ManagementStrategy managementStrategy = camelContext.getManagementStrategy();
            if (config.enableExchangeEventNotifier()) {
                MicrometerExchangeEventNotifier eventNotifier = new MicrometerExchangeEventNotifier();
                eventNotifier.setBaseEndpointURI(config.baseEndpointURIExchangeEventNotifier());

                if (config.namingStrategy().equals(MetricsNamingStrategy.LEGACY)) {
                    eventNotifier.setNamingStrategy(
                            new MicrometerExchangeEventNotifierNamingStrategyLegacy(
                                    config.baseEndpointURIExchangeEventNotifier()));
                } else {
                    eventNotifier.setNamingStrategy(
                            new MicrometerExchangeEventNotifierNamingStrategyDefault(
                                    config.baseEndpointURIExchangeEventNotifier()));
                }
                managementStrategy.addEventNotifier(eventNotifier);
            }

            if (config.enableRouteEventNotifier()) {
                MicrometerRouteEventNotifier eventNotifier = new MicrometerRouteEventNotifier();
                if (config.namingStrategy().equals(MetricsNamingStrategy.LEGACY)) {
                    eventNotifier.setNamingStrategy(MicrometerRouteEventNotifierNamingStrategy.LEGACY);
                }
                managementStrategy.addEventNotifier(eventNotifier);
            }
        }