Их называют временными, потому что в большинстве случаев, пользователь может предположить, что она может безопасно разгрести бардак во временных директорах В противном случае в целом, эти файлы заблокированы так или иначе.
В целом, эти файлы должны быть недолгими: создайте их, используйте их для любой потребности, Вы имеете, удаляете их на месте. В худшем удалите их при выходе из приложения.
Когда-то, Вы не можете, например, менеджер архива или VCS, позволяющий смотреть на файл с редактором (или различное средство просмотра, и т.д.), но закрытый перед редактором (или не способные контролировать порожденный процесс...).
ИМХО рекомендации по ведению журнала о том, что составляет хороший уровень операторов журнала, редко встречаются даже среди крупных фреймворков и продуктов, в первую очередь из-за более важных рекомендаций, связанных с
Тем не менее, я следую нескольким общим правилам большого пальца на самом низком уровне:
Вы можете использовать АОП (AspectJ - лучший вариант) для записи того, что передается в методы. вы даже можете использовать pointcut только для методов, чтобы не было слишком много журналов. Вы можете написать аннотацию метода, например @Loggable, и установить для нее pointcut, чтобы каждый метод с этими параметрами регистрировался.
Я думаю, что аспекты - лучший способ здесь.
Стандартизируйте сообщения с помощью API или строковых форматов, на которые ссылаются разработчики при построении операторов журнала. Они не должны вводить такой текст в программу, даже для регистрации, именно по тем причинам, которые вы называете. Естественно, это означает, что вам также нужна политика и проверки для обеспечения ее соблюдения.