in zuul-core/src/main/java/com/netflix/zuul/niws/RequestAttempt.java [116:161]
public RequestAttempt(
DiscoveryResult server,
InetAddress serverAddr,
IClientConfig clientConfig,
int attemptNumber,
int readTimeout) {
this.status = -1;
this.attempt = attemptNumber;
this.readTimeout = readTimeout;
if (server != null && !server.equals(DiscoveryResult.EMPTY)) {
this.host = server.getHost();
this.port = server.getPort();
this.availabilityZone = server.getZone();
if (server.isDiscoveryEnabled()) {
this.app = server.getAppName().toLowerCase(Locale.ROOT);
this.asg = server.getASGName();
this.instanceId = server.getServerId();
this.host = server.getHost();
this.port = server.getPort();
this.vip = server.getTarget();
this.availabilityZone = server.getAvailabilityZone();
} else {
SimpleMetaInfo metaInfo = server.getMetaInfo();
if (metaInfo != null) {
this.asg = metaInfo.getServerGroup();
this.vip = metaInfo.getServiceIdForDiscovery();
this.instanceId = metaInfo.getInstanceId();
}
}
// HACK - get region by just removing the last char from zone.
if (availabilityZone != null && availabilityZone.length() > 0) {
region = availabilityZone.substring(0, availabilityZone.length() - 1);
}
}
if (serverAddr != null) {
ipAddress = serverAddr.getHostAddress();
}
if (clientConfig != null) {
this.connectTimeout = clientConfig.get(IClientConfigKey.Keys.ConnectTimeout);
}
}