private Runnable configFetchThread() {
        return () -> {
            Thread.currentThread().setName("ManagerFetcher");
            while (isRunnable()) {
                try {
                    ConfigResult config = getConfig();
                    if (config != null && config.getCode().equals(AgentResponseCode.SUCCESS)
                            && manager.getModuleManager().getCurrentVersion() < config.getVersion()) {
                        manager.getModuleManager().submitConfig(config);
                    }
                } catch (Throwable ex) {
                    LOGGER.warn("exception caught", ex);
                    ThreadUtils.threadThrowableHandler(Thread.currentThread(), ex);
                } finally {
                    AgentUtils
                            .silenceSleepInSeconds(conf.getInt(AGENT_FETCHER_INTERVAL, DEFAULT_AGENT_FETCHER_INTERVAL));
                }
            }
        };
    }
Thread for config fetcher.

@return runnable profile.
inlong-agent/agent-installer/src/main/java/org/apache/inlong/agent/installer/ManagerFetcher.java