Если вы регистрируетесь в файл с помощью log4j, отметка времени создается при создании события регистрации. Поэтому, когда вызывается метод (debug, info, ...). Если у вас запущено несколько потоков, возможно, что сообщения не записываются в файл в том же порядке, что и отметка времени.
Если вы хотите, чтобы строки журнала были отсортированы по порядку, используйте JDBC Appender и войдите в базу данных. Затем вы можете запросить базу данных и отсортировать по отметке времени.