if you've ruled out the last 3, the only way I know of (and it's probably this, i guess) is it's getting stopped because the server stops and starts.
instead of a command line, you will have to make a stored procedure with the trace definition.
here's an example of one I've posted here several times, but haven't alterd in at least a year:
then, after that has been installed in the master database, you are need to mark it as a start up procedure:
execute sp_procoption
@ProcName = 'sp_AddMyTrace' ,
@OptionName = 'startup',
@OptionValue = 'true'
you can easily see if the stop/start thing is the cause:
select the highest date value from your trace file, then look in the SQL log and see if the service stopped and restarted;
you might see it's happening at a consistent time too, like 2am or something, so you know if it's some outside process doing the stopping (virus scanner? Operating System Defrag script?)
Lowell