String ipAddress = getThreadLocalRequest().getRemoteAddr();
String className = action.getClass().getSimpleName();
logger.info("User {} (ip: {}) executing action: {}", new Object[]{userNickname, ipAddress, className});
try {
return (T) actionRunner.execute(action);
} catch (Exception e) {
logger.error("Caught Exception", e);
throw new RpcException(e.getMessage());
}
}