Github user yaojiefeng commented on a diff in the pull request: https://github.com/apache/twill/pull/14#discussion_r90767592 --- Diff: twill-yarn/src/main/java/org/apache/twill/internal/container/TwillContainerService.java --- @@ -51,29 +63,36 @@ private final ClassLoader classLoader; private final BasicTwillContext context; private final ContainerLiveNodeData containerLiveNodeData; + private final Map<String, LogEntry.Level> oldLogLevels; + private final Map<String, LogEntry.Level> defaultLogLevels; private ExecutorService commandExecutor; private TwillRunnable runnable; public TwillContainerService(BasicTwillContext context, ContainerInfo containerInfo, ZKClient zkClient, RunId runId, TwillRunnableSpecification specification, ClassLoader classLoader, - Location applicationLocation) { + Location applicationLocation, Map<String, LogEntry.Level> defaultLogLevels, + Map<String, LogEntry.Level> logLevels) { super(zkClient, runId, applicationLocation); this.specification = specification; this.classLoader = classLoader; - this.containerLiveNodeData = createLiveNodeData(containerInfo); + this.defaultLogLevels = ImmutableMap.copyOf(defaultLogLevels); + this.oldLogLevels = Collections.synchronizedMap(new HashMap<>(defaultLogLevels)); --- End diff -- When you reset, you cannot reset the log level for a particular logger. It will reset the log levels for all loggers which are changed during runtime. So if you call reset, it will reset the log level of ROOT to INFO, and the particular logger to the log level when the runnable starts. If it was null initially, its log level will be following the ROOT log level, INFO
--- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---