Как я могу следить за файлом, как это делает «Tail -f» в Java, не удерживая его открытым (Запретить переименование / удаление)
хотел быХвост -ф " много лог-файлов из приложения Java.
Мы добились этого, наблюдая за размером и последним обновлением, многократно открывая файл и читая последние несколько байтов при изменении размера файла или времени последнего обновления, а затем сразу же закрывая его.
Это кажется проблематичным, потому что я мог бы открыть его, когда регистратор решит переименовать файл, что вызовет какую-то проблему.
также хотел бы обнаружить "Прокат» файл с механизмом, более уверенным, чем замечать, что размер файла уменьшен ... кажется склонным к ошибкам, но маловероятным.
Так как я неКажется, у меня нет доступа к файловому дескриптору или другим низкоуровневым файловым утилитам, которые я не могу воспроизвести.s поведение - но есть ли какие-нибудь хитрости для чтения файла без "Блокировка» это для переименования / удаления (Windows 7)
Я предполагаю, что другая возможность - на самом деле порождать процесс tail -f и читать результаты процесса, но это кажется довольно тяжелым - яm сканирует как 60 файлов журнала, некоторые из которых имеют много выходных данных (большинство из них будут простаивать).