Привет! Опишу проблему: Есть удаленная директория, NFS. Туда сгружаются некоторые файлы(логи), мини-батчами, по 25-30мб. И хранятся там, не модифицируются и не удаляются.
Соответственно, если коротко: watcher service из nio не видит добавление новых файлов в nfs директорию, в которую файлы выгружает EMM.
Подробнее:
Я обрабатываю файлы и навесил специальный watcher на директорию, который отслеживает появление новых файлов.
Watcher из NIO:
WatchService watchService = null;
try {
watchService = path.getFileSystem().newWatchService();
path.register(watchService,
StandardWatchEventKinds.ENTRY_CREATE);
} catch (IOException e1) {
e1.printStackTrace();
}
for (;;) {
WatchKey key = null;
try {
key = watchService.take();
} catch (InterruptedException e) {
e.printStackTrace();
}
// Итерации для каждого события
for (WatchEvent event : key.pollEvents()) {
switch (event.kind().name()) {
case "ENTRY_CREATE":
System.out.println("File " + event.context()
+ " is created!");
break;
}
}
key.reset();
Так вот, если я руками добавляю файлы, копирую или перемещаю(cp или mv), тогда он регистрирует этот эвент и пишет мне это сообщение. Но! Файлы туда выгружаются с помощью EMM. И вот тут возникает проблема, ибо он не видит добавление файлов новых.
Права на чтение у меня есть, права на директорию для other группы
r-x
В чем может быть проблема?Сталкивался ли кто-то с этим?