orchestrator
2020.10
false
Important :
Veuillez noter que ce contenu a été localisé en partie à l’aide de la traduction automatique.
UiPath logo, featuring letters U and I in white
Non pris en charge par l'assistance
Guide de l'utilisateur d'Orchestrator
Automation CloudAutomation Cloud Public SectorAutomation SuiteStandalone
Last updated 12 déc. 2023

Journaux d'Orchestrator

Journaux de diagnostic d'Orchestrator

Il s'agit de journaux de diagnostic générés par UiPath Orchestrator concernant son comportement.

Activation des journaux de diagnostic d'UiPath Orchestrator

Les journaux de diagnostic d'UiPath Orchestrator sont activés une fois UiPath Orchestrator correctement installé. Ils reposent sur l'infrastructure de NLog et leur configuration est disponible dans le fichier UiPath.Orchestrator.dll.config, sous la balise <nlog>.
Remarque : Notez que les exceptions du serveur d'Orchestrator et la pile de trace dans la fenêtre Détails de la tâche (Job Details), sont consignées en anglais, quelle que soit la langue choisie par l'utilisateur.

Cibles des journaux de diagnostic d'UiPath Orchestrator

Tous les journaux des applications sont consignés dans l'Observateur d'événements au niveau de journalisation minimal Information. Ceci est indiqué par les lignes suivantes dans le fichier UiPath.Orchestrator.dll.config :

<target xsi:type="EventLog" name="eventLog" layout="${message}" source="Orchestrator" log="Application" />

<logger name="*" minlevel="Info" writeTo="eventLog" />

Les journaux générés par le Planificateur de tâches (Jobs Scheduler) ont une cible et un enregistreur distincts :

<target xsi:type="EventLog" name="eventLogQuartz" layout="[Quartz] ${message} ${onexception: ${exception:format=tostring}}" source="Orchestrator" log="Application" />

<logger name="Orchestrator.Quartz.*" minlevel="Info" writeTo="eventLogQuartz" />

Exemple :

  • Impossible de créer lʹexécution Quartz.

Les journaux générés par les règles métier et autres règles de validation ont une cible et un enregistreur distincts :

<target xsi:type="EventLog" name="businessExceptionEventLog" layout="${message}${onexception:${exception:format=tostring:maxInnerExceptionLevel=5:innerFormat=tostring}}" source="Orchestrator.BusinessException" log="Application" />

<logger name="BusinessException.*" minlevel="Info" writeTo="businessExceptionEventLog" final="true" />

Ces types de messages d’erreur sont consignés dans l'observateur d’événements dans les cas suivants :

  • les problèmes de validation tels que :

    • Nom d'utilisateur/adresse e-mail ou mot de passe invalide.
    • Le nom de machine DOC est déjà pris
  • les conflits métier tels que :

    • Licence expirée!
    • La session du robot flottant est déjà active sur la machine ROQADOCS06 !
    • Les robots ont déjà des exécutions en attente pour cet objet Process
  • les exceptions non trouvées telles que :

    • NomFileAttente1 n'existe pas.

Journaux d'exécution d'Orchestrator

Les journaux d'exécution d'Orchestrator sont envoyés par les Robots (Robots) qui leur sont connectés et sont affichés dans la section Journaux (Logs) des pages Tâches (Jobs) ou Robots (Robots). L'application reçoit les données provenant des Robots, ajoute ses propres paramètres (IDTenant, IDUnitéOrganisation) et transmet les messages aux différentes cibles, comme indiqué dans la section <nlog> du fichier UiPath.Orchestrator.dll.config.

Cibles des journaux d'exécution d'Orchestrator

Par défaut, tous les journaux du Robot sont envoyés à la table Journaux (Logs) de la base de données par défaut d'Orchestrator, où UiPath Orchestrator enregistre d'autres informations. Toutefois, le fichier UiPath.Orchestrator.dll.config peut également être configuré de manière à les envoyer vers une base de données différente.

La page Journaux (Logs) affiche les informations provenant de la table Journaux (Logs) de la Base de données par défaut (Default Database). Par conséquent, si cette section n'existe pas ou si les journaux sont enregistrés dans une base de données différente, la page est vide. Tous les paramètres doivent être conformes au schéma de table, qui ressemble à ceci :

<target xsi:type="Database" name="database" connectionString="${ui-connection-strings:item=Default}" keepConnection="true">
 <commandText>
  insert into dbo.Logs (OrganizationUnitId, TenantId, TimeStamp, Level, WindowsIdentity, ProcessName, JobKey, Message, RawMessage)
  values (@organizationUnitId, @tenantId, @timeStamp, @level, @windowsIdentity, @processName, @jobId, @message, @rawMessage)
 </commandText>
  <parameter name="@organizationUnitId" layout="${event-properties:item=organizationUnitId}" />
  <parameter name="@tenantId" layout="${event-properties:item=tenantId}" />
  <parameter name="@timeStamp" layout="${date}" />
  <parameter name="@level" layout="${event-properties:item=levelOrdinal}" />
  <parameter name="@windowsIdentity" layout="${event-properties:item=windowsIdentity}" />
  <parameter name="@processName" layout="${event-properties:item=processName}" />
  <parameter name="@jobId" layout="${event-properties:item=jobId}" />
  <parameter name="@message" layout="${message}" />
  <parameter name="@rawMessage" layout="${event-properties:item=rawMessage}" />
</target>
 <logger name="Robot.*" writeTo="database" final="true" /><target xsi:type="Database" name="database" connectionString="${ui-connection-strings:item=Default}" keepConnection="true">
 <commandText>
  insert into dbo.Logs (OrganizationUnitId, TenantId, TimeStamp, Level, WindowsIdentity, ProcessName, JobKey, Message, RawMessage)
  values (@organizationUnitId, @tenantId, @timeStamp, @level, @windowsIdentity, @processName, @jobId, @message, @rawMessage)
 </commandText>
  <parameter name="@organizationUnitId" layout="${event-properties:item=organizationUnitId}" />
  <parameter name="@tenantId" layout="${event-properties:item=tenantId}" />
  <parameter name="@timeStamp" layout="${date}" />
  <parameter name="@level" layout="${event-properties:item=levelOrdinal}" />
  <parameter name="@windowsIdentity" layout="${event-properties:item=windowsIdentity}" />
  <parameter name="@processName" layout="${event-properties:item=processName}" />
  <parameter name="@jobId" layout="${event-properties:item=jobId}" />
  <parameter name="@message" layout="${message}" />
  <parameter name="@rawMessage" layout="${event-properties:item=rawMessage}" />
</target>
 <logger name="Robot.*" writeTo="database" final="true" />
Vous pouvez ajouter d'autres cibles aux journaux en configurant le fichier UiPath.Orchestrator.dll.config. Vous trouverez une liste de cibles disponibles ici.

Serveur Elasticsearch

Par défaut, une cible Elasticsearch est configurée depuis le script d'installation. L'index est différent pour chaque tenant, mais vous pouvez le configurer à partir de la cible spécifiée dans la section <nlog> :
<target name="robotElasticBuffer" xsi:type="BufferingWrapper" flushTimeout="5000">
<target xsi:type="ElasticSearch" name="robotElastic" uri="uritoelasticsearchnode" index="${event-properties:item=indexName}-${date:format=yyyy.MM}" documentType="logEvent" includeAllProperties="true" layout="${message}" excludedProperties="agentSessionId,tenantId,organizationId,indexName" />
</target>
</target><target name="robotElasticBuffer" xsi:type="BufferingWrapper" flushTimeout="5000">
<target xsi:type="ElasticSearch" name="robotElastic" uri="uritoelasticsearchnode" index="${event-properties:item=indexName}-${date:format=yyyy.MM}" documentType="logEvent" includeAllProperties="true" layout="${message}" excludedProperties="agentSessionId,tenantId,organizationId,indexName" />
</target>
</target>

Authentification X-PACK

Orchestrator prend en charge l'authentification X-PACK pour Elasticsearch. Pour activer cette fonctionnalité, vous devez ajouter la ligne requireAuth="true" username="XPACKuser" password="p@$$w0rd" à la section suivante du fichier UiPath.Orchestrator.dll.config :
<target name="robotElasticBuffer" xsi:type="BufferingWrapper" flushTimeout="5000">
        <target xsi:type="ElasticSearch" name="robotElastic" uri="http://elk-test.com" index="${event-properties:item=indexName}-${date:format=yyyy.MM}" documentType="logEvent" includeAllProperties="true" layout="${message}" excludedProperties="agentSessionId,tenantId,indexName" />
</target><target name="robotElasticBuffer" xsi:type="BufferingWrapper" flushTimeout="5000">
        <target xsi:type="ElasticSearch" name="robotElastic" uri="http://elk-test.com" index="${event-properties:item=indexName}-${date:format=yyyy.MM}" documentType="logEvent" includeAllProperties="true" layout="${message}" excludedProperties="agentSessionId,tenantId,indexName" />
</target>

La section doit ressembler à ceci :

<target name="serverElasticBuffer" xsi:type="BufferingWrapper" flushTimeout="5000">
<target xsi:type="ElasticSearch" name="serverElastic" requireAuth="true" username="XPACKuser" password="p@$$w0rd" uri="" index="serverdiagnostics-${date:format=yyyy.MM}" documentType="logEvent" includeAllProperties="true" layout="${machinename} ${message}" />
</target><target name="serverElasticBuffer" xsi:type="BufferingWrapper" flushTimeout="5000">
<target xsi:type="ElasticSearch" name="serverElastic" requireAuth="true" username="XPACKuser" password="p@$$w0rd" uri="" index="serverdiagnostics-${date:format=yyyy.MM}" documentType="logEvent" includeAllProperties="true" layout="${machinename} ${message}" />
</target>

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Uipath Logo White
Confiance et sécurité
© 2005-2024 UiPath Tous droits réservés.