Процесс останется в памяти после того, как система попытается завершить его, если это выполняет некоторый код в драйвере или если другому процессу все еще открыли дескриптор на нем.
Как Вы проверяете, что процесс не уничтожается? И что делает Ваша программа Java?
Ознакомьтесь с Splunk
Вот некоторая информация о том, как вы можете установить архивные политики:
http: //docs.splunk .com / Documentation / Splunk / 4.2.5 / Admin / Setaretirementandarchivingpolicy
Я не уверен, какое соответствие вы пытаетесь удовлетворить, но у Splunk есть несколько отличных плагинов - например:
SEC http://www.splunk.com/view/sec-compliance/SP-CAAAGMQ
HIPPA http://www.splunk.com/view/hipaa-compliance/SP-CAAAGG6
Splunk !? Это так дорого. Это хорошая вещь, но дорогая.
То, что вам может понравиться больше, - это что-то вроде Logstash или Graylog2
Logstash в значительной степени сделает то, что вы хотеть. У него есть агент, который может отслеживать файлы журнала.
Интересно, что бы произошло, если бы вы указали запись журнала catalina.out на канал FIFO, а затем передали его через регистратор
(который записывает в системный журнал)
Посмотрите это http://spredzy.wordpress.com/2013/03/02/monitor-your-cluster-of-tomcat-applications-with- logstash-and-kibana /