orchestrator
2020.10
false
Wichtig :
Bitte beachten Sie, dass dieser Inhalt teilweise mithilfe von maschineller Übersetzung lokalisiert wurde.
UiPath logo, featuring letters U and I in white
Kein Support
Orchestrator-Anleitung
Automation CloudAutomation Cloud Public SectorAutomation SuiteStandalone
Last updated 12. Dez. 2023

Orchestrator-Protokolle

Orchestrator-Diagnoseprotokolle

Dies sind Diagnoseprotokolle, die von UiPath Orchestrator in Bezug auf dessen Verhalten erzeugt werden.

Aktivierung der UiPath-Orchestrator-Diagnoseprotokolle

Die UiPath-Orchestrator-Diagnoseprotokolle sind aktiviert, sobald UiPath Orchestrator erfolgreich installiert ist. Sie hängen von der NLog-Infrastruktur ab, und deren Konfiguration findet sich in der Datei UiPath.Orchestrator.dll.config unter dem Tag <nlog>.
Hinweis: Bitte berücksichtigen Sie, dass beide Serverausnahmen von Orchestrator und der Stacktrace im Fenster Jobdetails (Job Details) unabhängig von der vom Benutzer gewählten Sprache in englischer Sprache angemeldet werden.

Ziele der UiPath-Orchestrator-Diagnoseprotokolle

Alle Anwendungsprotokolle werden in der Ereignisanzeige auf der untersten Protokollierungsstufe Information protokolliert. Dies wird in den folgenden Zeilen der Datei UiPath.Orchestrator.dll.config angegeben:

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

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

Protokolle, die vom Jobplaner erzeugt werden, haben ein separate Ziele und Protokollierungen:

<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" />

Beispiel:

  • Quartz-Auftrag konnte nicht erstellt werden.

Protokolle, die von Geschäfts- und anderen Validierungsregeln generiert werden, haben separate Ziele und Protokollierungen:

<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" />

Diese Arten von Fehlermeldungen werden in den folgenden Fällen in der Ereignisanzeige protokolliert:

  • Validierungsprobleme wie zum Beispiel:

    • Ungültiger Benutzername/E-Mail-Adresse oder Kennwort.
    • Der Maschinenname „DOC“ ist bereits vergeben.
  • Geschäftskonflikte wie zum Beispiel:

    • Lizenz abgelaufen!
    • Die Sitzung des Floating-Roboters ist bereits auf Maschine ROQADOCS06 aktiv!
    • Die Roboter haben bereits anstehende Aufträge für diesen Prozess
  • Keine Ausnahmen gefunden wie:

    • WarteschlangenName1 ist nicht vorhanden.

Orchestrator-Ausführungsprotokolle

Die Orchestrator-Ausführungsprotokolle werden von den verbundenen Robotern gesendet und im Abschnitt Protokolle der Seiten Aufträge oder Roboter angezeigt. Die Anwendung empfängt die Daten von den Robotern, fügt eigene Parameter (TenantID, FolderID) hinzu und leitet die Nachrichten an verschiedene Ziele weiter, so wie im Abschnitt <nlog> der Datei UiPath.Orchestrator.dll.config angegeben.

Ziele der Orchestrator-Ausführungsprotokolle

Standardmäßig werden alle Roboterprotokolle in die Tabelle Protokolle (Logs) der Standarddatenbank von Orchestrator gesendet, in der UiPath Orchestrator andere Informationen speichert, aber die Datei UiPath.Orchestrator.dll.config kann so konfiguriert werden, dass sie auch in eine andere Datenbank geschickt werden.

Die Seite Protokolle (Logs) zeigt Informationen aus der Tabelle Protokolle (Logs) von der Standarddatenbank an. Wenn also dieser Abschnitt nicht existiert oder die Protokolle in einer anderen Datenbank gespeichert werden, ist die Seite leer. Alle Parameter sollten gemäß dem Tabellenschema, das wie folgt aussieht, vorliegen:

<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" />
Andere Ziele können zu den Protokollen durch Konfigurieren der Datei UiPath.Orchestrator.dll.config hinzugefügt werden. Eine Liste der verfügbaren Ziele finden Sie hier.

Elasticsearch-Server

Standardmäßig gibt es ein Elasticsearch-Ziel, das aus dem Installationsskript konfiguriert wurde. Der Index unterscheidet sich bei jedem Mandanten, aber die kann aus dem angegebenen Ziel im Abschnitt <nlog> konfiguriert werden:
<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>

X-PACK-Authentifizierung

Orchestrator unterstützt die X-PACK-Authentifizierung für ElasticSearch. Um diese zu aktivieren, müssen Sie die Zeile requireAuth="true" username="XPACKuser" password="p@$$w0rd" im folgenden Abschnitt der Datei UiPath.Orchestrator.dll.config hinzufügen:
<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>

Der Abschnitt sollte folgendermaßen aussehen:

<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>

War diese Seite hilfreich?

Hilfe erhalten
RPA lernen – Automatisierungskurse
UiPath Community-Forum
Uipath Logo White
Vertrauen und Sicherheit
© 2005–2024 UiPath. Alle Rechte vorbehalten