public MetricExportAutoConfiguration(MetricExportProperties properties, ObjectProvider<MetricsEndpointMetricReader> endpointReaderProvider, @ExportMetricReader ObjectProvider<List<MetricReader>> readersProvider, @ExportMetricWriter ObjectProvider<Map<String, GaugeWriter>> writersProvider, ObjectProvider<Map<String, Exporter>> exportersProvider) { this.properties = properties; this.endpointReader = endpointReaderProvider.getIfAvailable(); this.readers = readersProvider.getIfAvailable(); this.writers = writersProvider.getIfAvailable(); this.exporters = exportersProvider.getIfAvailable(); }
@Bean @ExportMetricWriter @ConditionalOnMissingBean @ConditionalOnProperty(prefix = "spring.metrics.export.statsd", name = "host") public StatsdMetricWriter statsdMetricWriter() { MetricExportProperties.Statsd statsdProperties = this.properties.getStatsd(); return new StatsdMetricWriter(statsdProperties.getPrefix(), statsdProperties.getHost(), statsdProperties.getPort()); }
@Bean(name = "spring.metrics.export-org.springframework.boot.actuate.metrics.export.MetricExportProperties") @ConditionalOnMissingBean public MetricExportProperties metricExportProperties() { MetricExportProperties export = new MetricExportProperties(); export.getRedis().setPrefix("spring.metrics" + (this.prefix.length() > 0 ? "." : "") + this.prefix); export.getAggregate().setPrefix(this.prefix); export.getAggregate().setKeyPattern(this.aggregateKeyPattern); return export; }
@Bean(name = "spring.metrics.export.CONFIGURATION_PROPERTIES") @ConditionalOnMissingBean public MetricExportProperties metricExportProperties() { MetricExportProperties export = new MetricExportProperties(); export.getRedis().setPrefix("spring.metrics" + (this.prefix.length() > 0 ? "." : "") + this.prefix); export.getAggregate().setPrefix(this.prefix); export.getAggregate().setKeyPattern(this.aggregateKeyPattern); return export; }
@Bean @ExportMetricWriter public MetricWriter metricWriter(MetricExportProperties export) { return new RedisMetricRepository(redisConnectionFactory, export.getRedis().getPrefix(), export.getRedis().getKey()); }
public AggregateMetricsConfiguration(MetricExportProperties export, RedisConnectionFactory connectionFactory) { this.export = export; this.connectionFactory = connectionFactory; }
public ApplicationMetricsProperties(MetricExportProperties metricExportProperties) { Assert.notNull(metricExportProperties, "'metricsExportProperties' cannot be null"); this.metricExportProperties = metricExportProperties; }