docs: public void logError(Throwable e) {
          final ILogger logger = getLogger();
          if (e instanceof SilentException) {
              logger.finest(e.getMessage(), e);
          } else if (e instanceof RetryableException) {
              final Level level = returnsResponse() ? Level.FINEST : Level.WARNING;
              if (logger.isLoggable(level)) {
                  logger.log(level, e.getClass().getName() + ": " + e.getMessage());
              }
          } else if (e instanceof OutOfMemoryError) {
              try {
                  logger.severe(e.getMessage(), e);
              } catch (Throwable ignored) {
                  ignore(ignored);
              }
          } else {
              final Level level = nodeEngine != null && nodeEngine.isRunning() ? Level.SEVERE : Level.FINEST;
              if (logger.isLoggable(level)) {
                  logger.log(level, e.getMessage(), e);
              }
          }
      }