Vanaf versie 20.2.70 wordt het tekst-gebaseerde opslagformaat voor Invantive Trace vervangen door het NDJSON-formaat. Dankzij het NDJSON-formaat is het eenvoudiger om grote aantallen tracebestanden te doorzoeken. Ook wordt het eenvoudig om tracebestanden te laden in Amazon CloudWatch en ElasticSearch.
Het NDJSON-formaat heeft een regel per melding in JSON-formaat:
{"Message":"Invantive trace forwarder started.","MessageCode":null,"Occurred":"2021-10-21T17:05:46.8931234Z","Id":2,"ThreadId":1,"SessionId":"WPF-OnStartup-23e28338-f688-4df9-bbad-5d66ca2ea5de","PoolIdentityId":null,"CallingProviderAlias":null}
De tracebestanden kunnen ook opgevraagd worden via Invantive SQL met bijvoorbeeld:
select fle.file_path
, msg.id
, msg.thread_id
, msg.session_id
, msg.pool_identity_id
, msg.message_code
, msg.occurred_utc
, msg.message_text
, msg.calling_provider_alias
from SYSTEMPROPERTIES@DataDictionary spy
join files@os(spy.value, 'invantive-trace*.ndjson', true) fle
join ndjsontable
( passing file fle.file_path
ignore invalid line
columns metadata_type varchar2 not null label 'Metadata Type' path 'MetadataType'
, id int64 not null label 'ID' path 'Id'
, thread_id int32 not null label 'Thread ID' path 'ManagedThreadId'
, session_id varchar2 not null label 'Session ID' path 'SessionId'
, pool_identity_id varchar2 null label 'Pool Identity' path 'PoolIdentityId'
, message_code varchar2 null label 'Message Code' path 'MessageCode'
, occurred_utc timestamp not null label 'Occurred (UTC)' path 'OccurredUtc'
, message_text varchar2 null label 'Message' path 'Message'
, calling_provider_alias varchar2 null label 'Alias' path 'CallingProviderAlias'
, machine_name_full varchar2 null label 'Machine' path 'MachineNameFull'
, user_logon_code varchar2 null label 'Logon Code' path 'UserLogonCodeWithDomain'
, ns int null label 'ns' path 'Ns'
, process_id int null label 'Process ID' path 'ProcessId'
, logging_level int null label 'Logging Level' path 'LoggingLevel'
, uid guid null label 'UID' path 'Uid'
, natural_key varchar2 null label 'Natural Key' path 'NaturalKey'
, billing_pool_identity_id varchar2 null label 'Billing Pool Identity ID' path 'BillingPoolIdentityId'
, gui_action varchar2 null label 'GUI Action' path 'GuiAction'
, gui_ip_address varchar2 null label 'GUI IP Address' path 'GuiExternalIpAddress'
, gui_language varchar2 null label 'GUI Language' path 'GuiLanguage'
, gui_module varchar2 null label 'GUI Module' path 'GuiModuleName'
, gui_version varchar2 null label 'GUI Version' path 'GuiModuleVersion'
, gui_os_user varchar2 null label 'GUI OS User' path 'GuiOsUser'
, gui_user varchar2 null label 'GUI User' path 'GuiUser'
, user_email_address varchar2 null label 'User Email Address' path 'UserEmailAddress'
, request_id varchar2 null label 'Request ID' path 'RequestId'
, execution_options_id varchar2 null label 'Execution Options ID' path 'ExecutionOptionsId'
, executable_name varchar2 null label 'Executable Name' path 'ExecutableName'
, user_name varchar2 null label 'User Name' path 'UserName'
, parameter_1 varchar2 null label 'Parameter #1' path 'Parameter1'
, parameter_2 varchar2 null label 'Parameter #2' path 'Parameter2'
, parameter_3 varchar2 null label 'Parameter #3' path 'Parameter3'
, parameter_4 varchar2 null label 'Parameter #4' path 'Parameter4'
, parameter_5 varchar2 null label 'Parameter #5' path 'Parameter5'
, parameter_6 varchar2 null label 'Parameter #6' path 'Parameter6'
, parameter_7 varchar2 null label 'Parameter #7' path 'Parameter7'
, parameter_8 varchar2 null label 'Parameter #8' path 'Parameter8'
, parameter_9 varchar2 null label 'Parameter #9' path 'Parameter9'
, parameter_10 varchar2 null label 'Parameter #10' path 'Parameter10'
)
msg
where spy.name = 'environment-trace-log-folder'
limit 10000
order
by fle.file_path
, msg.id