- Release Notes
- Getting Started
- UiPath Assistant
- Installation and Upgrade
- Robot Types
- Robot Components
- Licensing
- Connecting Robots to Orchestrator
- Processes and Activities
- Logging
- Robot Logs
- Logging and Log Levels
- Robot JavaScript SDK
- Specific Scenarios
- Windows Sessions
- Login Using Thales Luna Credential System
- Login Using NShield Key Storage Provider
- Redirecting Robots Through a Proxy Server
- Executing Tasks in a Minimized RDP Window
- Using Mapped Network Drives
- Stopping a Process
- Disable Stop Button
- Custom Package Folders and Network Paths
- CrowdStrike Integration
- Restarting Robot Components
- Troubleshooting
- About Troubleshooting
- Unresponsive Robot Over RDP
- Duplicate Execution Logs
- Frequently Encountered Robot Errors
- Increased Process Execution Duration
- Enforced Package Signature Verification
- Message Too Large to Process
- Errors When Running as Administrator
- NuGet Packages Not Accessible After Migration
- User Access Control Prompt and UI Automation Activities
Logging and Log Levels
During process execution, the Robot generates a message (Log) for each step along the way. These are gathered and stored in a Log File. The overall operation of gathering and storing Logs is called Logging.
Each Log has a Log Level, which refers to how detailed the generated message is.
Logging Levels refer to the type of severity written in the Log File.
Log Level |
Logged |
Example / Comment |
Log File |
Output Panel |
Orchestrator Log page |
---|---|---|---|---|---|
Verbose |
Activities |
Trace {"message":{"DisplayName":"Message box","State":"Executing","Activity":"UiPath.Dialog.Activities.MessageBox","Arguments":{"Caption":"","Text":"String in message BOX"}... Trace {"message":{"DisplayName":"Message box","State":"Closed","Activity":"UiPath.Dialog.Activities.MessageBox","Arguments":{"Caption":"","Text":"String in message BOX","ChosenButton":"Ok"} |
Yes |
No |
Yes |
Verbose |
Variables |
"Variables":{"NewTransaction":"False"}} |
Yes |
No |
Yes |
Verbose |
Arguments (properties) |
"Arguments":{"Caption":"","Text":"String in message BOX","ChosenButton":"Ok"} |
Yes |
No |
Yes |
Trace |
Activities |
Trace {"message":{"DisplayName":"Main","State":"Executing","Activity":"System.Activities.DynamicActivity"} Trace {"message":{"DisplayName":"Main","State":"Executing","Activity":"System.Activities.Statements.Flowchart"} |
Yes |
No |
Yes |
Trace |
WriteLine |
Trace {"message":{"DisplayName":"Main","State":"Executing","Activity":"System.Activities.DynamicActivity"} Trace {"message":{"DisplayName":"Main","State":"Executing","Activity":"System.Activities.Statements.Flowchart"} |
Yes |
Yes |
Yes |
Information |
Log Message |
Info {"message":"message from activity" Note: Except messages logged with Trace level set in activity. | |||
Warning |
Warnings |
Warn {"message":"Warning from log message activity" |
Yes |
Yes |
Yes |
Warning |
Errors |
Error {"message":"Error from log message activity" |
Yes |
Yes |
Yes |
Warning |
Critical |
Critical Errors |
Yes |
Yes |
Yes |
Error |
Errors |
Error {"message":"Error from log message activity" |
Yes |
Yes |
Yes |
Error |
CriticalFatal |
Critical Errors |
Yes |
Yes |
Yes |
Critical |
CriticalFatal |
Critical Errors |
Yes |
Yes |
Yes |
OFF |
n/a |
n/a |
No |
No |
No |
Logging Level |
Default Logs |
User-Defined Logs |
---|---|---|
Off |
None |
None |
Critical |
All messages logged with Critical level or higher. |
All messages logged with Critical level or higher. |
Error |
All messages logged with Error level or higher. |
All messages logged with Error level or higher. |
Warning |
All messages logged with Warning or higher. |
All messages logged with Warning or higher. |
Information |
All messages logged with Information or higher. |
All messages logged with Information or higher. |
Trace |
All messages logged with Trace level or higher. |
All messages logged with Trace level or higher. |
Verbose |
All messages logged with Trace level and Workflow Tracking logs. |
All messages logged with Trace level. |
The Verbose level logs a message for both the activity start and end, plus the values of the variables and arguments that are used.
By default, the Verbose level includes:
- Execution Started log entry - generated every time a process is started.
- Execution Ended log entry - generated every time a process is finalized.
- Transaction Started log entry - generated every time a transaction item is obtained by the Robot from Orchestrator.
- Transaction Ended log entry - generated every time the Robot sets the transaction status to either Success or Failed.
-
Activity Information log entry - generated every time an activity is started,faulted or finished inside a process.
Note: The priority order of the log types is: Verbose < Trace < Information < Warning < Error < Critical < Off.
Information
, Warning
, Error
, and Critical
log levels are used. This means no PII information is sent in the Orchestrator logs unless explicitly added from Studio.
Trace
and Verbose
log levels track and write the values of input/output arguments in Orchestrator logs. If those values include PII information,
they are added to the Orchestrator logs.
excludedLoggedData
variable allows you to add keywords to prevent variable and argument values from being logged at the Verbose level.
Private
checkbox of any activity. Read more about the protection of sensitive information here.
"excludedLoggedData": [
"Private:*",
"*password*"
],
"excludedLoggedData": [
"Private:*",
"*password*"
],
There are several possible occurrences of log messages, depending on the event that is logged, as follows:
Generated by default when the execution of a process 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.
Default
value in the logType
field.
The events logged by this category are:
- Execution Start is generated every time a process is started. This is logged starting with the Information logging level.
- Execution End is generated every time a process is finalized. This is logged starting with the Information logging level.
- Transaction Start is generated every time a transaction within a process is started. This is logged starting with the Information logging level.
- Transaction End is generated every time a transaction within a process is finalized. This is logged starting with the Information logging level.
- Error Log is generated every time the execution encounters an error and stops. This is logged starting with the Error logging level.
- Debugging Log is generated if the Robot Logging Setting is set to Verbose and contains activity names, types, variable values, arguments, etc. This is logged starting with the Trace logging level.
There are multiple types of log fields that can be found throughout the above log message types. These can be classified as follows:
- 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 (as defined in Orchestrator).
- machineName - The name of the robot machine.
- machineId - The id of the robot machine.
-
organizationUnitId - The ID of the Orchestrator organization.
Note: TheprocessName
andprocessVersion
fields do not appear in logs if the process is run locally, without being connected to Orchestrator.
These logs are present depending on the log type.
Execution End
- totalExecutionTimeInSeconds
- totalExecutionTime
Transaction Start
- queueName
- transactionID
- transactionState
Transaction End
- queueName
- transactionID
- transactionState
- transactionStatus
- transactionExecutionTime
- processingExceptionType
- processingExceptionReason
- queueItemReviewStatus
- queueItemPriority
Debugging Log
activityInfo
, which is a JSON message with the following fields:
- DisplayName
- State(Faulted,Closed,Executing)
- Activity
-
Arguments
Note: OnlytotalExecutionTimeInSeconds
,totalExecutionTime
andqueueName
are always present in the log messages.Variables
andArguments
usually have sub-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 removed by the Remove Log Fields activity.
When defining Custom Log Fields make sure to also check the naming against the Default Log Fields to avoid conflicting information in the Log Files over the same Log Fields.
Having the same naming convention for both Custom and Default Log Fields can also impact the Process you are running.