Saving robot logs to an Elasticsearch server can be achieved through two types of configuration: basic and advanced.
The basic configuration provides default functionality that activates the preconfigured Elasticsearch NLog target, which is made up of an Elasticsearch target wrapped in a Buffering target. This type of configuration is enough in most scenarios.
However, if you need to further customize the rules, you can use the advanced configuration method.
Basic configuration
- Locate the uipath application in the ArgoCD interface.
- Click the APP DETAILS button in the top left corner, then navigate to the PARAMETERS tab.
- Click EDIT, then update the following parameters with the values specified in the right-hand column, replacing the examples with your own values:
Parameter | Value |
---|---|
global.userInputs.orchestratorRobotLogsElasticUri | Example: https://elastic.example.com:9200 Make sure you do not include a trailing slash. |
global.userInputs.orchestratorRobotLogsElasticAuthUsername | Example: elastic-user |
global.userInputs.orchestratorRobotLogsElasticAuthPassword | Example: elastic-password |
- Save your changes.
- Synchronize the uipath application and wait for the process to finish with a
healthy
state response.
You can also configure robot logs to be saved to an Elasticsearch server by editing the cluster_config.json
file.
The basic configuration supports Elasticsearch version 7.x. For Elasticsearch 8.x, you need to use the advanced configuration.
Advanced configuration
Important!
Any changes you make per the steps below can negatively affect the functionality and stability of the entire system. It is advisable to only make changes if you understand their consequences.
The advanced configuration allows you to fully customize your NLog.config
target.
- Follow the basic configuration steps described above.
- Edit the
nlog.json
parameters inorchestrator-customconfig
in ConfigMap.
2.1. Create a/tmp/nlog.custom.json
file based on the sample below.
2.2. Use./orchestrator_configurator.sh -l /tmp/nlog.custom.json
to update ConfigMap in the Orchestrator Configurator Tool.
The advanced configuration also supports Elasticsearch version 8.x.
Click to see a sample for Elasticsearch 7.x
{
"Nlog": {
"targets": {
"robotElasticBuffer": {
"flushTimeout": 1000,
"bufferSize": 1000,
"slidingTimeout": false,
"target": {
"uri": "https://elastic.example.com:9200",
"requireAuth": true,
"username": "elastic-user",
"password": "elastic-password",
"index": "${event-properties:item=indexName}-${date:format=yyyy.MM}",
"documentType": "logEvent",
"includeAllProperties": true,
"layout": "${message}",
"excludedProperties": "agentSessionId,tenantId,indexName"
}
}
}
}
}
Click to see a sample for Elasticsearch 8.x
{
"Nlog": {
"targets": {
"robotElasticBuffer": {
"flushTimeout": 1000,
"bufferSize": 1000,
"slidingTimeout": false,
"target": {
"uri": "https://elastic.example.com:9200",
"requireAuth": true,
"username": "elastic-user",
"password": "elastic-password",
"index": "${event-properties:item=indexName}-${date:format=yyyy.MM}",
"documentType": "",
"includeAllProperties": true,
"layout": "${message}",
"excludedProperties": "agentSessionId,tenantId,indexName"
}
}
}
}
}
Updated 5 months ago