. Details
Option #1 – Current Situation:
DAS-- start-domain --verbose gets all TDs in console and server.log
start-domain mm – TD goes to console does NOT go to server.log
start-domain as a Windows Service – no thread dumps anywhere
NA
ONLY appear in the console in MM
Instances -
IF the NA was started in MM and is still running --> TDs go to the console.
If NA's parent process is dead (the usual situation) then no TDs.
---------------------------------------------------------------------------------
Option #2
This is the best option in my opinion. The -XX options are only used on the server
types that don't have a guaranteed living parent process.
DAS gets -XX JVM args for threaddumps via its server config in domain.xml
NA gets -XX JVM args for threaddumps via its section of processLauncher.xml
NA redirects all instance TDs to the correct server.log file
NA TDs go to jvm.log
DAS TDs go to jvm.log
note: JVM truncates log file, thus server.log can't be used.
note: instances do not get -XX args
PRO:
User can fine-tune logfile locations for DAS and possibly NA (pl.xml is "internal")
We avoid using -XX args for instances
TDs are guaranteed to be logged in almost all cases for DAS and NA and in all cases
for instances. The possible exception is if the user runs on a VM that doesn't handle
the logging args.
Cheap
CON:
instance TDs go to server.log. DAS, NA TDs go to jvm.log.
If running DAS or NA in MM then TDs will go to both server.log and jvm.log
---------------------------------------------------------------------------------
Option #3
Launcher automatically adds the -XX options for all servers. TDs go to the individual
jvm.log files.
PRO
Simple to implement.
Very consistent. All types will have their TDs written to jvm.log
Cheap
CON
Not a good idea to hide tricky jvm args like this
No way for the user to turn it off
Instances have to use the -XX args even though they are not needed.
--------------------------------------------------------------------------------------
Option #4
This is the best solution we can provide with the requirement of NOT using the -XX args
As long as the parent process is still alive, the TDs will be written to the correct server.log
Note that in the case of instances, the parent process is always alive (NA) so instances will
always get the TDs logged properly.
If DAS and/or NA are started in MM (or DAS-verbose mode) the TDs are logged.
If DAS and/or NA are started in single-command mode (the usual way), no TDs are logged
PRO
No use of the -XX args
Cheap
CON
The most common situation is that DAS and NA will not be logging TDs at all.
----------------------------------------------------------------------------------------
Jspwiki style: h2