Skip to content
This repository was archived by the owner on May 4, 2019. It is now read-only.

Commit c49718f

Browse files
committed
Merge branch 'release/0.8.9'
2 parents 61c1986 + 095383e commit c49718f

File tree

8 files changed

+52
-34
lines changed

8 files changed

+52
-34
lines changed

.travis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ cache:
3333
- "$HOME/.m2"
3434
env:
3535
global:
36-
- secure: fG6x4/LuQuYDO6B3hw9YnxTKBepOS/zcSqDbyl3fJkYSDYuRS6yvI0CsQCQGTLtD3MKED+0o43rUiuPgNzz3qENKQukrFgmXQl24fwuUxtFhz4Lbb3OCMnWMAU3SgWZmpbUoOhCEGr0LzvYnb+MImiRU2v7gxr4Nc9hy8gRZjQQ4R7V+UlhOhZVjN5JfsEnKMpZejEkFlNADCdAhSDdHLVZN7lOsFjDC7XQ/GKLKGrRyIzREto9hm58QIsolghMyIEL2Jj1+ePTM/3wCYLUaRpdUjmHQawJi9vfwFO4g4yyKdUVXHpITQwQ7JE/SoJsje8ZUhOJZ3TvaBDlVjvXP41P3JNDbSesrBYcR0k70TYr7wliHKsdGurHvDQ/2Rxas/FITFGvLchYczbUPLJ7h0fJha+cpwsmmNvLmg0RIaaHa4RXPknWuetipbJFSqYtBN01iCtdSzHwwhZGZ6zV3kPBa0QWsDLWa/Ih2STDY6DVIA6YgaqaM6aN9U/UR8XeCnjPot+StaNuU2nSgGcwX5BIZRMuca9OF6FryG+t527njU86mp2QSj1HOTs/c31v9sSg2krCl7jChm3ZtpXyiEp+IdKaa5uZHLyx0fcm489375PLjhE6gRp/zvYf58uSvoMLOl1xwfOkNiPP8YXIDtVodzgGxCnxD49WE5B9CCbk=
37-
- secure: NvHtXfxiqBwkmj5l7Wr9EuBi9X0dMVL5CCeKFVqzIOmXCIdjwvknQ3rfZZ46fjwOQC/FuCcoM/8dHkBIkGzqIVo9Qx1+AGnq4AO7rr+iLYPvmz2wB8QKrD81bVAhtoKnuYe1wyu1XvURBgrietjoAgxrhgW3iReBVW4dj0YaTdRZXAD70M3i63tfV9GyB2pv6NfRyaq50IGkaJPdiyUPpDWcSmtnrkxQvUvIzNm50AGKEq3IuLp+wgVouAI81m1a+B0TuEfo4VnqOKlJx1dq9VT76GN4Ni+u2Rnnli2kFAXGtGfuPrZF1WPE2APJQ4W9H7YeGzya38JCUkkwD2Buxoe7CsW7ZEVnGbFE4xsuc+vejvDkeGF4LLABzuGwcDxG70MPHoXpyd1ayY3Iek1zPn4/3nFTO40YreeaHDT3MG3BSZx6WkMfmqfnFsKJeX9g7zzZLGmOuniwGLOIwFpePtyhn/wQvfPG+UalnSk+pXyGWuhnurcgDlk7ASlHj4TZnDiZvCCZy1xdzytttwf/i71Ts+6Db+TZfggnymeYFRo19UpLTr15Rdkwk0CNrJlvruKkGkR5G2els14M37PhHaeIdGol3ZqARs9+7o9gnRW2cPaQ26IRgNSGQwRhGaJcAyoLNZejc97OHEga9r6B8cIJK6NGD+4m8GA7Sh4O3EM=
3836
- secure: crwXv5Q/iCtIIC81QWgWYNfuGJxSQQjVn83vvRoRMXmfSZ02NnQfDos+p1GxxbIXLUQ8NsaLc8cg0o2PQgsK/l0d7nDExix5Rt+AwzU4UOrUcZh46MgEeZDow4q6ySToOHaeKsaRnbTIpAwU28o9fnZ9ViaQ7s2uZWQZXYigGf0PN1ca9E8MJ6VEMvp34e2wJok6woaWG9ALCL2b5viofTv0zdHXWfGV4rdz9Rq0fThmFn4BlmHdcTwGt2ZLdWcEbzv0qNYNAiVvNJd4uWHOnjRceslAZ/JZxgIzSHK0ctNiZdc9rRNo8BHGQqKvmZqmbzUAU07uS0+iLBnm89KKJyQCXKulDv7NM0ShiFexMQ17TUOdlJtH65ypzUIJ+sbSOj2M+NhThUD8OQlebvjKF6t8M9f1NIXkkH/Xw2XJ146ANBcGyjALVFDIqlKIyCtIoY3/teQWccfbAzBglC24QBizpfgmdBEGOJXs2qR0NxzcIRNc1o9XPyT9BJxa+9JnHyHbF+LG07j1LfaaJSQBIYL7xjDBwEEIOEmP3UrISwjvs1fOQA3oYINguXtl7qi3wNylv35e5xw5acijcTTYHRSY6A5rPdokbK0fCQHCrHldBYDc8Bvy+GnjnYQHynjdWGbTnkvMgvYe2aHD+mH5pO5V7DRYHhnJsuMuscRIELc=
3937
- secure: ZMu9rhzTT1F6pyqqrd0TGhAeUGigAvGZT5rJv2ifZJEB8+FOQ+/ylJ/Q3Gq9Wx8quWVR/ocTWF8yEuA1BlZF1Z+tfOcCXOaYPrgMFNhgmETK9X1AQN1gahkTzLNWEZUzKwte5IwaDYDwMe54VcJpY9/f7R6ZyjKVEJOLCjnJ+YLR2rjttsug9ZurH3iLzdgRGMHyI55+dz83MkdumkkATFAeLnQepdL2n4ijD0NvuzvlvaU+Knz9AZCX2kSNDM+hn+K0fFDM4CBFduBi8gEYmRlnSXslHtfwuZRViZQaS4voRMAFmWPNCH67ya3f1voi41BWXgaGTW5He8XDjQtFcIphvykmMOsS4ka9u4K0LEbReoSBRwBUAhigGMFXB1lMup66+WvjvSvwS9rMVVGaXpVGjgpM5shWpiIEoWICWU+Pu5ihk9BWv61/tYNNw6u3QlXt1ZfjM50F7eoJ1ctfYqClrlD3iwrBJ47aIu4kH1HdCp9uxkxq+Cz75n2UdV6Py7eEW1N141fnZ/Iax8nzbNu4SxccsJn1yUv22LJCteW3//GqvRVa7hets587PFpfkyaraBLNBvh90/wouXK/yvYBZN4WK7VwnuCUmxTjTglT9mQGUgPOYNMDU/m7rDp2zDc+8aMEfQjWGktH93M0g1l9yhidc8AMQbyAaxkk73M=
38+
- secure: hxmPq8HtqUN04I639LiDA6euoWW8ziWs70USv7nwRLSE0gV/oDrwFrDX5QJNP4rP04hD/UCll0jKZPHClVjXfW7s9U2wqrFlyJifFoefQms7HZIselUuRXAjkK7KVA8ur1kz+6Ox3Ji7gxUnkF9cGR+rGAHyllSmuD+UIw2vCUHcqAAlhYzN9NfenjqEBNTQ5QTR0p1I37fDLsxORxTjuUxQO0yaYv1sy0eUUbDSR0XN0VrN/sNFMkV6+m5+A+7/4LYqxmZxyRqSC4Qk726k8Eab0K/QCnxE3TO/QoAPk9QZ2BEtHbrycNhm9yxG9+CGNbZCpQaWH1BEeo5F9B6u1prbikqzd9cTSuLGqR1r4wBDuIDFB8RloOMvoB0Z5+CWeP8X9u7q13vFFDS26crMWbqCCoo9Vcel8Js1H8/awnYrxtYhBk4BRGDzgUfRzaru+GpjE3s1kppkjj01qUo3fN9P+Px/zISPD9OdMgVvdN0O3rGPYHniFS9lQJZaJSJUU8hlApqsTQfK+5j8vIKmPe0ur39XriVeC8Kam8SWMymjLrLaNGOe0XvST9MLKKel7Aj9mknNyZ0dQEr24BLlN/vGHQsHTrpnReLHP3szuF5FXZQsqYQ2uN4Q5000O6IJfbD9FcBJHzOCtyIlNkJ12qK6GiLChwqcpv9muQZcaH8=
39+
- secure: fyh1tUQJBijuGd5jO6ZHl2yn8u5uKgz+9tKgrGNBg2NNlxXvq1TJqBj1/fkZonH3rxPAH4AnmxsR4ktWKhmTci16D3ATflpxVOSQYHdMqbsxpNt4e+um/lnFLp6WORLkcnFAsA0rUrH3eRJXPfZ6YgcY3L4tddiT0sqLZ1ECo5gA915CPN8ANioHzooWJgVBcbr34z2HcJudgKws4C+MoiTKv3C9Ijamg+30D/wgiyRJXPD/azb2KoVx+Bk5yIQuBOl3G/a/LMpK+kv/2jZQjUT/gnKLEvRu9H5xJIL41mFTRgmZxD9E0Rb0VeAaYICfo+4K2g2smXeA/Eb9lmwMQYiEKdG2IH2chjPggBM0hsB42pGc+mFDKaNCtQSVkbQkrg2CmDMwvBaL7IBFNUmlSbZfG1PeQluSNs9uECR0MFM/zyNECLGkcrf3kZXHMuQ+1jYPWf37CuiNbEnN8sQm65t9wqX3TqRB8rksGaThVvYizIon7zuuIrKINynGDEc3ygVUOeOBLT+U9AaF1jatkxuwiZ/VJaReYuJvH76wCUb6k91RQA9udK4n8h8aMomOmTyIWRSnEFObDs1RW6Lixh5PRShTKG8ffoY0vM5IO5i17dPFOmIRo99yqKiWPcfQLK8IP0SiCwc6w0pqAns6H/r8qBgk6BoXGnBT5kyzKr8=

client/src/main/java/io/netifi/proteus/Proteus.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ public static class Builder {
141141
private int poolSize = Runtime.getRuntime().availableProcessors();
142142
private Supplier<Tracer> tracerSupplier = () -> null;
143143

144-
private Builder clientTransportFactory(
144+
public Builder clientTransportFactory(
145145
Function<SocketAddress, ClientTransport> clientTransportFactory) {
146146
this.clientTransportFactory = clientTransportFactory;
147147
return this;

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
group=io.netifi.proteus
2-
version=0.8.8
2+
version=0.8.9

gradle/java.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ test {
9797
}
9898
}
9999

100-
if ("$version".contains('SNAPSHOT')) {
100+
if ("$version".contains('SNAPSHOT') || "$version".contains('RC')) {
101101
publishing {
102102
publications {
103103
mavenJava(MavenPublication) {
@@ -129,7 +129,7 @@ if ("$version".contains('SNAPSHOT')) {
129129

130130
bintray {
131131
user = project.hasProperty('bintrayUser') ? project.property('bintrayUser') : System.getenv('BINTRAY_USER')
132-
key = project.hasProperty('bintrayKey') ? project.property('bintrayKey') : System.getenv('f')
132+
key = project.hasProperty('bintrayKey') ? project.property('bintrayKey') : System.getenv('BINTRAY_KEY')
133133

134134
publications = ['mavenJava']
135135

protobuf-rpc/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -231,7 +231,7 @@ artifacts {
231231
//}
232232

233233

234-
if ("$version".contains('SNAPSHOT')) {
234+
if ("$version".contains('SNAPSHOT') || "$version".contains('RC')) {
235235
publishing {
236236
publications {
237237
maven(MavenPublication) {

tracing-openzipkin/src/main/java/io/netifi/proteus/tracing/ProteusReporter.java

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import reactor.core.publisher.DirectProcessor;
77
import reactor.core.publisher.Flux;
88
import reactor.core.publisher.FluxProcessor;
9-
import reactor.retry.Retry;
9+
import reactor.core.publisher.Mono;
1010
import zipkin2.Annotation;
1111
import zipkin2.Component;
1212
import zipkin2.Endpoint;
@@ -15,6 +15,8 @@
1515

1616
import java.io.IOException;
1717
import java.time.Duration;
18+
import java.util.concurrent.atomic.AtomicInteger;
19+
import java.util.concurrent.atomic.AtomicLong;
1820

1921
class ProteusReporter extends Component implements Reporter<Span> {
2022
private static final Logger logger = LoggerFactory.getLogger(ProteusReporter.class);
@@ -27,9 +29,20 @@ class ProteusReporter extends Component implements Reporter<Span> {
2729
this.sink = DirectProcessor.<Span>create().serialize();
2830
this.group = group;
2931
this.destination = destination;
32+
AtomicInteger count = new AtomicInteger();
33+
AtomicLong lastRetry = new AtomicLong(System.currentTimeMillis());
3034
this.disposable =
3135
Flux.defer(() -> service.streamSpans(sink.onBackpressureLatest().map(this::mapSpan)))
32-
.doOnError(throwable -> logger.error("error sending tracing data", throwable))
36+
.onErrorResume(
37+
throwable -> {
38+
if (System.currentTimeMillis() - lastRetry.getAndSet(System.currentTimeMillis()) > 30_000) {
39+
count.set(0);
40+
}
41+
42+
int i = Math.min(30, count.incrementAndGet());
43+
logger.error("error sending tracing data", throwable);
44+
return Mono.delay(Duration.ofSeconds(i)).then(Mono.error(throwable));
45+
})
3346
.retry()
3447
.subscribe();
3548
}

tracing-openzipkin/src/main/java/io/netifi/proteus/tracing/ProteusZipkinHttpBridge.java

Lines changed: 29 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -28,26 +28,12 @@ public class ProteusZipkinHttpBridge implements ProteusTracingService {
2828
private final int port;
2929

3030
private final String zipkinUrl;
31-
3231
private HttpClient httpClient;
3332

3433
public ProteusZipkinHttpBridge(String host, int port, String zipkinUrl) {
3534
this.zipkinUrl = zipkinUrl;
3635
this.host = host;
3736
this.port = port;
38-
this.httpClient =
39-
HttpClient.builder()
40-
.options(
41-
builder ->
42-
builder
43-
.compression(true)
44-
.poolResources(PoolResources.fixed("proteusZipkinBridge"))
45-
.option(ChannelOption.SO_KEEPALIVE, true)
46-
.option(ChannelOption.SO_TIMEOUT, 60_000)
47-
.option(ChannelOption.CONNECT_TIMEOUT_MILLIS, 30_000)
48-
.host(host)
49-
.port(port))
50-
.build();
5137
}
5238

5339
public ProteusZipkinHttpBridge(String host, int port) {
@@ -94,6 +80,28 @@ public static void main(String... args) {
9480
proteus.onClose().block();
9581
}
9682

83+
private synchronized HttpClient getClient() {
84+
if (httpClient == null) {
85+
this.httpClient =
86+
HttpClient.builder()
87+
.options(
88+
builder ->
89+
builder
90+
.compression(true)
91+
.poolResources(PoolResources.fixed("proteusZipkinBridge"))
92+
.option(ChannelOption.SO_KEEPALIVE, true)
93+
.option(ChannelOption.CONNECT_TIMEOUT_MILLIS, 30_000)
94+
.host(host)
95+
.port(port))
96+
.build();
97+
}
98+
return httpClient;
99+
}
100+
101+
private synchronized void resetHttpClient() {
102+
this.httpClient = null;
103+
}
104+
97105
@Override
98106
public Mono<Ack> streamSpans(Publisher<Span> messages, ByteBuf metadata) {
99107
return Flux.from(messages)
@@ -119,22 +127,19 @@ public Mono<Ack> streamSpans(Publisher<Span> messages, ByteBuf metadata) {
119127
.flatMap(stringMono -> stringMono)
120128
.concatMap(
121129
spans ->
122-
httpClient
130+
getClient()
123131
.post(
124132
zipkinUrl,
125133
request -> {
126134
request.addHeader("Content-Type", "application/json");
127135
return request.sendString(Mono.just(spans));
128136
})
129-
.doOnError(
130-
throwable ->
131-
logger.error(
132-
"error sending data to tracing data to url "
133-
+ zipkinUrl
134-
+ " and payload [\n" + spans +"\n]",
135-
throwable))
136-
.timeout(Duration.ofSeconds(30)),
137-
256)
137+
.timeout(Duration.ofSeconds(30))
138+
.doOnError(throwable -> resetHttpClient()),
139+
8)
140+
.doOnError(
141+
throwable ->
142+
logger.error("error sending data to tracing data to url " + zipkinUrl, throwable))
138143
.then(Mono.never());
139144
}
140145
}

tracing-openzipkin/src/main/resources/log4j2.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
<logger name="io.rsocket.FrameLogger" level="ERROR" additivity="false">
1919
<AppenderRef ref="STDOUT"/>
2020
</logger>
21-
<logger name="io.netifi.proteus.tracing" level="ERROR" additivity="false">
21+
<logger name="io.netifi.proteus.tracing" level="INFO" additivity="false">
2222
<AppenderRef ref="STDOUT"/>
2323
</logger>
2424
</Loggers>

0 commit comments

Comments
 (0)