Can anyone enlighten me - what is the purpose of DebugLevelId on Tooling API TraceFlag object?
If it is now a required field then what is the purpose of all log level fields (e.g. ApexCode, ApexProfiling, etc) on TraceFlag ?
Contrary to the documentation DebugLevelId appears to be a required value. If I try to insert TraceFlag without DebugLevelId then SFDC returns error
DebugLevelId is required
TraceFlag.DebugLevelId specified, it seems that whatever Log Levels are set on DebugLevel they take precedence over values set on Trace Flag.
If I create DebugLevel record with
ApexCode = DEBUG and assign Id of that DebugLevel record to a TraceFlag record with
ApexCode = FINE then value from Debug Level seems to take precedence.
In the past (API v34) it was possible to create
TraceFlag on its own (without DebugLevel), now (API v36) there seem to be no way to create
DebugLevelId, and log level values (e.g. ApexCode, ApexProfiling, System, etc) on
TraceFlag are simply ignored.
Is this a bug or I am simply missing something?