Add missing management.metrics.export.atlas properties
Closes gh-36496
This commit is contained in:
		
							parent
							
								
									99418f7dcc
								
							
						
					
					
						commit
						a5d5908c27
					
				|  | @ -1,5 +1,5 @@ | ||||||
| /* | /* | ||||||
|  * Copyright 2012-2020 the original author or authors. |  * Copyright 2012-2023 the original author or authors. | ||||||
|  * |  * | ||||||
|  * Licensed under the Apache License, Version 2.0 (the "License"); |  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||||
|  * you may not use this file except in compliance with the License. |  * you may not use this file except in compliance with the License. | ||||||
|  | @ -78,6 +78,21 @@ public class AtlasProperties { | ||||||
| 	 */ | 	 */ | ||||||
| 	private boolean lwcEnabled; | 	private boolean lwcEnabled; | ||||||
| 
 | 
 | ||||||
|  | 	/** | ||||||
|  | 	 * Step size (reporting frequency) to use for streaming to Atlas LWC. This is the | ||||||
|  | 	 * highest supported resolution for getting an on-demand stream of the data. It must | ||||||
|  | 	 * be less than or equal to management.metrics.export.atlas.step and | ||||||
|  | 	 * management.metrics.export.atlas.step should be an even multiple of this value. | ||||||
|  | 	 */ | ||||||
|  | 	private Duration lwcStep = Duration.ofSeconds(5); | ||||||
|  | 
 | ||||||
|  | 	/** | ||||||
|  | 	 * Whether expressions with the same step size as Atlas publishing should be ignored | ||||||
|  | 	 * for streaming. Used for cases where data being published to Atlas is also sent into | ||||||
|  | 	 * streaming from the backend. | ||||||
|  | 	 */ | ||||||
|  | 	private boolean lwcIgnorePublishStep = true; | ||||||
|  | 
 | ||||||
| 	/** | 	/** | ||||||
| 	 * Frequency for refreshing config settings from the LWC service. | 	 * Frequency for refreshing config settings from the LWC service. | ||||||
| 	 */ | 	 */ | ||||||
|  | @ -170,6 +185,22 @@ public class AtlasProperties { | ||||||
| 		this.lwcEnabled = lwcEnabled; | 		this.lwcEnabled = lwcEnabled; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | 	public Duration getLwcStep() { | ||||||
|  | 		return this.lwcStep; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	public void setLwcStep(Duration lwcStep) { | ||||||
|  | 		this.lwcStep = lwcStep; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	public boolean isLwcIgnorePublishStep() { | ||||||
|  | 		return this.lwcIgnorePublishStep; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	public void setLwcIgnorePublishStep(boolean lwcIgnorePublishStep) { | ||||||
|  | 		this.lwcIgnorePublishStep = lwcIgnorePublishStep; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	public Duration getConfigRefreshFrequency() { | 	public Duration getConfigRefreshFrequency() { | ||||||
| 		return this.configRefreshFrequency; | 		return this.configRefreshFrequency; | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /* | /* | ||||||
|  * Copyright 2012-2019 the original author or authors. |  * Copyright 2012-2023 the original author or authors. | ||||||
|  * |  * | ||||||
|  * Licensed under the Apache License, Version 2.0 (the "License"); |  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||||
|  * you may not use this file except in compliance with the License. |  * you may not use this file except in compliance with the License. | ||||||
|  | @ -84,6 +84,16 @@ class AtlasPropertiesConfigAdapter extends PropertiesConfigAdapter<AtlasProperti | ||||||
| 		return get(AtlasProperties::isLwcEnabled, AtlasConfig.super::lwcEnabled); | 		return get(AtlasProperties::isLwcEnabled, AtlasConfig.super::lwcEnabled); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | 	@Override | ||||||
|  | 	public Duration lwcStep() { | ||||||
|  | 		return get(AtlasProperties::getLwcStep, AtlasConfig.super::lwcStep); | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	@Override | ||||||
|  | 	public boolean lwcIgnorePublishStep() { | ||||||
|  | 		return get(AtlasProperties::isLwcIgnorePublishStep, AtlasConfig.super::lwcIgnorePublishStep); | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	@Override | 	@Override | ||||||
| 	public Duration configRefreshFrequency() { | 	public Duration configRefreshFrequency() { | ||||||
| 		return get(AtlasProperties::getConfigRefreshFrequency, AtlasConfig.super::configRefreshFrequency); | 		return get(AtlasProperties::getConfigRefreshFrequency, AtlasConfig.super::configRefreshFrequency); | ||||||
|  |  | ||||||
|  | @ -116,4 +116,18 @@ class AtlasPropertiesConfigAdapterTests { | ||||||
| 			.isEqualTo("https://atlas.example.com/evaluate"); | 			.isEqualTo("https://atlas.example.com/evaluate"); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | 	@Test | ||||||
|  | 	void whenPropertiesLwcStepIsSetAdapterLwcStepReturnsIt() { | ||||||
|  | 		AtlasProperties properties = new AtlasProperties(); | ||||||
|  | 		properties.setLwcStep(Duration.ofSeconds(30)); | ||||||
|  | 		assertThat(new AtlasPropertiesConfigAdapter(properties).lwcStep()).isEqualTo(Duration.ofSeconds(30)); | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	@Test | ||||||
|  | 	void whenPropertiesLwcIgnorePublishStepIsSetAdapterLwcIgnorePublishStepReturnsIt() { | ||||||
|  | 		AtlasProperties properties = new AtlasProperties(); | ||||||
|  | 		properties.setLwcIgnorePublishStep(false); | ||||||
|  | 		assertThat(new AtlasPropertiesConfigAdapter(properties).lwcIgnorePublishStep()).isFalse(); | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -1,5 +1,5 @@ | ||||||
| /* | /* | ||||||
|  * Copyright 2012-2019 the original author or authors. |  * Copyright 2012-2023 the original author or authors. | ||||||
|  * |  * | ||||||
|  * Licensed under the Apache License, Version 2.0 (the "License"); |  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||||
|  * you may not use this file except in compliance with the License. |  * you may not use this file except in compliance with the License. | ||||||
|  | @ -41,6 +41,8 @@ class AtlasPropertiesTests { | ||||||
| 		assertThat(properties.getUri()).isEqualTo(config.uri()); | 		assertThat(properties.getUri()).isEqualTo(config.uri()); | ||||||
| 		assertThat(properties.getMeterTimeToLive()).isEqualTo(config.meterTTL()); | 		assertThat(properties.getMeterTimeToLive()).isEqualTo(config.meterTTL()); | ||||||
| 		assertThat(properties.isLwcEnabled()).isEqualTo(config.lwcEnabled()); | 		assertThat(properties.isLwcEnabled()).isEqualTo(config.lwcEnabled()); | ||||||
|  | 		assertThat(properties.getLwcStep()).isEqualTo(config.lwcStep()); | ||||||
|  | 		assertThat(properties.isLwcIgnorePublishStep()).isEqualTo(config.lwcIgnorePublishStep()); | ||||||
| 		assertThat(properties.getConfigRefreshFrequency()).isEqualTo(config.configRefreshFrequency()); | 		assertThat(properties.getConfigRefreshFrequency()).isEqualTo(config.configRefreshFrequency()); | ||||||
| 		assertThat(properties.getConfigTimeToLive()).isEqualTo(config.configTTL()); | 		assertThat(properties.getConfigTimeToLive()).isEqualTo(config.configTTL()); | ||||||
| 		assertThat(properties.getConfigUri()).isEqualTo(config.configUri()); | 		assertThat(properties.getConfigUri()).isEqualTo(config.configUri()); | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue