Skip to content

Commit ac15990

Browse files
committed
Cleanup loggign
1 parent 7c4383a commit ac15990

File tree

5 files changed

+142
-144
lines changed

5 files changed

+142
-144
lines changed

services-api/src/main/java/io/scalecube/services/ServiceCall.java

Lines changed: 89 additions & 133 deletions
Original file line numberDiff line numberDiff line change
@@ -21,18 +21,18 @@
2121
import io.scalecube.services.routing.Router;
2222
import io.scalecube.services.routing.Routers;
2323
import io.scalecube.services.transport.api.ClientTransport;
24+
import java.lang.reflect.Array;
2425
import java.lang.reflect.Method;
2526
import java.lang.reflect.Proxy;
2627
import java.lang.reflect.Type;
28+
import java.util.Collection;
2729
import java.util.Collections;
2830
import java.util.HashMap;
2931
import java.util.Map;
3032
import java.util.Objects;
3133
import java.util.Optional;
3234
import java.util.function.Function;
3335
import org.reactivestreams.Publisher;
34-
import org.slf4j.Logger;
35-
import org.slf4j.LoggerFactory;
3636
import reactor.core.Exceptions;
3737
import reactor.core.publisher.Flux;
3838
import reactor.core.publisher.Mono;
@@ -46,7 +46,8 @@ public class ServiceCall implements AutoCloseable {
4646
private ServiceClientErrorMapper errorMapper = DefaultErrorMapper.INSTANCE;
4747
private Map<String, String> credentials = Collections.emptyMap();
4848
private String contentType = ServiceMessage.DEFAULT_DATA_FORMAT;
49-
private Logger logger;
49+
50+
// private Logger logger;
5051

5152
public ServiceCall() {}
5253

@@ -57,7 +58,6 @@ private ServiceCall(ServiceCall other) {
5758
this.errorMapper = other.errorMapper;
5859
this.contentType = other.contentType;
5960
this.credentials = Collections.unmodifiableMap(new HashMap<>(other.credentials));
60-
this.logger = other.logger;
6161
}
6262

6363
/**
@@ -144,42 +144,6 @@ public ServiceCall contentType(String contentType) {
144144
return target;
145145
}
146146

147-
/**
148-
* Setter for {@link ServiceCall} {@code logger}.
149-
*
150-
* @param name logger name (optional)
151-
* @return new {@link ServiceCall} instance.
152-
*/
153-
public ServiceCall logger(String name) {
154-
ServiceCall target = new ServiceCall(this);
155-
target.logger = name != null ? LoggerFactory.getLogger(name) : null;
156-
return target;
157-
}
158-
159-
/**
160-
* Setter for {@link ServiceCall} {@code logger}.
161-
*
162-
* @param clazz logger name (optional)
163-
* @return new {@link ServiceCall} instance.
164-
*/
165-
public ServiceCall logger(Class<?> clazz) {
166-
ServiceCall target = new ServiceCall(this);
167-
target.logger = clazz != null ? LoggerFactory.getLogger(clazz) : null;
168-
return target;
169-
}
170-
171-
/**
172-
* Setter for {@link ServiceCall} {@code logger}.
173-
*
174-
* @param logger logger (optional)
175-
* @return new {@link ServiceCall} instance.
176-
*/
177-
public ServiceCall logger(Logger logger) {
178-
ServiceCall target = new ServiceCall(this);
179-
target.logger = logger;
180-
return target;
181-
}
182-
183147
/**
184148
* Invokes fire-and-forget request.
185149
*
@@ -209,50 +173,37 @@ public Mono<ServiceMessage> requestOne(ServiceMessage request) {
209173
*/
210174
public Mono<ServiceMessage> requestOne(ServiceMessage request, Type responseType) {
211175
return Mono.defer(
212-
() -> {
213-
ServiceMethodInvoker methodInvoker;
214-
if (serviceRegistry != null
215-
&& (methodInvoker = serviceRegistry.lookupInvoker(request)) != null) {
216-
// local service
217-
return methodInvoker
218-
.invokeOne(request)
219-
.map(this::throwIfError)
220-
.contextWrite(
221-
context -> {
222-
if (context.hasKey(RequestContext.class)) {
223-
return context;
224-
} else {
225-
return new RequestContext(context)
226-
.headers(request.headers())
227-
.request(request)
228-
.principal(NULL_PRINCIPAL);
229-
}
230-
});
231-
} else {
232-
// remote service
233-
Objects.requireNonNull(transport, "[requestOne] transport");
234-
return Mono.fromCallable(() -> serviceLookup(request))
235-
.flatMap(
236-
serviceReference ->
237-
transport
238-
.create(serviceReference)
239-
.requestResponse(request, responseType)
240-
.map(this::throwIfError));
241-
}
242-
})
243-
.doOnSuccess(
244-
response -> {
245-
if (logger != null && logger.isDebugEnabled()) {
246-
logger.debug(
247-
"[{}] request: {}, response: {}", request.qualifier(), request, response);
248-
}
249-
})
250-
.doOnError(
251-
ex -> {
252-
if (logger != null) {
253-
logger.error("[{}][error] request: {}", request.qualifier(), request, ex);
254-
}
255-
});
176+
() -> {
177+
ServiceMethodInvoker methodInvoker;
178+
if (serviceRegistry != null
179+
&& (methodInvoker = serviceRegistry.lookupInvoker(request)) != null) {
180+
// local service
181+
return methodInvoker
182+
.invokeOne(request)
183+
.map(this::throwIfError)
184+
.contextWrite(
185+
context -> {
186+
if (context.hasKey(RequestContext.class)) {
187+
return context;
188+
} else {
189+
return new RequestContext(context)
190+
.headers(request.headers())
191+
.request(request)
192+
.principal(NULL_PRINCIPAL);
193+
}
194+
});
195+
} else {
196+
// remote service
197+
Objects.requireNonNull(transport, "[requestOne] transport");
198+
return Mono.fromCallable(() -> serviceLookup(request))
199+
.flatMap(
200+
serviceReference ->
201+
transport
202+
.create(serviceReference)
203+
.requestResponse(request, responseType)
204+
.map(this::throwIfError));
205+
}
206+
});
256207
}
257208

258209
/**
@@ -274,55 +225,37 @@ public Flux<ServiceMessage> requestMany(ServiceMessage request) {
274225
*/
275226
public Flux<ServiceMessage> requestMany(ServiceMessage request, Type responseType) {
276227
return Flux.defer(
277-
() -> {
278-
ServiceMethodInvoker methodInvoker;
279-
if (serviceRegistry != null
280-
&& (methodInvoker = serviceRegistry.lookupInvoker(request)) != null) {
281-
// local service
282-
return methodInvoker
283-
.invokeMany(request)
284-
.map(this::throwIfError)
285-
.contextWrite(
286-
context -> {
287-
if (context.hasKey(RequestContext.class)) {
288-
return context;
289-
} else {
290-
return new RequestContext(context)
291-
.headers(request.headers())
292-
.request(request)
293-
.principal(NULL_PRINCIPAL);
294-
}
295-
});
296-
} else {
297-
// remote service
298-
Objects.requireNonNull(transport, "[requestMany] transport");
299-
return Mono.fromCallable(() -> serviceLookup(request))
300-
.flatMapMany(
301-
serviceReference ->
302-
transport
303-
.create(serviceReference)
304-
.requestStream(request, responseType)
305-
.map(this::throwIfError));
306-
}
307-
})
308-
.doOnSubscribe(
309-
s -> {
310-
if (logger != null && logger.isDebugEnabled()) {
311-
logger.debug("[{}][subscribe] request: {}", request.qualifier(), request);
312-
}
313-
})
314-
.doOnComplete(
315-
() -> {
316-
if (logger != null && logger.isDebugEnabled()) {
317-
logger.debug("[{}][complete] request: {}", request.qualifier(), request);
318-
}
319-
})
320-
.doOnError(
321-
ex -> {
322-
if (logger != null) {
323-
logger.error("[{}][error] request: {}", request.qualifier(), request, ex);
324-
}
325-
});
228+
() -> {
229+
ServiceMethodInvoker methodInvoker;
230+
if (serviceRegistry != null
231+
&& (methodInvoker = serviceRegistry.lookupInvoker(request)) != null) {
232+
// local service
233+
return methodInvoker
234+
.invokeMany(request)
235+
.map(this::throwIfError)
236+
.contextWrite(
237+
context -> {
238+
if (context.hasKey(RequestContext.class)) {
239+
return context;
240+
} else {
241+
return new RequestContext(context)
242+
.headers(request.headers())
243+
.request(request)
244+
.principal(NULL_PRINCIPAL);
245+
}
246+
});
247+
} else {
248+
// remote service
249+
Objects.requireNonNull(transport, "[requestMany] transport");
250+
return Mono.fromCallable(() -> serviceLookup(request))
251+
.flatMapMany(
252+
serviceReference ->
253+
transport
254+
.create(serviceReference)
255+
.requestStream(request, responseType)
256+
.map(this::throwIfError));
257+
}
258+
});
326259
}
327260

328261
/**
@@ -513,6 +446,29 @@ private static MethodInfo getMethodInfo(Class<?> serviceInterface, Method method
513446
Collections.emptyList());
514447
}
515448

449+
private static String toString(Object request) {
450+
if (request == null) {
451+
return "null";
452+
}
453+
// Handle arrays
454+
if (request.getClass().isArray()) {
455+
return request.getClass().getComponentType().getSimpleName()
456+
+ "["
457+
+ Array.getLength(request)
458+
+ "]";
459+
}
460+
// Handle collections
461+
if (request instanceof Collection<?> collection) {
462+
return collection.getClass().getSimpleName() + "[" + collection.size() + "]";
463+
}
464+
// Handle maps
465+
if (request instanceof Map<?, ?> map) {
466+
return map.getClass().getSimpleName() + "[" + map.size() + "]";
467+
}
468+
// Fallback
469+
return String.valueOf(request);
470+
}
471+
516472
@Override
517473
public void close() {
518474
if (transport != null) {

0 commit comments

Comments
 (0)