Host Trace

Administration PageApplication/ContractSyracuse/CollaborationClasstraceRecordsRepresentationtraceRecord

Up to version 2018.R2, this function allows you to create technical trace files on request to send to Sage support.
From version 2018.R3, trace files are handled in Global Settings.

This function provides:

The content of a record cannot be retrieved until the record is stopped.

Query facet for traces record

In this facet, you can find the list of trace records and their state. Note that:

Auto record

A standard auto record is automatically created when a node.js process starts. It can also be started to log specific events.

A rotation mechanism was implemented to launch a new auto record each day, and another one was implemented to split records by size. This ensures that records will never be larger than a specified size. These behaviors can be defined from the nodelocal.js configuration file:

 exports.config = {...,traces: {maxSize: "5m",maxFiles: 3,}},

The maxSize property allows you to define the maximum size for a record. The syntax allowed is "*k" or "*m" or "*g" (kilo, mega or giga bytes) where * is a number.

The maxFiles property allows you to limit the number of files for a given date and PID. When an auto record reaches the maximum size, or when a stop action is called, a new one is created and launched with the same name as the previous one. The previous one is renamed by adding a suffix.

Manual record

For specific needs (bug investigation, for example), you may need to create a manual record. Two modes are available:

Several types of events are traced and identified in the Configuration grid. Different trace levels are available for each type of event traced:

Example: In the X3 communication layer, you can trace the call of javascript functions from a 4GL process, the X3 client pool requests, the "sadfsq" communication layer, or the print server layer at the different levels available.

Trace settings are used for each new auto record. Therefore, it is necessary to edit these settings to adjust auto records. However, for manual records, these settings are only available as a default configuration. You can only customize them before starting the record.

Once the setup is complete and saved, it is possible to start, pause, or stop a started trace, as well as resume a paused trace, flush the current trace file, and start another one.

Storage and setup principles

All trace configurations are stored in the traceSetting entity. Each record configuration is synchronized during the server startup:

For an auto record, the nodelocal.js default values needs to be declared as follows:

exports.config = {...,traces: {levels: {// Example for tracers with submodulesorm: { // Object-relational mappingfactory: "info", // Syracuse entities managementx3: "debug", // X3 ERP entities managementmongodb: "error", // MongoDB interactions},// Example for tracers without submodulesearch: "debug", // Elasticsearch communication}},

Creating the records

The Traces grid lists all the files created for a trace session. When the corresponding file is no longer active, it can be downloaded manually by clicking the corresponding icon. A trace file is no longer active after stopping the trace or performing a flush to start another trace file.

You can click Download all to download all the inactive files corresponding to the session. The files need to be sent to the Sage Support team for analysis.