The UiPath Platform has logging capabilities for all of its main components. All of the UiPath specific logs are based on the Nlog infrastructure.
These logs can be classified by several characteristics, as follows:
Log Category
Judging by the log category, which describes whether the log message was designed by the user or is automatically generated by the system, logs can be:
-
Default Logs - generated by default when the execution of a project starts and ends, when a system error occurs and the execution stops, or when the logging settings are configured to log the execution of every activity. The events logged by this category are:
- Execution Start is generated every time a process is started (Level = Information)
- Execution End is generated every time a process is finalized (Level = Information)
- Transaction Start is generated every time a transaction within a process is started (Level = Information)
- Transaction End is generated every time a transaction within a process is finalized (Level = Information)
- Error Log is generated every time the execution encounters an error and stops (Level = Error)
- Debugging Log (Level = Trace) is generated if the Robot Logging Setting is set to Verbose and contains, activity names, types, variable values, arguments etc.
-
User-Defined Logs - generated according to the process designed by the user in Studio, when using the Log Message activity or the Write Line activity.
Log Fields
Default fields
These log fields are present in all logs:
- Message: The Log Message
- Level: Defines the log severity
- Timestamp: The exact date and time the action was performed
- FileName: the name of the .xaml file being “executed”
- jobId: The key of the job running the process
- processName: The name of the process that triggered the logging
- processVersion: The version number of the process
- windowsIdentity: The name of the user that performed the action that was logged
- robotName: The name of the robot (defined in Orchestrator)
Note:
The processName and processVersion might not appear if the process is run locally without connection to the Orchestrator.
Type-specific fields
These log fields are present depending on the log type:
- totalExecutionTimeInSeconds for Execution End
- totalExecutionTime for Execution End
- queueName for Transaction Start and Transaction End
- transactionID for Transaction Start and Transaction End
- transactionState for Transaction Start and Transaction End
- transactionStatus for Transaction End
- transactionExecutionTime for Transaction End
- activityInfo for Debugging Log. It is a JSON message with the following fields
- DisplayName
- State (Faulted, Closed, Executing)
- Activity
- Variables
- Arguments
Note:
Only the first 3 are always present in the message. Variables and Arguments usually have sub-fields.
User-defined fields
These fields are defined in Studio (by using the Add Log Fields activity) and appear in all subsequent logs after the activity is generated, unless they are (programmatically) removed by the activity Remove Log Fields
Updated 2 years ago