showuon commented on a change in pull request #7898:
URL: https://github.com/apache/kafka/pull/7898#discussion_r815384279



##########
File path: 
connect/runtime/src/main/java/org/apache/kafka/connect/runtime/rest/resources/LoggingResource.java
##########
@@ -60,67 +66,60 @@
     @GET
     @Path("/")
     public Response listLoggers() {
-        Map<String, Map<String, String>> loggers = new TreeMap<>();
-        Enumeration<Logger> enumeration = currentLoggers();
-        Collections.list(enumeration)
-                .stream()
-                .filter(logger -> logger.getLevel() != null)
-                .forEach(logger -> loggers.put(logger.getName(), 
levelToMap(logger)));
+        // current loggers
+        final Map<String, Map<String, String>> loggers = currentLoggers()
+            .stream()
+            .filter(logger -> logger.getLevel() != Level.OFF)
+            .collect(Collectors.toMap(logger -> logger.getName(), logger -> 
levelToMap(logger)));
 
+        // Replace "" logger to "root" logger
         Logger root = rootLogger();
-        if (root.getLevel() != null) {
+        if (root.getLevel() != Level.OFF) {
             loggers.put(ROOT_LOGGER_NAME, levelToMap(root));
         }
 
-        return Response.ok(loggers).build();
+        return Response.ok(new TreeMap<>(loggers)).build();
     }
 
     /**
      * Get the log level of a named logger.
      *
-     * @param namedLogger name of a logger
+     * @param loggerName name of a logger
      * @return level of the logger, effective level if the level was not 
explicitly set.
      */
     @GET
     @Path("/{logger}")
-    public Response getLogger(final @PathParam("logger") String namedLogger) {
-        Objects.requireNonNull(namedLogger, "require non-null name");
+    public Response getLogger(final @PathParam("logger") String loggerName) {
+        Objects.requireNonNull(loggerName, "require non-null name");
 
-        Logger logger = null;
-        if (ROOT_LOGGER_NAME.equalsIgnoreCase(namedLogger)) {
+        final Logger logger;
+        if (ROOT_LOGGER_NAME.equalsIgnoreCase(loggerName)) {
             logger = rootLogger();
         } else {
-            Enumeration<Logger> en = currentLoggers();
-            // search within existing loggers for the given name.
-            // using LogManger.getLogger() will create a logger if it doesn't 
exist
-            // (potential leak since these don't get cleaned up).
-            while (en.hasMoreElements()) {
-                Logger l = en.nextElement();
-                if (namedLogger.equals(l.getName())) {
-                    logger = l;
-                    break;
-                }
-            }
+            List<Logger> en = currentLoggers();
+            Optional<Logger> found = en.stream().filter(existingLogger -> 
loggerName.equals(existingLogger.getName())).findAny();
+
+            logger = found.orElse(null);
         }
+
         if (logger == null) {
-            throw new NotFoundException("Logger " + namedLogger + " not 
found.");
+            throw new NotFoundException("Logger " + loggerName + " not 
found.");

Review comment:
       nit: can be simplified to:
   ```java
   logger = found.orElseThrow(() -> new NotFoundException("Logger " + 
loggerName + " not found."));`
   return Response.ok(effectiveLevelToMap(logger)).build();
   ```




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to