From 1e122dd4e767adb4b77155b3cb8240f52b4f5c4e Mon Sep 17 00:00:00 2001 From: Moiz Raja Date: Thu, 12 Mar 2015 18:56:51 -0700 Subject: [PATCH] BUG 2852 : Reduce and improve logging in RemoteRpcImplementation - Log an invoke rpc error only at warn level by default - At debug level log the failure stack trace - Include more context like rpc name and identifier in the log message Change-Id: I00d3a52418acd07232ed0f4cc93b8de55d03d144 Signed-off-by: Moiz Raja --- .../remote/rpc/RemoteRpcImplementation.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/RemoteRpcImplementation.java b/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/RemoteRpcImplementation.java index 360ac68a51..a6fdfd3ff9 100644 --- a/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/RemoteRpcImplementation.java +++ b/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/RemoteRpcImplementation.java @@ -53,7 +53,16 @@ public class RemoteRpcImplementation implements DOMRpcImplementation { @Override public void onComplete(final Throwable failure, final Object reply) throws Throwable { if(failure != null) { - LOG.error("InvokeRpc failed", failure); + + // When we return a failure to the caller they can choose to log it if they like + // so here we just do basic warn logging by default and log the stack trace only when debug + // is enabled + + LOG.warn("InvokeRpc failed rpc = {}, identifier = {}", rpcMsg.getRpc(), rpcMsg.getIdentifier()); + + if(LOG.isDebugEnabled()){ + LOG.debug("Detailed Error", failure); + } final String message = String.format("Execution of RPC %s failed", rpcMsg.getRpc()); Collection errors = ((RpcErrorsException)failure).getRpcErrors(); -- 2.36.6