Olga Maciaszek-Sharma
331b523513
Handle null serviceId. ( #1034 )
2021-10-28 19:43:27 +02:00
Olga MaciaszekSharma
7cb8c34978
Refactor.
2021-10-28 19:39:55 +02:00
Olga MaciaszekSharma
e3fc8bd782
Refactor tets.
2021-10-28 19:05:31 +02:00
gandhiUH
a59b3f6031
added X-forward-Host and X-Forward-Proto
...
Updated LoadBalancerProperties and AutoConfiguration
LoadBalancerXtranformerTests added
PR Changes Implemented
Changes Implemented as per PR comments
Updated XForwadedHeadersTransformer name, test classes as per PR Commit on Oct,25, 2021
Addressed PR comments to modify tests with better Assertions
Changed the enabledXforwarded property name to just enabled in Xforwarded class as per PR comments
2021-10-28 19:05:17 +02:00
Spencer Gibb
3a6a9e0a91
Adds config per load balancer client. ( #1028 )
...
Client specific configuration goes under `spring.cloud.loadbalancer.clients.<serviceId>.*`. Defaults are set using `spring.cloud.loadbalancer.*`.
Adds LoadBalancerDefaultMappingsProviderAutoConfiguration to supply the loadbalancer defaults mapping to DefaultsBindHandlerAdvisor
LoadBalancerClientsProperties now extends LoadBalancerProperties. The `clients` attribute is now a field. The `@ConfigurationProperties("spring.cloud.loadbalancer")` has moved from LoadBalancerProperties to LoadBalancerClientsProperties
Fixes gh-914
2021-10-26 16:03:00 -04:00
Tim te Beek
95ce58741d
Increase JUnit5 usage ( #1020 )
2021-10-20 15:42:11 +02:00
Robert McNees
03fd58cd53
Skip health check if null or empty ( #1011 )
...
Fixes gh-1005
2021-09-16 14:06:48 -04:00
Olga MaciaszekSharma
bc42390206
Refactor and add javadocs.
2021-07-28 11:50:48 +02:00
sabyasachi
de32d2b68c
Issue-906 Adding support for query param in lb health-check
...
This PR is to fix issue https://github.com/spring-cloud/spring-cloud-commons/issues/906
where loadbalancer healthcheck has query param and
character "?" was automatically
converted to a URI encoding %3F, causing the request to fail.
What has changed
* Using `UriComponentsBuilder.fromUriString` this method parses the string and handles url
and query param path.
2021-07-28 11:42:43 +02:00
Olga MaciaszekSharma
bd8d640c42
Reformat with updated plugin.
2021-07-27 15:20:31 +02:00
Olga MaciaszekSharma
c009fd159d
Merge remote-tracking branch 'origin/3.0.x'
2021-07-27 15:15:38 +02:00
Olga MaciaszekSharma
6929b5058a
Remove spring-boot-starter-validation from LoadBalancer dependencies. Fixes gh-992.
2021-07-27 15:13:27 +02:00
Zhiguo.Chen
9feb443009
Add with() method to support external ServiceInstanceListSupplier( #988 ) ( #989 )
2021-07-27 12:39:27 +02:00
Olga MaciaszekSharma
bae3ddd4ea
Handle errror logging not enabled.
2021-07-12 20:02:18 +02:00
Olga MaciaszekSharma
4933259c17
Merge remote-tracking branch 'origin/2.2.x'
2021-07-05 16:24:10 +02:00
rodbate
84fb8550c7
Fix blocking discovery client.
2021-07-05 16:19:06 +02:00
Jisfeng
7d6b9857b1
rewrite annotation on ReactiveRetryConfiguration ( #965 )
2021-06-14 11:48:18 +02:00
Olga MaciaszekSharma
9d6e5e18d5
Remove stale property from additional-spring-configuration-metadata.json
2021-04-27 15:21:13 +02:00
Olga Maciaszek-Sharma
ac7e8f922b
Allow disabling load-balancing with property. ( #940 )
2021-04-01 16:42:34 +02:00
Olga Maciaszek-Sharma
517368e7ac
Pass request to supplier delegate calls ( #932 )
2021-03-23 19:59:05 +01:00
Olga MaciaszekSharma
5c0bc097fa
Merge remote-tracking branch 'origin/2.2.x'
...
# Conflicts:
# docs/src/main/asciidoc/spring-cloud-commons.adoc
# spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/LoadBalancerAutoConfiguration.java
# spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/reactive/ExchangeFilterFunctionUtils.java
# spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/reactive/ReactorLoadBalancerClientAutoConfiguration.java
# spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/reactive/ReactorLoadBalancerExchangeFilterFunction.java
# spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/reactive/RetryableLoadBalancerExchangeFilterFunction.java
# spring-cloud-commons/src/test/java/org/springframework/cloud/client/loadbalancer/reactive/RetryableLoadBalancerExchangeFilterFunctionIntegrationTests.java
# spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/config/BlockingLoadBalancerClientAutoConfiguration.java
2021-03-12 14:49:19 +01:00
Olga MaciaszekSharma
61560ef760
Fix flaky test.
2021-03-12 13:24:21 +01:00
Olga Maciaszek-Sharma
272365490a
Add hint-based instance filtering ( #923 )
2021-03-12 12:55:44 +01:00
Olga Maciaszek-Sharma
6b6f6dbbd5
Move LoadBalancerServiceInstanceCookieTransformer to loadbalancer module. ( #920 )
2021-03-11 16:28:21 +01:00
spencergibb
2b2903c91d
Makes junit:junit optional.
...
This means modules using spring-cloud-test-support must have the
junit-vintage-engine dependency so tests will run properly.
2021-03-09 14:45:32 -05:00
spencergibb
458ba95507
Fixes spring.cloud.oauth2.load-balanced.enabled condition.
...
Fixes gh-921
2021-03-09 14:44:38 -05:00
spencergibb
2cbf197050
Updates test to jupiter
2021-03-09 12:56:39 -05:00
Olga Maciaszek-Sharma
d583addb37
Add service instance cookie mechanism for blocking load-balanced requests. ( #918 )
2021-03-09 10:14:30 +01:00
Olga Maciaszek-Sharma
8bffa27e9a
Instantiate one LoadBalancedRetryFactory bean. ( #917 )
2021-03-05 16:22:10 +01:00
spencergibb
3c818f8cf3
Merge branch '2.2.x'
2021-03-03 16:23:18 -05:00
Tim Ysewyn
894b7d25c9
Log exceptions as errors
2021-03-03 22:17:58 +01:00
Olga Maciaszek-Sharma
36d5350661
Merge remote-tracking branch 'origin/2.2.x'
...
# Conflicts:
# spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/core/HealthCheckServiceInstanceListSupplier.java
2021-02-17 15:44:21 +01:00
Роман Чигвинцев
95a22796eb
Fix bug of service instance refetching when repeating health check is activated ( #904 )
...
Fixes gh-899
(cherry picked from commit 3d257b43003a02b64c4f7fd97680e7981d0b52f4)
2021-02-17 15:35:39 +01:00
johnny850807
361a8c2bae
Add getSupportedLifecycleProcessors method in BlockingLoadBalancerClient
...
# Conflicts:
# spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/blocking/client/BlockingLoadBalancerClient.java
2021-02-10 11:30:13 +01:00
Olga Maciaszek-Sharma
005f6d5487
Merge remote-tracking branch 'origin/2.2.x'
...
# Conflicts:
# spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/config/LoadBalancerCacheAutoConfiguration.java
2021-01-26 17:44:13 +01:00
Olga Maciaszek-Sharma
5839758365
Add CaffeineCacheManager class conditions to LoadBalancerCacheAutoConfiguration. ( #891 )
2021-01-26 17:37:44 +01:00
Olga Maciaszek-Sharma
a5903d03e0
Merge remote-tracking branch 'origin/2.2.x'
...
# Conflicts:
# spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/cache/DefaultLoadBalancerCacheManager.java
2021-01-26 17:34:39 +01:00
Olga Maciaszek-Sharma
3493612ab4
Use daemon threads with DefaultLoadBalancerCacheManager. ( #890 )
2021-01-26 17:29:54 +01:00
Olga Maciaszek-Sharma
c6bfc2d827
Merge remote-tracking branch 'origin/master'
2020-12-18 17:58:35 +01:00
Olga Maciaszek-Sharma
8125db910a
Add missing LB properties to configuration-metadata.
2020-12-18 17:58:20 +01:00
Olga Maciaszek-Sharma
a40258394a
Lb micrometer stats ( #871 )
...
* Add stats lifecycle bean. Add onStartRequest method to LoadBalancerLifecycle. Add loadbalancer.Request field to CompletionContext.
* Add TimedRequestContext interface. Make RetryableRequestContext extend RequestDataContext. Improve generating metrics. Add utility class for working with tags. Ensure tags are not null.
* Add separate meters depending on CompletionContext.Status.
* Modify registered metrics. Add adapter for BlockingLoadBalancerClient requests. Add autoconfiguration.
* Make new config conditional on MeterRegistry class.
* Rename lifecycle bean. Do not log request if 0 timestamp.
* Fix onStartRequest call arguments for BlockingLoadBalancerClient.
* Fix onStartRequest and onComplete calls for RetryLoadBalancerInterceptor.
* Only register timed request once. Add tests.
* Adjust tags logic. Add more tests.
* Add more tests.
* Refactor. Add javadocs.
* Refactor.
* Refactor.
* Retrieve client response data if possible in BlockingLoadBalancerClient.
* Refactor.
* Fix docs after review.
* Make previousServiceInstanceMutable.
* Change argument order for CompletionContext constructors. Remove duplicated start time setting.
2020-12-18 17:46:53 +01:00
Marcin Grzejszczak
1f0f750707
Moves classes from spring-cloud-security to spring-cloud-commons
2020-12-18 17:21:10 +01:00
Olga Maciaszek-Sharma
188fab7b32
Fix after merge.
2020-12-11 17:41:29 +01:00
Olga Maciaszek-Sharma
c04e4a2aed
Merge remote-tracking branch 'origin/2.2.x'
2020-12-11 17:34:41 +01:00
Olga Maciaszek-Sharma
65201f8f61
Add RandomLoadBalancer, along with tests and docs. ( #868 )
...
# Conflicts:
# spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/core/RoundRobinLoadBalancer.java
2020-12-11 17:33:42 +01:00
Olga Maciaszek-Sharma
ddd370c57d
Add function-based health check. Add restTemplate-based health-check beans to default config ( #866 )
...
* Switch to a function-based HealthCheckServiceInstanceListSupplier.
* Handle exception for restTemplate based function. Add default blocking health-check configuration.
* Add docs.
2020-12-11 17:20:57 +01:00
Olga Maciaszek-Sharma
c6bd75eb5d
Move LoadBalancerProperties to the parent package.
2020-12-10 16:43:30 +01:00
Olga Maciaszek-Sharma
8969d5d1e1
Remove deprecations.
2020-12-10 12:31:45 +01:00
Olga Maciaszek-Sharma
dce413ae66
Do not pass response body to LB lifecycle beans. ( #864 )
...
* Do not pass response body to LB lifecycle beans.
* Fix argument name.
2020-12-09 13:37:58 +01:00
Olga Maciaszek-Sharma
0f98419c47
Request based sticky session ( #860 )
...
* Implement first draft for sticky-session load-balancing.
* Make setting instance cookie opt-in.
* Add tests.
* Make adding request cookie opt-in.
* Add docs and javadocs.
* Add default configuration with blocking discovery client.
* Fix docs after review.
2020-12-07 13:08:06 +01:00