- Primeros pasos
- Requisitos
- Mejores prácticas
- Instalación
- Actualizando
- Servidor de identidad
- Complemento de alta disponibilidad
Guía de instalación de Orchestrator
UiPath.Orchestrator.dll.config
UiPath.Orchestrator.dll.config
(C:\Program Files (x86)\UiPath\Orchestrator
) define los parámetros, la configuración y las preferencias aplicadas en tu implementación de Orchestrator.
-
Cualquier cambio a los parámetros de este archivo se sobrescribe al actualizar.
-
Solo los administradores deben cambiar los valores de estos parámetros.
-
Recomendamos que se restaure manualmente el sitio web tras realizar los cambios en
UiPath.Orchestrator.dll.config
. -
Los parámetros que no se documentan en esta página no deben cambiarse o tener homólogos en las páginas de Ajustes.
-
Todos los parámetros distinguen entre mayúsculas y minúsculas.
EncryptionKeyPerTenant.Enabled
Te permite utilizar diferentes claves de cifrado por tenant, en función de una cuenta de Microsoft Azure Key Vault. Pueden atribuirse los siguientes valores:
false
- utiliza una única clave de cifrado en toda la instancia de Orchestrator. Este es el valor predeterminado.true
: Utiliza una clave de cifrado diferente para cada tenant, lo que mejora la seguridad de tu tenant y ofrece una mejor segregación de los datos confidenciales.
EncryptionKeyPerTenant.KeyProvider
parámetro , así como los que se encuentran en la sección SecureAppSettings.
EncryptionKeyPerTenant.KeyProvider
AzureKeyVault
para utilizar una versión predeterminada de Microsoft Azure Key Vault. No proporcionamos licencias de Azure Key Vault. Ten en cuenta que también debes configurar los parámetros descritos en la sección SecureAppSettings. Si EncryptionKeyPerTenant.Enabled
está establecido en false
, este parámetro no se utiliza.
Los cambios aquí realizados a los ajustes de cifrado deben replicarse en el archivo appsettings.Production.json de Identity Server, de acuerdo con la siguiente equivalencia de campos:
Orchestrator UiPath.Orchestrator.dll.config |
Identity Server appsettings.Production.json |
---|---|
EncryptionKeyPerTenant.Enabled |
EncryptionKeyPerTenant |
Azure.KeyVault.VaultAddress |
AzureKeyVaultAddress |
Azure.KeyVault.CertificateThumbprint |
AzureKeyVaultCertificateThumbprint |
Azure.KeyVault.ClientId |
AzureKeyVaultClientId |
EncryptionKeyPerTenant.KeyProvider |
MultiTenantEncryptionKeyProvider |
Database.EnableAutomaticMigrations
parámetro debe haberse establecido como true
previamente.
autogenerateStatistics
true
.
inProgressMaxNumberOfMinutes
La cantidad máxima de tiempo que los elementos en la cola pueden mostrar el estado En curso. Tras ese tiempo, el estado de los elementos en la cola cambia a Abandonados. De forma predeterminada, está fijado en 1440 minutos (24 horas).
QueuesStatisticsScheduleCron
La frecuencia de actualización de las estadísticas de los elementos en cola en las páginas Panel y Transacciones, y en la ventana Gráfico. Se actualizan cada minuto de forma predeterminada.
UpdateUncompletedItemsJobCron
La frecuencia de búsqueda en la base de datos de las colas que deban ser trasladadas a Abandonadas. De forma predeterminada, este parámetro está fijado en cada hora.
Queue.MaxSlaInMinutes
UiPath.Orchestrator.dll.config
, incluidos los casos de actualización.
Queue.MaxSchemaFileSizeInKilobytes
UiPath.Orchestrator.dll.config
.
Queue.SlaReadaheadTimeLimitHours
UiPath.Orchestrator.dll.config
de forma predeterminada.
Queue.MaxSpecificDataSizeInKiloBytes
El tamaño máximo del contenido de Datos específicos para los nuevos elementos en la cola, en kilobytes. En instalaciones de Orchestrator desde cero, este parámetro está oculto y tiene un valor predeterminado de 1024 (1 MB). En caso de actualización, este parámetro es visible y tiene un valor de 204 800 (200 MB).
Queue.ProcessActivationSchedule
La cantidad de tiempo entre la comprobación de los elementos de la cola no procesados. Por defecto, está establecido en 30 minutos. Para ajustar el intervalo de verificación, especifica un valor entre 0 y 59, reinicia el IIS y, a continuación, elimina el desencadenador de la cola existente y vuelve a crearlo.
DailyAlertMailJobCron
Permite configurar una expresión Cron que controla cuándo se envían alertas de correo electrónico diarias. Esto solo funciona si se habilitan las alertas de correo electrónico. El informe contiene todas las alertas de gravedad de tipo Fatal y Error generadas el día anterior. Por defecto, se envía todos los días a las 7:00.
Alerts.Email.Enabled
false
. Para que funcione, también debe configurar los ajustes relacionados con el correo electrónico desde la página Configuración . El valor predeterminado se utiliza en la propagación inicial de la base de datos. Cambiar el valor posteriormente no activa las alertas por correo electrónico.
NotificationDistributerJobCron
La frecuencia con la que se envían notificaciones de alerta a la interfaz. Las alertas se envían, de forma predeterminada, cada 10 segundos.
PeriodicErrorMailJobCron
Permite configurar una expresión Cron que controla la frecuencia con la que se envían alertas de correo electrónico periódicas. Esto solo funciona si se habilitan las alertas de correo electrónico. El valor predeterminado es cada 10 minutos, por lo que el informe contiene las alertas de gravedad de tipo Fatal y Error generadas en los últimos 10 minutos. Si no se ha generado ninguna alerta, no se envía ningún informe.
PasswordComplexity
Controla las reglas de validación para la complejidad de la contraseña y se expresa mediante expresiones regulares. La complejidad se aplica a todas las contraseñas (incluida la de administrador del host) de forma predeterminada. Aún así, cada tenant puede personalizar la complejidad de la contraseña de inicio de sesión en la pestaña Seguridad en la página Configuración . De forma predeterminada, las contraseñas deben contener al menos 8 caracteres y al menos una letra y un dígito.
SystemJobs.DetectNotRespondingRobots.MaxAlertCount
<add key="SystemJobs.DetectNotRespondingRobots.MaxAlertCount" value="10" />
al archivo UiPath.Orchestrator.dll.config
, debajo del resto de parámetros de alerta. Si aplicas esta configuración, ten en cuenta que, cuando el número total de alertas supere la cifra configurada, se producirá una advertencia en el visor de eventos, como: Alerts not published: total number of unresponsive sessions (21) is bigger than the configured max allowed (10).
.
SystemJobs.LicenseExpirationAlert.DaysBefore
180,90,30,14,7,1
, lo que significa que recibirás alertas por correo electrónico 6 veces: 180, 90, 30, 14, 7 y 1 día antes de que caduque tu licencia. Puedes definir un número menor de valores para reducir la frecuencia de las alertas por correo electrónico. Esto puede hacerse, por ejemplo, añadiendo la siguiente clave al archivo UiPath.Orchestrator.dll.config
: <add key="SystemJobs.LicenseExpirationAlert.DaysBefore" value="90,30,14" />
.
Storage.Type
y Storage.Location
.
Storage.Type
Define el destino donde se guardan los paquetes y los medios de ejecución. Puede completarse con los siguientes destinos:
FileSystem
-<add key="Storage.Type" value="FileSystem" />
.Azure
-<add key="Storage.Type" value="Azure" />
.Amazon
-<add key="Storage.Type" value="Amazon" />
.Minio
-<add key="Storage.Type" value="Minio" />
.
Storage.Location
Define la ubicación concreta donde se guardan los paquetes y los medios de ejecución.
Storage.Location
es obligatorio cuando:
- actualizar desde cualquier versión anterior a la 2020.10 de Orchestrator, y
- el anterior
NuGet.Repository.Type
eraLegacy
, y - el anterior
NuGet.Packages.Path
no utilizó el valor predeterminado.
Destino |
Ubicación |
---|---|
SistemaDeArchivos |
Proporciona una ruta absoluta utilizando el siguiente formato:
RootPath=C:\FolderName\AnotherFolderName .
Ejemplo:
<add key="Storage.Location" value="RootPath=C:\FolderName\AnotherFolderName" /> .
En la carpeta proporcionada, se creará la siguiente estructura de carpeta: Orchestrator-Host\Libraries : una carpeta dedicada a las bibliotecas almacenadas en la fuente del host.
Orchestrator-[tenantKey] - Una carpeta para cada tenant. La clave de tenant encontrada en la base de datos identifica al tenant. Por ejemplo Orchestrator-12ab1234-a567-456b-a12b-ab3456b123ab .
Por cada carpeta del tenant, se crean otros tres subdirectorios:
Los archivos se guardan en sus carpetas correspondientes en la ubicación especificada. De forma predeterminada, se almacenan en la siguiente ruta:
C:\Program Files (x86)\UiPath\Orchestrator\Storage .
|
Azure |
Proporcionar una cadena de conexión. Ejemplo:
<add key="Storage.Location" value="DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net" /> .
|
Amazon |
Proporcionar una cadena de conexión. Ejemplo:
<add key="Storage.Location" value="EndpointRegion=eu-west-3;accessKey=AKIAZGUEIGXUJ3BBI4MW;secretKey=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;useHttp=false" /> .
|
MinIO |
Proporcionar una cadena de conexión. Ejemplo:
<add key="Storage.Location" value="host=localhost:9001;accessKey=YVKYFJ0ZY246KDKP0634;secretKey=bdBEk2ubhIFsTNPuQ80PjKL+oqZBj67HoSWBFnw1" /> .
|
Ejemplo
<add key=\"Storage.Type\" value=\"Azure\" />
<add key=\"Storage.Location\" value=\"DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net\" />
<add key=\"Storage.Type\" value=\"Azure\" />
<add key=\"Storage.Location\" value=\"DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net\" />
La configuración anterior da instrucciones a Orchestrator:
- para que almacene los metadatos del paquete en la base de datos SQL;
- para que conserve los propios archivos en el almacenamiento de Azure Blob en la ubicación indicada por la cadena de conexión
DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net
; - para usar la convención de denominación predeterminada para el nombre del contenedor Azure -
Orchestrator-tenantKey
.Importante: Si tienes más de 99 tenants en Orchestrator, aumenta el límite predeterminado de tu cuenta de depósitos AWS S3 para que coincida con el número de tenants. Esto es necesario porque se crea un depósito independiente para cada tenant.
NuGet.Packages.ApiKey
NuGet.Activities.ApiKey
. El valor predeterminado se utiliza en la propagación inicial de la base de datos. Ten en cuenta que también se aceptan cadenas arbitrarias.
NuGet.Activities.ApiKey
NuGet.Packages.ApiKey
. Ten en cuenta que también se aceptan cadenas arbitrarias.
Se puede realizar la sincronización de paquetes entre múltiples nodos de Orchestrator y la interfaz supervisando el sistema de archivos o utilizando Redis. Esto se puede configurar utilizando la siguiente configuración. La forma recomendada es a través de Redis.
Processes.AllowUpdateWithRunningJobs
Especifica si puedes eliminar un proceso con trabajos en ejecución o pendientes asociados. Ten en cuenta que este parámetro está oculto de forma predeterminada. Están disponibles los siguientes valores:
true
- Los procesos se pueden eliminar con trabajos en ejecución o pendientes asociados.false
: Los procesos no se pueden eliminar con trabajos en ejecución o pendientes asociados. En esta instancia, al intentar eliminar un proceso se muestra el siguiente mensaje de error: "En estos momentos no se puede modificar este proceso porque hay trabajos activos asociados". (#1666)". Este es el valor predeterminado.
<add key="Processes.AllowUpdateWithRunningJobs" value="true" />
en el archivo UiPath.Orchestrator.dll.config
.
Deployment.Libraries.AllowTenantPublish
Permite especificar si los tenants que utilizan la fuente del host pueden o no subir bibliotecas a la fuente. Están disponibles los siguientes valores:
true
: las bibliotecas subidas en el nivel de tenant se propagan a la fuente del host. Este es el valor predeterminado.false
: las bibliotecas subidas en el nivel de tenant no se propagan a la fuente del host. No obstante, ten en cuenta que los usuarios tienen acceso a las bibliotecas existentes en la transmisión.
También se puede configurar desde la interfaz de usuario. La opción correspondiente, Permitir a los usuarios tenant subir a la fuente, se puede encontrar en el nivel de host, en la página de Ajustes. Más detalles aquí.
Buckets.ContentSecurityPolicy
UiPath.Orchestrator.dll.config
.
Buckets.AvailableProviders
Orchestrator
,Amazon
, Azure
, Minio
sS3Compatible
oluciones y. FileSystem
Se pueden introducir varios valores separados por comas.
UiPath.Orchestrator.dll.config
archivo y solo se seleccionan los siguientes proveedores: Orchestrator
, Amazon
Azure
, y Minio
. El comportamiento por defecto es específico tanto para instalaciones limpias como actualizaciones. Si la clave es visible, los proveedores disponibles se limitan a los especificados como valores Buckets.AvailableProviders
.
Minio
FileSystem
de , añade la siguiente clave:
<add key="Buckets.AvailableProviders" value="Orchestrator,Amazon,Azure,S3Compatible" />
<add key="Buckets.AvailableProviders" value="Orchestrator,Amazon,Azure,S3Compatible" />
Buckets.FileSystem.Allowlist
Buckets.FileSystem.Allowlist
.
|
. Tenga en cuenta que las rutas deben estar completamente cualificadas, ya sea con una unidad de disco o una ruta UNC (p. ej. c:\
, c: est
, \\servershare\shared
), y cada uno de ellos representa un prefijo permitido para cualquier depósito. Puede crearse un depósito en esa ruta particular o en cualquier subtrazo.
Buckets.FileSystem.Allowlist
configuración tiene una serie de implicaciones de seguridad, se recomienda encarecidamente que consultes Utilizar la lista de permisos de almacenamiento de FileSystem de forma segura antes de continuar.
La configuración de los proveedores de autenticaciones externos se ha trasladado a la página de Proveedores externos de Identity Server.
WindowsAuth.Enabled
WindowsAuth.Domain
los y los AcceptedRootUrls
parámetros deben configurarse antes de poder importar grupos de Active Directory.
WindowsAuth.Enabled
Activa o desactiva la función de importación de usuarios de Windows Active Directory. Para habilitar la autenticación mediante Active Directory de Windows, configura los proveedores externos en Identity Server.
WindowsAuth.Domain
Todos los dominios y subdominios en bosques de confianza bidireccional con el dominio especificado aquí están disponibles al añadir usuarios o grupos AD. Solo puedes especificar un dominio en este parámetro.
WindowsAuth.GroupMembershipCacheExpireHours
UiPath.Orchestrator.dll.config
, y el valor predeterminado está establecido en 1
horas.
WindowsAuth.ConvertUsersAtLogin
true
, convierte cada usuario de AD local con credenciales de AD en un usuario de directorio tras el primer inicio de sesión con las credenciales de AD. Como alternativa, puedes utilizar el script documentado aquí para convertir a todos los usuarios locales AD que han iniciado sesión con credenciales AD en usuarios del directorio. Este parámetro no se muestra por defecto en el archivo UiPath.Orchestrator.dll.config
. Está establecido como false
de forma predeterminada.
AcceptedRootUrls
,
), como en "https://server1,https://server2"
.
Auth.Cookie.Expire
La cantidad de tiempo tras la que se cerrará tu sesión automáticamente, en minutos. Está establecido en 30 minutos de forma predeterminada.
Auth.Bearer.Robot.Expire
La cantidad de tiempo tras la que caduca el token al portador de tu Robot. De forma predeterminada, está establecido en 30 minutos.
Auth.Cookie.ValidateInterval
60
segundos. Este parámetro no se muestra por defecto en el archivo UiPath.Orchestrator.dll.config
. Por ejemplo, si quieres establecer el parámetro en 20 segundos, añade la siguiente clave: <add key="Auth.Cookie.ValidateInterval" value="20"/>
.
Auth.DisabledPermissions
<add key="Auth.DisabledPermissions" value="Machines.Delete,Libraries.Delete" />
.
Auth.RememberMe.Enabled
true
, de forma predeterminada, lo que significa que se muestra la casilla de verificación. Ajústalo a false
para ocultarlo. Esta configuración no se muestra por defecto en el archivo UiPath.Orchestrator.dll.config
.
Auth.AllowChangePassword
UiPath.Orchestrator.dll.config
de forma predeterminada. Están disponibles los siguientes valores:
true
: El usuario puede cambiar su contraseña en la página de Perfil. Este es el valor predeterminado.false
- el usuario no puede cambiar su contraseña en la página de Perfil.
Auth.AllowSelfEmailUpdate
true
, lo que significa que puede actualizarlo. Establece el parámetro en false
para que el campo sea de solo lectura. Esta configuración no se muestra en el archivo UiPath.Orchestrator.dll.config
de forma predeterminada.
ExternalAuth.AccessTokenAuth.Enabled
UiPath.Orchestrator.dll.config
de forma predeterminada. Están disponibles los siguientes valores:
true
: el usuario puede realizar solicitudes autenticadas utilizando un token de acceso emitido por Auth0. Esto solo se tiene en cuenta si se establece una audiencia válida para el parámetroExternalAuth.AccessTokenAuth.Audience
.false
: El usuario no puede realizar solicitudes autenticadas utilizando un token de acceso emitido por Auth0. Este es el valor predeterminado.
ExternalAuth.AccessTokenAuth.Audience
<add key="ExternalAuth.AccessTokenAuth.Audience" value="https://cloud.uipath.com" />
. Esta configuración no se muestra en el archivo UiPath.Orchestrator.dll.config
de forma predeterminada.
ExternalAuth.ShowPII
<add key="ExternalAuth.ShowPII" value="true" />
. La clave no se muestra de forma predeterminada en UiPath.Orchestrator.dll.config
, y el comportamiento predeterminado no permite que se muestre la PII.
WindowsAuth.GroupMembershipCacheExpireHours
Permite configurar la caché de pertenencia a grupos de AD. El valor predeterminado es 1, por lo que los cambios realizados en la pertenencia a grupos de AD se sincronizan con Orchestrator una vez cada hora para las sesiones de usuario activas.
RestrictBasicAuthentication
Trasladado a appsettings.json de Identity Server.
EnableBasicAuthenticationForHostTenant
Trasladado a appsettings.json de Identity Server.
Estos ajustes solo deben modificarse si utilizas un equilibrador de carga.
LoadBalancer.UseRedis
false
.
LoadBalancer.Redis.ConnectionString
LoadBalancer.UseRedis
está establecido en true
. Una cadena de conexión que te permite configurar tu servidor Redis, que contiene la URL del servidor, la contraseña y el puerto utilizado con Redis. También es posible habilitar las conexiones cifradas de SSL entre los nodos de Orchestrator y el servicio Redis. Para obtener más información, haz clic aquí. Ejemplos:
- con SSL habilitado:n
<add key="LoadBalancer.Redis.ConnectionString" value="DOCWREDIS02:6379,password=12345678,ssl=true" />
- sin SSL habilitado:
<add key="LoadBalancer.Redis.ConnectionString" value="DOCWREDIS02:6379,password=12345678" />
Plugins.SecureStores
\Orchestrator\Plugins
de tu directorio de instalación. Por ejemplo:
- Almacén único:
<add key="Plugins.SecureStores" value="UiPath.Orchestrator.CyberArk.dll"/>
-
Almacenes múltiples:
<add key="Plugins.SecureStores" value="UiPath.Orchestrator.CyberArk.dll,UiPath.Orchestrator.SecureStore.CyberArkCCP.dll,UiPath.Orchestrator.AzureKeyVault.SecureStore.dll"/>
Cuando se actualiza una instancia de Orchestrator con una integración existente de CyberArk, este ajuste se rellena automáticamente con el complemento CyberArk. En todas las demás instalaciones, el valor está vacío de forma predeterminada.
Plugins.SecureStores.CyberArk.CLIPasswordSDKExePath
CLIPasswordSDK64.exe
en una ruta de instalación personalizada. Por ejemplo, si el directorio de instalación de CyberArk es D:\CustomFolder\
, debes añadir la siguiente clave: <add key="Plugins.SecureStores.CyberArk.CLIPasswordSDKExePath" value="D:\CustomFolder\CLIPasswordSDK64.exe"/>
. El valor predeterminado de esta configuración de la aplicación es C:\Program Files (x86)\CyberArk\ApplicationPasswordSdk\CLIPasswordSDK64.exe
.
Plugins.SecureStores.CyberArk.UsePowerShellCLI
false
. Añade la siguiente clave para habilitarlo: <add key="Plugins.SecureStores.CyberArk.UsePowerShellCLI" value="true"/>
.
La configuración de la autenticación de Azure AD se ha trasladado a la página de proveedores externos de Identity Server.
Logs.RobotLogs.ReadTarget
database
o robotelasticbuffer
).
RobotsLogs.Flush.Interval
UiPath.Orchestrator.dll.config
. A menos que se especifique lo contrario, su valor es de 0 segundos. El siguiente ejemplo muestra cómo establecer un intervalo de descarga de 60 segundos, por lo que el UiPath Robot enviará registros al servidor cada 60 segundos.
<add key="RobotsLogs.Flush.Interval" value="60" />
<add key="RobotsLogs.Flush.Interval" value="60" />
RobotsLogs.Flush.BatchSize
UiPath.Orchestrator.dll.config
. A menos que se especifique lo contrario, su valor es de 100 entradas de mensajes de registro, lo que se traduce en que el UiPath Robot envía lotes de 100 registros al servidor.
<add key="RobotsLogs.Flush.BatchSize" value="100" />
<add key="RobotsLogs.Flush.BatchSize" value="100" />
Logs.RequestAbortedLogBehavior
Especifica el comportamiento de registro para las excepciones de cancelación que se lanzan al cancelar una operación en ejecución. Se generan, por ejemplo, al hacer clic en un botón y, antes de que se ejecute la operación, se hace clic en otro diferente. Ten en cuenta que este parámetro está oculto de forma predeterminada. Están disponibles los siguientes valores:
Ignore
: todas las excepciones de cancelación se ignoran si se han anulado las solicitudes correspondientes. Este es el valor predeterminado.Info
: las excepciones de cancelación se registran con el nivel de gravedad de Información.None
: las excepciones de cancelación se registran con el nivel de gravedad del Error.
<add key="Logs.RequestAbortedLogBehavior" value="Ignore" />
en el archivo de configuración.
Logs.Elasticsearch.SharedIndex
index
en el NLog de destino. Por ejemplo, <add key="Logs.Elasticsearch.SharedIndex" value="robotlogs" />
. Más detalles aquí. Ten en cuenta que este parámetro está oculto por defecto.
Logs.Elasticsearch.EnableFolderIdFilter
true
de forma predeterminada, por lo que los registros están ocultos. Establece el parámetro como false
para que se muestren: <add key="Logs.Elasticsearch.EnableFolderIdFilter" value="false" />
La configuración de Webhooks se ha trasladado al archivo appsettings.json del servicio Webhooks.
Scalability.Heartbeat.PeriodSeconds
30
segundos.
Scalability.Heartbeat.FailureThreshold
4
, lo que significa que después de 2 minutos de latidos fallidos (4 x 30 segundos = 2 minutos), se marca que ese UiPath Robot no responde.
Scalability.SignalR.Enabled
true
. Este parámetro se utiliza en la propagación inicial de la base de datos. Para realizar cambios tras la instalación, utiliza la página Ajustes con permisos de tenant o de host.
Scalability.SignalR.Transport
Especifica el protocolo de transporte utilizado para conectarse a los canales SignalR de Orchestrator. Se pueden atribuir los siguientes valores (cualquier combinación bitwise OR):
- WebSocketTransport = 1
- ServerSentEventsTransport = 2
- LongPollingTransport = 4
- Valor por defecto: 7 (WebSocketTransport | ServerSentEventsTransport | LongPollingTransport)
Este parámetro se utiliza en la propagación inicial de la base de datos. Para realizar cambios después de la instalación, utiliza la página Configuración , a nivel de tenant o host.
Scalability.AzureSignalR.ConnectionString
Ayuda a habilitar el servicio de Azure SignalR, lo que facilita la comunicación directa entre tu flota de UiPath Robots y el servicio SignalR
Scalability.AzureSignalR.ConnectionCount
. Este parámetro está habilitado en nuestra oferta de Cloud. No se muestra por defecto en el archivo UiPath.Orchestrator.dll.config
.
<add key="Scalability.AzureSignalR.ConnectionString" value="Endpoint=https://test.signalr.net;AccessKey=M1ug+sBu07hyyi12AgyJ52SEd4OgC2Mm6BvllVHCC9c=;Version=1.0;" />
.
Scalability.AzureSignalR.ConnectionCount
5
. Ejemplo: <add key="Scalability.AzureSignalR.ConnectionCount" value="7" />
. Esta configuración no se muestra por defecto y no se puede utilizar sin la clave Scalability.AzureSignalR.ConnectionString
.
Scalability.SignalR.RequireStickySessions
true
, se habilitan todos los transportes y Orchestrator supone que las sesiones sticky del equilibrador de carga están habilitadas. Habilitar las sesiones sticky en UiPath.Orchestrator.dll.config
, sin habilitarlas en el equilibrador de carga, dará como resultado conexiones de SignalR fallidas.
Insights.TableCreationRetryCount
3
de forma predeterminada.
UiPath.Orchestrator.dll.config
archivo .
Insights.TableCreationRetryBackoffSeconds
60
de forma predeterminada.
UiPath.Orchestrator.dll.config
archivo .
Telemetry.Enabled
Habilita o deshabilita la recopilación de datos de uso y rendimiento que UiPath utiliza para ayudar a diagnosticar problemas y mejorar Orchestrator. Para obtener más detalles sobre las prácticas de privacidad de UiPath, consulta la declaración de privacidad. Están disponibles los siguientes valores:
true
- La función de telemetría está habilitada. Este es el valor predeterminado.false
- La función de telemetría está deshabilitada.
También es posible deshabilitar la recopilación de datos de rendimiento o uso al instalar o actualizar tu instancia de Orchestrator, como se describe aquí.
MediaRecording.Enabled
true
para habilitar la característica de grabación. Por defecto, false
está establecido en lo que significa que la característica está deshabilitada. El almacenamiento de archivos está afectado por el parámetro NuGet.Repository.Type
, y se configura con los parámetros Storage.Type
y Storage.Location
cuando NuGet.Repository.Type
se establece en Composite
.
Pagination.Limits.Enabled
true
de forma predeterminada en Cloud Platform y en las instalaciones desde cero de instancias de Orchestrator en las propias instalaciones. Añade un valor $top
predeterminado para todas las llamadas a los puntos finales de la API con parámetros de paginación (p. ej. odata/Users
).
Triggers.DisableWhenFailedCount
Triggers.DisableWhenFailedCount
te permite ajustar el número de ejecuciones fallidas, mientras que Triggers.DisableWhenFailingSinceDays
permite cambiar el número de días. Por defecto, el valor Triggers.DisableWhenFailedCount
es de 10, y el valor Triggers.DisableWhenFailingSinceDays
es de 1, por lo que el desencadenador se deshabilita tras 10 intentos de ejecución sin éxito si no se han producido ejecuciones con éxito durante el último día.
Triggers.JobsCountStrategy
Permite elegir la estrategia de recuento de trabajos para los que se inician mediante desencadenadores. Oculto por defecto. Las siguientes opciones están disponibles:
PerProcess
: un desencadenador inicia el número de trabajos requerido teniendo en cuenta cualquier trabajo pendiente del proceso especificado. Por ejemplo, dos desencadenadores definidos para el mismo proceso inician 3 y 5 trabajos respectivamente. Si el primer desencadenador inicia 3 trabajos en un momento dado, cuando se activa el segundo desencadenador se lanzan 2 trabajos para llegar a los 5 trabajos necesarios. Añade la siguiente clave en el archivo de configuración para utilizar esta estrategia:<add key="Triggers.JobsCountStrategy" value="PerProcess" />
. Este es el valor predeterminado.PerTrigger
: un desencadenador inicia el número de trabajos requerido teniendo en cuenta cualquier trabajo existente iniciado previamente por ese mismo desencadenador. Por ejemplo, se define un desencadenador para iniciar 9 trabajos en un momento dado. Si se han completado 2 trabajos correctamente en el momento en que se desactiva este desencadenador de nuevo, Orchestrator inicia otros 2 trabajos para llegar a los 9 trabajos necesarios. Añade la siguiente clave en el archivo de configuración para utilizar esta estrategia:<add key="Triggers.JobsCountStrategy" value="PerTrigger" />
.NoLimit
: el desencadenador inicia el número de trabajos requerido independientemente de cualquier trabajo existente y pendiente. Por ejemplo, se define un desencadenador para iniciar 5 trabajos en un momento dado. La segunda vez que se desactiva el desencadenador, se inician otros 5 trabajos. Añade la siguiente clave en el archivo de configuración para utilizar esta estrategia:<add key="Triggers.JobsCountStrategy" value="NoLimit" />
.
PreventAutoRefresh.Enabled
<add key="PreventAutoRefresh.Enabled" value="true" />
se puede añadir para restringir la actualización automática de la página cuando se ejecutan trabajos. La clave no se muestra de forma predeterminada, y el valor predeterminado es false
, por lo que Orchestrator actualiza la página automáticamente por cada nuevo trabajo.
PreventAutoRefresh.Enabled
.
QueueActivation.TriggerCache.Expiration.Minutes
Controla el modo en que se generan los desencadenadores de cuarzo simples para las colas con desencadenadores de cola asociados.
- Si se establece como
0
, se generará un desencadenador de cuarzo para cada elemento añadido a una cola. - Si se establece como un valor mayor que 0, el sistema comprueba si ya hay un desencadenador de cuarzo creado para esa cola y evita la creación de otro. La limitación desaparece cuando se cumplen las condiciones del Desencadenador de la cola. Si el Desencadenador de la cola no consigue hacerlo, la limitación se retira según el valor marcado por el parámetro
QueueActivation.TriggerCache.Expiration.Minutes
. El valor predeterminado es5
.
Features.ClassicFolders.Enabled
false
lo que significa que las carpetas clásicas están deshabilitadas y solo están disponibles las carpetas modernas. Este parámetro está oculto de forma predeterminada.
Jobs.TerminatingJobsTimeout
1440
, lo que significa que los trabajos no pueden marcarse como Fallidos hasta que hayan pasado en estado de Terminación al menos un día. Este parámetro está oculto de forma predeterminada.
Jobs.TerminatingJobsCleanupCron
Jobs.TerminatingJobsTimeout
. Los valores predeterminados son 0 0 0/3 1/1 * ? *
para Jobs.TerminatingJobsCleanupCron
, y 1440
para Jobs.TerminatingJobsTimeout
, lo que significa que el trabajo en segundo plano se ejecuta cada tres horas y solo pasan a Fallido los trabajos que hayan pasado en estado de Terminación al menos un día. Este parámetro está oculto de forma predeterminada.
PW.StopExploringCron
0 25 * ? * *
, lo que significa que el trabajo en segundo plano se ejecuta en el minuto 25 de cada hora. Si no tienen los permisos necesarios, se finalizan sus sesiones de exploración. Este parámetro está oculto de forma predeterminada.
Features.LongRunning.Enabled
<add key="Features.LongRunning.Enabled" value="true" />
.
Tasks.ModuleEnabled
<add key="Tasks.ModuleEnabled" value="true" />
. Este ajuste hace que la característica esté disponible a nivel de instancia. Para configurarlo en una base tenant, sigue estos pasos. El parámetro Features.LongRunning.Enabled
debe establecerse como true
para que este ajuste surta efecto.
Features.SmartCardAuthentication.Enabled
<add key="Features.SmartCardAuthentication.Enabled" value="true" />
.
ActiveDirectory.SearchInputMinimumLength
UiPath.Orchestrator.dll.config
. Ejemplo: <add key="ActiveDirectory.SearchInputMinimumLength" value="4" />
.
ActiveDirectory.SearchResultsSizeLimit
UiPath.Orchestrator.dll.config
. Ejemplo: <add key="ActiveDirectory.SearchResultsSizeLimit" value="30" />
.
ActiveDirectory.SearchResultsTimeLimitSeconds
UiPath.Orchestrator.dll.config
. Ejemplo: <add key="ActiveDirectory.SearchResultsSizeLimit" value="40" />
.
OData.BackwardsCompatible.Enabled
true
, se analizan los caracteres especiales en el cuerpo de las solicitudes y respuestas. De forma predeterminada, este parámetro está oculto y establecido como false
.
NotRespondingRobotsJobStartDelay
UiPath.Orchestrator.dll.config
de forma predeterminada.
Upload.Queues.MaxNumberOfItems
15000
. Ten en cuenta que este parámetro no se muestra por defecto en UiPath.Orchestrator.dll.config
.
Processes.FilterOutDeleted
Permite optimizar la forma en que Orchestrator recupera los procesos. La optimización se consigue eliminando las verificaciones innecesarias de los procesos huérfanos cuyos paquetes asociados fueron eliminados. Esto mejora el rendimiento general de tu instancia, especialmente si se trata de una implementación grande. Están disponibles los siguientes valores:
false
: la recuperación de paquetes está optimizada; no se realizan verificaciones para los procesos huérfanos.true
: La recuperación de paquetes no está optimizada.
true
de forma predeterminada, por lo que la recuperación de procesos no está optimizada.
CertificatesStoreLocation
<add key="CertificatesStoreLocation" value="LocalMachine" />
. Asegúrate de que AzureKeyVaultCertificateStoreLocation
en appsettings.Production.json tiene el mismo valor.
La clave de cifrado utilizada para proteger las contraseñas en los activos de credenciales. Si utilizas un entorno con un equilibrador de carga de red, esta clave debe ser la misma para todas las máquinas.
EncryptionKeyPerTenant.Enabled
tiene la opción true
establecida, y EncryptionKeyPerTenant.KeyProvider
tiene la opción AzureKeyVault
establecida. Además, asegúrate de proporcionar todos los permisos de clave, secreto y certificado para tu instancia de Orchestrator en las Políticas de acceso de tu Azure Key Vault. Para conocer el procedimiento completo, consulta esta página.
ae11aa1a-1234-1234-a123-a12a12aaa1aa
. Esta configuración no se muestra de manera predeterminada en el archivo UiPath.Orchestrator.dll.config
. <add key="Azure.KeyVault.ClientId" value="ae11aa1a-1234-1234-a123-a12a12aaa1aa" />
Ejemplo: .
UiPath.Orchestrator.dll.config
. <add key="Azure.KeyVault.CertificateThumbprint" value="1234123412341234123412341234124312341234" />
Ejemplo: .
https://CustomVaultName.vault.azure.net/
. Esta configuración no se muestra de manera predeterminada en el archivo UiPath.Orchestrator.dll.config
. Ejemplo: <add key="Azure.KeyVault.VaultAddress" value="https://CustomVaultName.vault.azure.net/" />
.
Esta sección contiene los ajustes para configurar el inicio de sesión único, los tokens de acceso S2S y los tokens de acceso de aprovisionamiento de UiPath Robots.
Los siguientes parámetros te permiten configurar el inicio de sesión único a través de Identity Server:
ExternalAuth.System.OpenIdConnect.Enabled
true
de forma predeterminada.
ExternalAuth.System.OpenIdConnect.Authority
https://Orchestrator/Identity
, donde Orchestrator
es la dirección de instalación de tu Orchestrator.
ExternalAuth.System.OpenIdConnect.ClientId
Te permite establecer el ID de aplicación de Orchestrator (clientId) registrada en Identity Server. El valor se genera en el momento de la instalación y se guarda en Identity Server.
ExternalAuth.System.OpenIdConnect.ClientSecret
Te permite establecer el secreto de cliente para que el sistema de autenticación externo reconozca la aplicación de Orchestrator. El valor se genera en el momento de la instalación y se guarda en Identity Server.
ExternalAuth.System.OpenIdConnect.RedirectUri
http://Orchestrator/signinsystemopenidconnect
.
ExternalAuth.System.OpenIdConnect.PostLogoutRedirectUri
La dirección a la que Identity Server te redirige después de que el usuario inicie sesión en Orchestrator. Este valor se rellena automáticamente con tu URL de Orchestrator.
UiPath.Orchestrator.dll.config
debe contener estas claves:
<add key="ExternalAuth.System.OpenIdConnect.Enabled" value="true" />
<add key="ExternalAuth.System.OpenIdConnect.Authority" value="https://Orchestrator/Identity" />
<add key="ExternalAuth.System.OpenIdConnect.ClientId" value="orchestrator" />
<add key="ExternalAuth.System.OpenIdConnect.ClientSecret" value="49C1A7E1-0C79-4A89-A3D6-A37998FB86B0" />
<add key="ExternalAuth.System.OpenIdConnect.RedirectUri" value="https://Orchestrator/signinsystemopenidconnect" />
<add key="ExternalAuth.System.OpenIdConnect.PostLogoutRedirectUri" value="https://Orchestrator/" />
<add key="ExternalAuth.System.OpenIdConnect.Enabled" value="true" />
<add key="ExternalAuth.System.OpenIdConnect.Authority" value="https://Orchestrator/Identity" />
<add key="ExternalAuth.System.OpenIdConnect.ClientId" value="orchestrator" />
<add key="ExternalAuth.System.OpenIdConnect.ClientSecret" value="49C1A7E1-0C79-4A89-A3D6-A37998FB86B0" />
<add key="ExternalAuth.System.OpenIdConnect.RedirectUri" value="https://Orchestrator/signinsystemopenidconnect" />
<add key="ExternalAuth.System.OpenIdConnect.PostLogoutRedirectUri" value="https://Orchestrator/" />
UiPath.Orchestrator.dll.config
:
IdentityServer.Integration.Enabled
true
de forma predeterminada.
IdentityServer.Integration.Authority
https://Orchestrator/Identity
, donde Orchestrator
es la dirección de instalación de tu Orchestrator.
IdentityServer.Integration.ClientId
Te permite establecer el ID de aplicación (ID de cliente) utilizado para generar tokens de acceso S2S registrados en Identity Server. El valor se genera en el momento de la instalación.
IdentityServer.Integration.ClientSecret
Te permite establecer el Secreto de cliente para que Identity Server reconozca la aplicación S2S de Orchestrator. El valor se genera en el momento de la instalación.
IdentityServer.Integration.AccessTokenCacheBufferInSeconds
50
de forma predeterminada.
IdentityServer.Integration.UserOrchestratorApiAudience
OrchestratorApiUserAccess
de forma predeterminada.
<add key="IdentityServer.Integration.Enabled" value="true" />
<add key="IdentityServer.Integration.Authority" value="https://Orchestrator/Identity" />
<add key="IdentityServer.Integration.ClientId" value="orchestratorapiaccess" />
<add key="IdentityServer.Integration.ClientSecret" value="a5d57b1d-5b25-49ba-bff7-33aa57f96a58" />
<add key="IdentityServer.Integration.AccessTokenCacheBufferInSeconds" value="50" />
<add key="IdentityServer.Integration.UserOrchestratorApiAudience" value="OrchestratorApiUserAccess" />
<add key="IdentityServer.Integration.Enabled" value="true" />
<add key="IdentityServer.Integration.Authority" value="https://Orchestrator/Identity" />
<add key="IdentityServer.Integration.ClientId" value="orchestratorapiaccess" />
<add key="IdentityServer.Integration.ClientSecret" value="a5d57b1d-5b25-49ba-bff7-33aa57f96a58" />
<add key="IdentityServer.Integration.AccessTokenCacheBufferInSeconds" value="50" />
<add key="IdentityServer.Integration.UserOrchestratorApiAudience" value="OrchestratorApiUserAccess" />
UiPath.Orchestrator.dll.config
:
IdentityServer.S2SIntegration.Enabled
UiPath.Orchestrator.dll.config
.
IdentityServer.Integration.S2SOrchestratorApiAudience
OrchestratorApiS2SAccess
de forma predeterminada.
UiPath.Orchestrator.dll.config
también contenga las siguientes claves preexistentes con sus valores establecidos en true
:
MultiTenancy.AllowHostToAccessTenantApi
true
, permite a los usuarios host acceder a datos específicos de otros tenants. El valor está establecido como true
de forma predeterminada.
MultiTenancy.TenantResolvers.HttpGlobalIdHeaderEnabled
true
permite identificar al tenant leyendo la ID global del tenant en el encabezado de la solicitud de la API.
<add key="IdentityServer.S2SIntegration.Enabled" value="true" />
<add key="IdentityServer.Integration.S2SOrchestratorApiAudience" value="OrchestratorApiS2SAccess" />
<add key="MultiTenancy.AllowHostToAccessTenantApi" value="true" />
<add key="MultiTenancy.TenantResolvers.HttpGlobalIdHeaderEnabled" value="true" />
<add key="IdentityServer.S2SIntegration.Enabled" value="true" />
<add key="IdentityServer.Integration.S2SOrchestratorApiAudience" value="OrchestratorApiS2SAccess" />
<add key="MultiTenancy.AllowHostToAccessTenantApi" value="true" />
<add key="MultiTenancy.TenantResolvers.HttpGlobalIdHeaderEnabled" value="true" />
Orchestrator actúa como generador de tokens para UiPath Robots. Los UiPath Robots utilizan el punto final de Orchestrator para generar un token de acceso. El token de acceso se envía a las actividades que pueden utilizar diferentes recursos, como AI Fabric. Con la integración de Identity Service con Orchestrator, Identity Server se encarga de la generación de tokens de acceso.
UiPath.Orchestrator.dll.config
correspondiente: <logger name="Robot.*" writeTo="database,robotElasticBuffer" final="true" />
. Se utiliza para configurar los mensajes de registro generados por los Robots. Hay que configurar los siguientes parámetros:
-
writeTo
: la ubicación en la que se escriben los mensajes de registro generados por el UiPath Robot.Están disponibles los siguientes valores:database
: los registros se envían a la base de datos SQL de Orchestrator. Este es uno de los valores por defecto.-
robotElasticBuffer
: los registros se envían a Elasticsearch. Este es el segundo valor por defecto. Recuerda que esto requiere una configuración adicional. Más detalles aquí.Al tener registros enviados tanto a la base de datos SQL de Orchestrator como la de Elasticsearch, puedes tener registros no rechazados. Elimina uno de los valores para dejar de registrar en esa ubicación.
final
: un marcador que indica que se debe realizar cuando se encuentra una coincidencia entre un mensaje registrado y el nombre del registrador. Cuando se fija entrue
, no busca otra coincidencia. Cuando se establece comofalse
, se marcan otras reglas que coinciden con la misma fuente de origen. De forma predeterminada, está establecido entrue
.
UiPath.Orchestrator.dll.config
correspondiente: <logger name="Quartz.*" minlevel="Info" writeTo="eventLogQuartz" final="true" />
. Se utiliza para configurar los mensajes de registro generados por las programaciones.
quartz.jobStore.clustered
parámetro a true
.
UiPath.Orchestrator.dll.config
correspondiente: <logger name="Monitoring.*" writeTo="monitoring" minlevel="Warn" final="true" />
. Se utiliza para configurar los registros de error que se muestran en la página de Supervisión. Ten en cuenta que si eliminas esta regla o se altera target
, no se mostrarán los registros de error en la página de Supervisión.
UiPath.Orchestrator.dll.config
correspondiente: <logger name="BusinessException.*" minlevel="Info" writeTo="businessExceptionEventLog" final="true" />
. Se utiliza para configurar los registros de las excepciones empresariales lanzadas. Por ejemplo, los problemas de validación (p. ej. Invalid username
) o los conflictos empresariales (p. ej. License expired
).
UiPath.Orchestrator.dll.config
correspondiente: <logger name="*" minlevel="Info" writeTo="eventLog" />
. Se utiliza para configurar todos los demás registros aparte de los descritos anteriormente, incluidos los generados por Orchestrator.
Más información sobre ajustes adicionales.
El siguiente destino de NLog debe rellenarse según tu configuración de Elasticsearch:
<target xsi:type="ElasticSearch" name="robotElastic" uri="<elasticSearch_url_1>,<elasticSearch_url_2>, <elasticSearch_url_3>" index="${event-properties:item=indexName}-${date:format=yyyy.MM}" documentType="logEvent" includeAllProperties="true" disablePing="true" layout="${message}" excludedProperties="agentSessionId,tenantId,organizationUnitId,indexName" />
<target xsi:type="ElasticSearch" name="robotElastic" uri="<elasticSearch_url_1>,<elasticSearch_url_2>, <elasticSearch_url_3>" index="${event-properties:item=indexName}-${date:format=yyyy.MM}" documentType="logEvent" includeAllProperties="true" disablePing="true" layout="${message}" excludedProperties="agentSessionId,tenantId,organizationUnitId,indexName" />
uri
: la URL de Elasticsearch; ten en cuenta que debes incluir el protocolo y el puerto, comohttp://elastic_server:9200
. Puedes eliminar la necesidad de un equilibrador de carga cumplimentando este parámetro con la URL de Elasticseach de cada nodo, comouri="http://elastic-node1:9200,http://elastic-node2:9200,http://elastic-node3:9200"
.excludedProperties
: los datos que no quieres guardar en Elasticsearch.index
: el formato del índice de registro, que puede ser exclusivo de cada tenant o común para todos los tenants. Detalles a continuación.
- Índice
index="${event-properties:item=indexName}-${date:format=yyyy.MM}"
individual: se utiliza un índice separado para cada tenant, por lo que los registros específicos de un tenant se generan y se recuperan en función de un identificador único de tenant. En este caso,indexName
, que se atribuye al nombre del tenant. Esta es la configuración predeterminada. En este caso, los registros se generan por mes. -
Índice compartido: se utiliza
index="robotlogs-${date:format=yyyy.MM.dd}"
un índice para todos los tenants, por lo que todos los registros utilizan el mismo índice independientemente del tenant. En este caso, los registros se generan por día. Para utilizar un índice compartido, también debes añadir la siguiente clave enUiPath.Orchestrator.dll.config
:<add key="Logs.Elasticsearch.SharedIndex" value="robotlogs" />
. Asegúrate de establecer el mismo valor que el obtenido en el parámetroindex
del NLog de destino.Los registros que se generen utilizando un índice individual se conservan si se cambia a un índice compartido. No obstante, los registros que se generen utilizando un índice compartido se perderán al elegir uno individual.
Para almacenar registros de eventos del sistema en la base de datos en lugar de en el visor de eventos, sigue estos pasos:
-
Crea una nueva tabla de base de datos, por ejemplo:
CREATE TABLE [dbo].[EventLogs]( [Id] [bigint] IDENTITY(1,1) NOT NULL, [Timestamp] [datetime] NOT NULL, [Level] [int] NOT NULL, [Message] [nvarchar](max) NULL, [Exception] [nvarchar](max) NULL)
CREATE TABLE [dbo].[EventLogs]( [Id] [bigint] IDENTITY(1,1) NOT NULL, [Timestamp] [datetime] NOT NULL, [Level] [int] NOT NULL, [Message] [nvarchar](max) NULL, [Exception] [nvarchar](max) NULL)En la consulta anterior, creamos una tabla llamadaEventLogs
con las siguientes columnas:Id
: poner en espera un número de identificación para cada registro, aquí comenzando con1
e incrementando el valor con cada registro añadido;Timestamp
: poner en espera la hora en la que se registró cada evento;Level
: poner en espera el nivel de registro numérico de cada evento;Message
: poner en espera el mensaje de cada evento, si corresponde;-
Exception
: poner en espera la excepción registrada para cada evento, si corresponde.Nota: puedes utilizar cualquier nombre para tu tabla y eliminar cualquier columna de la consulta anterior o añadir otras que se adapten a tus necesidades.
-
En el archivo
UiPath.Orchestrator.dll.config
, añade un nuevo destino de NLog:<target xsi:type="Database" connectionString="${ui-connection-strings:item=Default}" name="eventLogDatabase" keepConnection="true"> <commandText> INSERT INTO dbo.EventLogs (Timestamp, Level, Message, Exception) VALUES (@timestamp, @level, @message, @exception) </commandText> <parameter name="@timestamp" layout="${date:format=yyyy-MM-dd HH\:mm\:ss.fff}" /> <parameter name="@level" layout="${event-properties:item=levelOrdinal}" /> <parameter name="@message" layout="${message}" /> <parameter name="@exception" layout="${onexception:${exception:format=tostring:maxInnerExceptionLevel=5:innerFormat=tostring}}" /> </target>
<target xsi:type="Database" connectionString="${ui-connection-strings:item=Default}" name="eventLogDatabase" keepConnection="true"> <commandText> INSERT INTO dbo.EventLogs (Timestamp, Level, Message, Exception) VALUES (@timestamp, @level, @message, @exception) </commandText> <parameter name="@timestamp" layout="${date:format=yyyy-MM-dd HH\:mm\:ss.fff}" /> <parameter name="@level" layout="${event-properties:item=levelOrdinal}" /> <parameter name="@message" layout="${message}" /> <parameter name="@exception" layout="${onexception:${exception:format=tostring:maxInnerExceptionLevel=5:innerFormat=tostring}}" /> </target>Se pueden definirparameter
correspondientes para que los datos se añadan en cada columna de la base de datos, en este ejemplo@timestamp
,@level
,@message
y@exception
. -
Por último, asocia el destino creado recientemente con la clasificación de registros NLog de todos los mensajes de Orchestrator, desde arriba, añadiendo lo siguiente:
<logger name="*" minlevel="Info" writeTo="eventLog,eventLogDatabase" />
<logger name="*" minlevel="Info" writeTo="eventLog,eventLogDatabase" />
NLog es una plataforma ampliable de código abierto que se configura fácilmente para una gran variedad de plataformas .NET. Con NLog, puedes almacenar o transferir datos de registros a cualquier número de destinos predeterminados o personalizados, como un archivo local, un registro de eventos, un correo electrónico o una base de datos.
Trace
, Debug
, Info
, Warn
, Error
, Fatal
o Off
. Consulta los Niveles de registro para obtener una descripción de los niveles disponibles en Orchestrator.
Off
. Se habilita configurando la siguiente sección del archivo UiPath.Orchestrator.dll.config
:
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true" throwExceptions="false" internalLogLevel="Off" internalLogFile="">
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true" throwExceptions="false" internalLogLevel="Off" internalLogFile="">
Los atributos que se deben establecer son:
internalLogLevel
: el nivel de registro deseadointernalLogFile
: la ubicación del archivo de registro
Por ejemplo:
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true" throwExceptions="false" internalLogLevel="Debug" internalLogFile="C:\logs.txt">
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true" throwExceptions="false" internalLogLevel="Debug" internalLogFile="C:\logs.txt">
internalLogFile
- Ajustes de la aplicación
- Configuración avanzada de la instalación
- Colas
- Alertas
- Implementación
- Depósitos de almacenamiento
- Autorización
- Load balancer
- Almacén de contraseñas
- Autenticación de Azure AD
- Registros
- Webhooks
- Adaptabilidad
- Insights
- Análisis
- Grabación multimedia
- Paginación
- Desencadenadores
- Otros
- SecureAppSettings
Clave de cifrado
Azure.KeyVault.ClientId
Azure.KeyVault.CertificateThumbprint
Azure.KeyVault.VaultAddress
- Configuración del servidor de identidad
- Inicio de sesión único
- Integración
- Tokens de acceso de aprovisionamiento de UiPath Robots
- Configuración de registro
- Registros de robot
- Registros de programación
- Registros de supervisión
- Registros de excepciones empresariales
- Otros registros
- Ajustes adicionales
- Búsqueda elástica
- Configuración del índice
- Registrar eventos en la base de datos
- Habilitar la depuración de NLog