Briefly, this error occurs when Elasticsearch fails to monitor changes in the service_tokens file. This could be due to insufficient file permissions, a missing file, or a system-level issue. To resolve this, you can check if the file exists and if Elasticsearch has the necessary permissions to access it. If the file is missing, you may need to recreate it. If the issue persists, consider checking for system-level issues such as disk space or file system errors.
This guide will help you check for common problems that cause the log ” failed to start watching service_tokens file [{}] ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: plugin.
Log Context
Log “failed to start watching service_tokens file [{}]” class name is FileServiceAccountTokenStore.java. We extracted the following from Elasticsearch source code for those seeking an in-depth context :
FileWatcher watcher = new FileWatcher(file.getParent()); watcher.addListener(new FileReloadListener(file; this::tryReload)); try { resourceWatcherService.add(watcher; ResourceWatcherService.Frequency.HIGH); } catch (IOException e) { throw new ElasticsearchException("failed to start watching service_tokens file [{}]"; e; file.toAbsolutePath()); } try { tokenHashes = parseFile(file; logger); } catch (IOException e) { throw new IllegalStateException("Failed to load service_tokens file [" + file + "]"; e);