Package com.netflix.zuul.origins
Class BasicNettyOrigin
java.lang.Object
com.netflix.zuul.origins.BasicNettyOrigin
- All Implemented Interfaces:
InstrumentedOrigin
,NettyOrigin
,Origin
Netty Origin basic implementation that can be used for most apps, with the more complex methods having no-op
implementations.
Author: Arthur Gonigberg
Date: December 01, 2017
-
Constructor Summary
ConstructorsConstructorDescriptionBasicNettyOrigin
(OriginName originName, com.netflix.spectator.api.Registry registry) -
Method Summary
Modifier and TypeMethodDescriptionvoid
adjustRetryPolicyIfNeeded
(HttpRequestMessage zuulRequest) io.netty.util.concurrent.Promise<PooledConnection>
connectToOrigin
(HttpRequestMessage zuulReq, io.netty.channel.EventLoop eventLoop, int attemptNumber, CurrentPassport passport, AtomicReference<com.netflix.zuul.discovery.DiscoveryResult> chosenServer, AtomicReference<? super InetAddress> chosenHostAddr) com.netflix.client.config.IClientConfig
double
double
getIpAddrFromServer
(com.netflix.zuul.discovery.DiscoveryResult discoveryResult) int
getMaxRetriesForRequest
(SessionContext context) getName()
com.netflix.spectator.api.Registry
boolean
boolean
isCold()
newRequestAttempt
(com.netflix.zuul.discovery.DiscoveryResult server, SessionContext zuulCtx, int attemptNum) void
onRequestExceptionWithServer
(HttpRequestMessage zuulReq, com.netflix.zuul.discovery.DiscoveryResult discoveryResult, int attemptNum, Throwable t) void
onRequestExecutionFailed
(HttpRequestMessage zuulReq, com.netflix.zuul.discovery.DiscoveryResult discoveryResult, int attemptNum, Throwable t) void
void
onRequestExecutionSuccess
(HttpRequestMessage zuulReq, HttpResponseMessage zuulResp, com.netflix.zuul.discovery.DiscoveryResult discoveryResult, int attemptNum) void
onRequestStartWithServer
(HttpRequestMessage zuulReq, com.netflix.zuul.discovery.DiscoveryResult discoveryResult, int attemptNum) void
preRequestChecks
(HttpRequestMessage zuulRequest) void
recordFinalError
(HttpRequestMessage requestMsg, Throwable throwable) void
void
void
protected com.netflix.client.config.IClientConfig
setupClientConfig
(OriginName originName)
-
Constructor Details
-
BasicNettyOrigin
-
-
Method Details
-
setupClientConfig
-
getName
-
isAvailable
public boolean isAvailable()- Specified by:
isAvailable
in interfaceOrigin
-
isCold
public boolean isCold() -
connectToOrigin
public io.netty.util.concurrent.Promise<PooledConnection> connectToOrigin(HttpRequestMessage zuulReq, io.netty.channel.EventLoop eventLoop, int attemptNumber, CurrentPassport passport, AtomicReference<com.netflix.zuul.discovery.DiscoveryResult> chosenServer, AtomicReference<? super InetAddress> chosenHostAddr) - Specified by:
connectToOrigin
in interfaceNettyOrigin
-
getMaxRetriesForRequest
- Specified by:
getMaxRetriesForRequest
in interfaceNettyOrigin
-
newRequestAttempt
public RequestAttempt newRequestAttempt(com.netflix.zuul.discovery.DiscoveryResult server, SessionContext zuulCtx, int attemptNum) - Specified by:
newRequestAttempt
in interfaceNettyOrigin
-
getIpAddrFromServer
- Specified by:
getIpAddrFromServer
in interfaceNettyOrigin
-
getClientConfig
public com.netflix.client.config.IClientConfig getClientConfig()- Specified by:
getClientConfig
in interfaceNettyOrigin
-
getSpectatorRegistry
public com.netflix.spectator.api.Registry getSpectatorRegistry()- Specified by:
getSpectatorRegistry
in interfaceNettyOrigin
-
recordFinalError
- Specified by:
recordFinalError
in interfaceNettyOrigin
-
recordFinalResponse
- Specified by:
recordFinalResponse
in interfaceNettyOrigin
-
preRequestChecks
- Specified by:
preRequestChecks
in interfaceInstrumentedOrigin
-
recordProxyRequestEnd
public void recordProxyRequestEnd()- Specified by:
recordProxyRequestEnd
in interfaceInstrumentedOrigin
-
getErrorPercentage
public double getErrorPercentage()- Specified by:
getErrorPercentage
in interfaceInstrumentedOrigin
-
getErrorAllPercentage
public double getErrorAllPercentage()- Specified by:
getErrorAllPercentage
in interfaceInstrumentedOrigin
-
onRequestExecutionStart
- Specified by:
onRequestExecutionStart
in interfaceNettyOrigin
-
onRequestStartWithServer
public void onRequestStartWithServer(HttpRequestMessage zuulReq, com.netflix.zuul.discovery.DiscoveryResult discoveryResult, int attemptNum) - Specified by:
onRequestStartWithServer
in interfaceNettyOrigin
-
onRequestExceptionWithServer
public void onRequestExceptionWithServer(HttpRequestMessage zuulReq, com.netflix.zuul.discovery.DiscoveryResult discoveryResult, int attemptNum, Throwable t) - Specified by:
onRequestExceptionWithServer
in interfaceNettyOrigin
-
onRequestExecutionSuccess
public void onRequestExecutionSuccess(HttpRequestMessage zuulReq, HttpResponseMessage zuulResp, com.netflix.zuul.discovery.DiscoveryResult discoveryResult, int attemptNum) - Specified by:
onRequestExecutionSuccess
in interfaceNettyOrigin
-
onRequestExecutionFailed
public void onRequestExecutionFailed(HttpRequestMessage zuulReq, com.netflix.zuul.discovery.DiscoveryResult discoveryResult, int attemptNum, Throwable t) - Specified by:
onRequestExecutionFailed
in interfaceNettyOrigin
-
adjustRetryPolicyIfNeeded
- Specified by:
adjustRetryPolicyIfNeeded
in interfaceInstrumentedOrigin
-
recordSuccessResponse
public void recordSuccessResponse()- Specified by:
recordSuccessResponse
in interfaceInstrumentedOrigin
-