- 基本情報
- 要件
- ベスト プラクティス
- インストール
- 更新
- Identity Server
- 起動エラーのトラブルシューティング
UiPath.Orchestrator.dll.config
UiPath.Orchestrator.dll.config
ファイル (C:\Program Files (x86)\UiPath\Orchestrator
) は、Orchestrator デプロイに適用するパラメーターや設定を定義します。
-
このファイル内のパラメーターへの変更はアップグレード時にすべて上書きされます。
-
これらのパラメーターの値は管理者のみが変更してください。
-
UiPath.Orchestrator.dll.config
に対して変更を行った後は、Web サイトを手動で再起動することをお勧めします。 -
このページに記載されていないパラメーターは、変更してはならないものであるか、または [設定] ページに対応するものが記載されています。
-
すべてのパラメーターは、大文字と小文字を区別します。
EncryptionKeyPerTenant.Enabled
Microsoft Azure Key Vault アカウントに基づき、テナントごとに異なる暗号化キーを使用できます。次の値を設定できます。
false
- Orchestrator インスタンス全体で 1 つの暗号化キーを使用します。これが既定値です。true
- テナントごとに異なる暗号化キーを使用します。テナントのセキュリティを強化し、機密データをより適切に分離します。
EncryptionKeyPerTenant.KeyProvider
パラメーターも設定する必要があります。
EncryptionKeyPerTenant.KeyProvider
AzureKeyVault
に設定します。UiPath では Azure Key Vault ライセンスを提供していません。「セキュリティで保護されたアプリ設定」セクションで説明しているパラメーターも設定する必要があります。EncryptionKeyPerTenant.Enabled
を false
に設定すると、このパラメーターは使用されなくなります。
ここで行った暗号化の設定に対する変更は、Identity Server の appsettings.Production.json ファイルにも同様に反映させる必要があります。対応するフィールドの組み合わせは以下のとおりです。
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 |
Azure.KeyVault.DirectoryId |
AzureKeyVaultDirectoryId |
EncryptionKeyPerTenant.KeyProvider |
MultiTenantEncryptionKeyProvider |
inProgressMaxNumberOfMinutes
キュー アイテムが [処理中] のステータスを保てる最長時間です。この時間が経過した後は、キュー アイテムのステータスが [破棄済み] に変わります。既定では、この値は 1,440 分 (24 時間) に設定されています。
QueuesStatisticsScheduleCron
[ダッシュボード]、[トランザクション] ページ、および [グラフ] ウィンドウでキュー アイテムの統計を更新する頻度です。既定では、毎分更新します。
UpdateUncompletedItemsJobCron
ステータスを [破棄済み] に移行する必要があるキューをデータベースで検索する頻度です。既定では、このパラメーターは毎時に設定されています。
Queue.MaxSlaInMinutes
UiPath.Orchestrator.dll.config
に表示されます。
Queue.MaxSchemaFileSizeInKilobytes
UiPath.Orchestrator.dll.config
ファイルに表示されません。
Queue.SlaReadaheadTimeLimitHours
UiPath.Orchestrator.dll.config
に表示されません。
Queue.MaxSpecificDataSizeInKiloBytes
新しいキュー アイテムの固有データの内容の最大サイズ (KB)。Orchestrator のクリーン インストールの場合、このパラメーターは表示されず、既定値の 1024 (1MB) が設定されます。アップグレードのシナリオではこのパラメーターが表示され、値は 204800 (200MB) に設定されます。
Queue.ProcessActivationSchedule
未処理のキュー アイテムのチェック間隔です。既定では、この値は 30 分に設定されています。チェック間隔を調整するには、0 から 59 の値を指定し、IIS を再起動します。その後、既存のキュー トリガーを削除してから、再作成します。
DailyAlertMailJobCron
毎日のメール アラートの送信時刻を制御する cron 式を設定できます。これはメール アラートが有効な場合にのみ機能します。レポートには前日に生成された重要度が Fatal および Error のすべてのアラートが含まれます。既定では、毎日午前 7 時に送信されます。
Alerts.Email.Enabled
false
に設定されています。正常に機能させるためには、メール関連の設定についても [設定] ページから構成する必要があります。この既定値は、データベースの初期シーディングで使用されます。後で値を変更しても、メール アラートは切り替えられません。
NotificationDistributerJobCron
アラート通知がインターフェイスに送信される頻度です。既定では、アラートは 10 秒ごとに送信されます。
PeriodicErrorMailJobCron
定期的なメール アラートの送信頻度を制御する cron 式を設定できます。これはメール アラートが有効な場合にのみ機能します。既定値は 10 分ごとです。これは、過去 10 分間に生成された、重要度が Fatal および Error のアラートがレポートに含まれることを意味します。アラートが 1 つも生成されなかった場合、レポートは送信されません。
PasswordComplexity
パスワードの複雑さの検証ルールを制御し、正規表現で表されます。既定では、複雑さはすべてのパスワード (host admin のパスワードも含む) に適用されていますが、テナントごとに [設定] ページの [セキュリティ] タブでユーザーのログイン パスワードの複雑さをカスタマイズすることができます。既定では、パスワードは 8 文字以上にする必要があり、1 文字以上の英字と 1 文字以上の数字を含める必要があります。
SystemJobs.DetectNotRespondingRobots.MaxAlertCount
UiPath.Orchestrator.dll.config
ファイルの他のすべてのアラート パラメーターに <add key="SystemJobs.DetectNotRespondingRobots.MaxAlertCount" value="10" />
を追加します。この設定を適用して、アラートの合計数が設定したアラート数を超えた場合、イベント ビューアーにアラートが表示されます (例: 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
です。すなわち、メール アラートを6回、ライセンスの有効期限日の 180 日、90 日、30 日、14 日、7 日、および 1 日前に受信します。設定値を減らせば、メール アラートの頻度を少なくすることができます。そのためには、たとえば UiPath.Orchestrator.dll.config
ファイルに次のキーを追加します: <add key="SystemJobs.LicenseExpirationAlert.DaysBefore" value="90,30,14" />
。
Storage.Type
パラメーターと Storage.Location
パラメーターで指定された場所に保存されます。
Storage.Type
パッケージまたは実行メディアが保存されるターゲットを定義します。次のターゲットで設定できます。
File System
-<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
パッケージと実行メディアが保存される実際の場所を定義します。
Storage.Location
パラメーターが必須です。
- Orchestrator の 2020.10 よりも前のバージョンからのアップグレードであり、かつ
- 以前の
NuGet.Repository.Type
がLegacy
であり、かつ - 以前の
NuGet.Packages.Path
で既定値を使用していなかった場合
ターゲット |
場所 |
---|---|
ファイルシステム |
次のフォーマットで絶対パスを指定します:
RootPath=C:\FolderName\AnotherFolderName
例:
<add key="Storage.Location" value="RootPath=C:\FolderName\AnotherFolderName" /> 指定したフォルダー内に、次のフォルダー構造が作成されます: Orchestrator-Host\Libraries - ホスト フィードに保存されるライブラリ専用の 1 つのフォルダー
Orchestrator-[tenantKey] - テナントごとに 1 つのフォルダー。テナントは、データベースに格納されたテナント キー、たとえば Orchestrator-12ab1234-a567-456b-a12b-ab3456b123ab のようなもので識別されます。
各テナント フォルダーには、その他に次の 3 つのサブディレクトリが作成されます。
ファイルは、指定した場所の専用フォルダーに保存されます。既定では、次のパスに保存されます:
C:\Program Files (x86)\UiPath\Orchestrator\Storage
|
Azure |
接続文字列を指定します。 例:
<add key="Storage.Location" value="DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net" /> |
Amazon |
接続文字列を指定します。 例:
<add key="Storage.Location" value="EndpointRegion=eu-west-3;accessKey=AKIAZGUEIGXUJ3BBI4MW;secretKey=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;useHttp=false" /> |
MinIO |
接続文字列を指定します。 例:
<add key="Storage.Location" value="host=localhost:9001;accessKey=YVKYFJ0ZY246KDKP0634;secretKey=bdBEk2ubhIFsTNPuQ80PjKL+oqZBj67HoSWBFnw1" /> |
例
<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\" />
上記の設定は、Orchestrator に次のことを実行するように命令します。
- パッケージのメタデータを SQL サーバーのデータベースに格納する。
DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net
接続文字列で使用された場所にある Azure Blob ストレージに実際のファイルを保存する。-
既定の命名規則により、Azure コンテナー名を付ける -
Orchestrator-tenantKey
。重要: Orchestrator のテナント数 99 を上回る場合には、既定の AWS S3 バケットアカウントの制限値をテナント数に合わせて増やしてください。バケットはテナントごとに個別に作成されるため、この手順が必要です。
NuGet.Packages.ApiKey
NuGet.Activities.ApiKey
の値と同じにする必要があります。この既定値は、データベースの初期シーディングで使用されます。任意の文字列も受け入れられます。
NuGet.Activities.ApiKey
NuGet.Packages.ApiKey
の値と同一にする必要があります。任意の文字列も受け入れられます。
複数の Orchestrator ノードとインターフェイス間のパッケージ同期は、ファイル システムを監視するか、Redis を使用することで実行できます。これは、以下の設定を使用して構成できます。Redis の使用を推奨します。
Processes.AllowUpdateWithRunningJobs
プロセスと関連付けられている実行中または保留中のジョブがある場合に、プロセスを削除できるようにするかどうかを指定します。このパラメーターは既定では非表示です。次の値を使用できます。
true
- プロセスと関連付けのあるジョブが実行中または保留中である場合でも、プロセスを削除できます。false
- 実行中または保留中のジョブに関連付けられているプロセスは削除できません。この場合、プロセスを削除しようとすると、「アクティブなジョブが関連付けられているため、このプロセスを変更することはできません。(#1666)」というエラー メッセージが表示されます。これは既定値です。
<add key="Processes.AllowUpdateWithRunningJobs" value="true" />
を UiPath.Orchestrator.dll.config
ファイルに追加します。
Deployment.Libraries.AllowTenantPublish
ホスト フィードを使用するテナントにそのフィードへのライブラリのアップロードを許可するかどうかを指定できます。次の値を使用できます。
true
- テナント レベルでアップロードされたライブラリは、ホスト フィードにプロパゲートされます。これは既定値です。false
- テナント レベルでアップロードされたライブラリは、ホスト フィードにプロパゲートされません。ただし、ユーザーはフィード内の既存のライブラリにはアクセスできます。
これはユーザー インターフェイスからも設定できます。対応するオプション [テナント ユーザーによるフィードへのアップロードを許可] は、ホスト レベルの [設定] ページにあります。
Buckets.ContentSecurityPolicy
UiPath.Orchestrator.dll.config
ファイルに表示されません。
Buckets.AvailableProviders
ストレージ バケットの作成時に使用できるプロバイダーを制御するために使用します。利用可能なプロバイダーは、Orchestrator、Amazon、Azure、Minio、S3 互換ストレージ プロバイダー、およびファイル システムです。複数の値はコンマで区切って入力できます。
UiPath.Orchestrator.dll.config
ファイルに表示されず、プロバイダー Orchestrator
、Amazon
、Azure
、Minio
、S3Compatible
のみが選択されています。既定の挙動は、クリーン インストールとアップグレードの両方に対して適用されます。キーが表示されている場合、利用可能なプロバイダーは Buckets.AvailableProviders
の値として指定したもののみに限定されます。
例: ストレージ バケット プロバイダーとして Orchestrator、Amazon、Azure のみを使用するには、次のキーを追加します。
<add key="Buckets.AvailableProviders" value="Orchestrator,Amazon,Azure" />
<add key="Buckets.AvailableProviders" value="Orchestrator,Amazon,Azure" />
Buckets.FileSystem.Allowlist
Buckets.FileSystem.Allowlist
に追加して、フォルダーまたはネットワーク共有のリストへのアクセスを明示的に許可する必要があります。
|
記号で区切って入力できます。パスは完全修飾パスで、ルートにドライブを含むか、UNC パスである必要があります (例: c:\
、c: est
、\\servershare\shared
)。それぞれのパスは、すべてのバケットに使用できるプレフィックスです。バケットは、この特定のパス、またはそのサブパスで作成できます。
Buckets.FileSystem.Allowlist
の設定を使用して FileSystem の許可リストを作成すると、セキュリティに関する影響があるため、作業を続行する前に「FileSystem ストレージの許可リストを安全に使用する」を参照することを強くお勧めします。
WindowsAuth.GroupMembershipCacheExpireHours
1
で、ディレクトリ グループ メンバーシップに加えられた変更は、アクティブなユーザー セッションに対して 1 時間ごとに Orchestrator と同期されます。
AcceptedRootUrls
,
) で区切ります (例: "https://server1,https://server2"
)。
Auth.Cookie.Expire
自動的にログオフされるまでの時間 (分) です。既定では、この値は 30 分に設定されています。
Auth.Bearer.Robot.Expire
ロボットのベアラー トークンの期限が切れるまでの時間です。既定では、この値は 30 分に設定されています。
Auth.Cookie.ValidateInterval
60
秒に設定されています。既定では、このパラメーターは UiPath.Orchestrator.dll.config
ファイルに表示されません。たとえば、20 秒に設定する場合は、キー <add key="Auth.Cookie.ValidateInterval" value="20"/>
を追加します。
Auth.DisabledPermissions
<add key="Auth.DisabledPermissions" value="Machines.Delete,Libraries.Delete" />
を追加します。
Auth.RememberMe.Enabled
true
に設定され、チェック ボックスは表示されるようになっています。非表示にするには、false
に設定してください。既定では、この設定は UiPath.Orchestrator.dll.config
ファイルに表示されません。
Auth.AllowChangePassword
UiPath.Orchestrator.dll.config
ファイルに表示されません。利用可能な値は true
(既定値) と false
です。
Auth.AllowSelfEmailUpdate
true
に設定されています。これは更新できることを意味します。フィールドを読み取り専用にするには、パラメーターを false
に設定します。既定では、この設定は UiPath.Orchestrator.dll.config
ファイルに表示されません。
ExternalAuth.AccessTokenAuth.Enabled
UiPath.Orchestrator.dll.config
ファイルに表示されません。次の値を使用できます。
true
- ユーザーは、Auth0 によって発行されたアクセス トークンを使用して認証済み要求を行うことができます。このトークンによる要求は、ExternalAuth.AccessTokenAuth.Audience
パラメーターに有効なオーディエンスを設定した場合にのみ考慮されます。false
- ユーザーは、Auth0 によって発行されたアクセス トークンを使用して認証済み要求を行うことはできません。これが既定値です。
ExternalAuth.AccessTokenAuth.Audience
<add key="ExternalAuth.AccessTokenAuth.Audience" value="https://cloud.uipath.com" />
を追加する必要があります。既定では、この設定は UiPath.Orchestrator.dll.config
ファイルに表示されません。
ExternalAuth.ShowPII
<add key="ExternalAuth.ShowPII" value="true" />
を追加することで Orchestrator の PII の表示を許可します。このキーは既定では UiPath.Orchestrator.dll.config
に表示されず、既定の動作では PII の表示が許可されていません。
RestrictBasicAuthentication
Identity Server の appSettings.json に移動されました。
EnableBasicAuthenticationForHostTenant
Identity Server の appSettings.json に移動されました。
この設定は、ロード バランサーを使用している場合にのみ変更してください。
LoadBalancer.UseRedis
false
に設定されています。
LoadBalancer.Redis.ConnectionString
LoadBalancer.UseRedis
が true
に設定されている場合にのみ使用できます。Redis サーバーを設定できるようにするための接続文字列です。サーバーの URL、パスワード、Redis が使用するポートを含みます。すべての HAA クラスター ノードを接続文字列に追加する必要があります。
また、Orchestrator ノードと Redis サービスの間で SSL 暗号化接続を有効化することもできます。詳しくは、こちらをクリックしてください。例:
- SSL が有効な場合 -
<add key="LoadBalancer.Redis.ConnectionString" value="10.10.20.184:10000,10.10.24.148:10000,10.10.22.114:10000,password=12345678,ssl=true" />
- SSL が有効でない場合 -
<add key="LoadBalancer.Redis.ConnectionString" value="10.10.20.184:10000,10.10.24.148:10000,10.10.22.114:10000,password=12345678" />
Plugins.SecureStores
\Orchestrator\Plugins
フォルダーにあります。以下に例を示します。
- 単一のストアを使用する場合:
<add key="Plugins.SecureStores" value="UiPath.Orchestrator.CyberArk.dll"/>
-
複数のストアを使用する場合:
<add key="Plugins.SecureStores" value="UiPath.Orchestrator.CyberArk.dll,UiPath.Orchestrator.SecureStore.CyberArkCCP.dll,UiPath.Orchestrator.AzureKeyVault.SecureStore.dll"/>
注: 既存の CyberArk 連携を使用して Orchestrator インスタンスをアップグレードする場合、この設定には CyberArk プラグインが事前に入力されています。他のすべてのインストールでは、設定値は既定で空になっています。
Plugins.SecureStores.CyberArk.CLIPasswordSDKExePath
CLIPasswordSDK64.exe
を検索できるようにします。たとえば、D:\CustomFolder\
が CyberArk インストール ディレクトリである場合は、キー <add key="Plugins.SecureStores.CyberArk.CLIPasswordSDKExePath" value="D:\CustomFolder\CLIPasswordSDK64.exe"/>
を追加する必要があります。このアプリの設定の既定値は C:\Program Files (x86)\CyberArk\ApplicationPasswordSdk\CLIPasswordSDK64.exe
です。
Plugins.SecureStores.CyberArk.UsePowerShellCLI
false
です。有効化するには、キー <add key="Plugins.SecureStores.CyberArk.UsePowerShellCLI" value="true"/>
を追加します。
Active Directory 認証の設定は、インストール後に Orchestrator の管理ポータルから行います。
詳しい手順については、「Active Directory 統合を構成する」のページをご覧ください。
Logs.RobotLogs.ReadTarget
database
、robotelasticbuffer
など)。
RobotsLogs.Flush.Interval
UiPath.Orchestrator.dll.config
に表示されておりませんのでご注意ください。指定しなかった場合の値は 0 秒です。以下の例では、フラッシュ間隔を 60 秒間に設定する方法を示します。これはつまり、Robot が 60 秒ごとにサーバーにログを送信するということです。
<add key="RobotsLogs.Flush.Interval" value="60" />
<add key="RobotsLogs.Flush.Interval" value="60" />
RobotsLogs.Flush.BatchSize
UiPath.Orchestrator.dll.config
に表示されません。特に指定しない限り、この値は 100 件のログ メッセージ エントリです。つまり、ロボットは 100 件のログのバッチをサーバーに送信します。
<add key="RobotsLogs.Flush.BatchSize" value="100" />
<add key="RobotsLogs.Flush.BatchSize" value="100" />
Logs.RequestAbortedLogBehavior
実行中の操作のキャンセル時にスローされるキャンセル例外のログ動作を指定します。これらの例外は、あるボタンをクリックしてその操作が実行される前に別のボタンをクリックしたときなどに生成されます。このパラメーターは既定では非表示です。次の値を使用できます。
Ignore
- すべてのキャンセル例外は、対応する要求が中止されると無視されます。これが既定値です。Info
- キャンセル例外は、Info 重要度レベルでログされます。None
- キャンセル例外は、Error 重要度レベルでログされます。
<add key="Logs.RequestAbortedLogBehavior" value="Ignore" />
を設定ファイルに追加します。
Logs.Elasticsearch.SharedIndex
index
パラメーターに使用される値と同じ値に設定する必要があります。たとえば、<add key="Logs.Elasticsearch.SharedIndex" value="robotlogs" />
です。詳しくは、こちらをご覧ください。このパラメーターは既定では非表示です。
Logs.Elasticsearch.EnableFolderIdFilter
true
に設定されています。つまり、ログは非表示になります。ログを表示するには、次のように false
に設定します。<add key="Logs.Elasticsearch.EnableFolderIdFilter" value="false" />
Logs.Elasticsearch.Username
Elasticsearch でログを読み取るために必要なユーザー名です。このパラメーターは、Elasticsearch 認証が有効で、NLog ターゲットを使用しない場合にのみ設定する必要があります。このパラメーターを設定するときは、その値が Elasticsearch サーバーの設定と一致することを確認してください。詳細については「X-PACK 認証」をご覧ください。
Logs.Elasticsearch.Password
Elasticsearch でログを読み取るために必要なユーザー名です。このパラメーターは、Elasticsearch 認証が有効で、NLog ターゲットを使用しない場合にのみ設定する必要があります。このパラメーターを設定するときは、その値が Elasticsearch サーバーの設定と一致することを確認してください。詳細については「X-PACK 認証」をご覧ください。
Logs.Elasticsearch.OAuthEnabled
true
に設定して OAuth2 を有効化し、ユーザー名とパスワードのシステムに代わるものとして、トークンベースの認証メカニズムを Elasticsearch でのロボット ログの読み取りに使用します。既定では、このパラメーターは false
に設定されています。
OAuth 認証を有効化する場合でも、既定の認証方法と同様に、ユーザー名とパスワードを指定する必要があります。初期のトークンがそれらの資格情報に基づいて生成されるからです。
Elasticsearch での OAuth2 認証の設定方法の詳細については、「OAuth2 Authentication (OAuth2 認証)」をご覧ください。
Logs.Elasticsearch.OAuthExpireInSeconds
Elasticsearch でのロボット ログの読み取りに使用されるアクセス トークンの有効期限が切れ、更新されるまでの時間 (秒) を設定できます。既定の推奨値は 1200 秒 (20 分)、最大値は 3600 秒 (60 分) です。トークンを無効にするために、Orchestrator UI で利用可能な専用のボタンを使用できます。
Logs.Elasticsearch.OAuthEnabled
が true
に設定されており、Elasticsearch サーバーが適切に構成されていることを確認してください。詳細については、「OAuth2 Authentication (OAuth2 認証)」をご覧ください。
Logs.Elasticsearch.DisableProductCheckStatus
true
に設定する必要があります。
false
です。
disableProductCheckStatus
と組み合わせて使用できます。こちらのパラメーターも、既定では非表示で、既定値は false
です。この機能を有効化するには、こちらも true
に設定する必要があります。
Webhook の設定は、Webhook サービスの appsettings.json ファイルに移動しました。
Scalability.Heartbeat.PeriodSeconds
30
秒に設定されています。
Scalability.Heartbeat.FailureThreshold
4
に設定されています。つまり、ハートビートの失敗が 2 分間続くと (4 回 x 30 秒)、ロボットは応答なしとフラグ付けされます。
Scalability.SignalR.Enabled
true
に設定されています。このパラメーターは、データベースの初期シーディングで使用されます。インストール後に変更を加えるには、テナントまたはホスト レベルの [設定] ページを使用します。
Scalability.SignalR.Transport
Orchestrator の SignalR チャネルに接続するために使用するトランスポート プロトコルを指定します。これに属するのは次の値です (任意の組み合わせ - ビット論理和):
- WebSocketTransport = 1
- ServerSentEventsTransport = 2
- LongPollingTransport = 4
- 既定値: 7 (WebSocketTransport | ServerSentEventsTransport | LongPollingTransport)
このパラメーターは、データベースの初期シーディングで使用されます。インストール後に変更を加えるには、テナントまたはホスト レベルの [設定] ページを使用します。
Scalability.AzureSignalR.ConnectionString
各種ロボットと SignalR Service 間の直接通信を容易にするために Azure SignalR Service を有効化できるようにします。
Scalability.AzureSignalR.ConnectionCount
キーと組み合わせて使用できます。このパラメーターは UiPath のクラウド製品で有効化されます。既定では、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
です。例: <add key="Scalability.AzureSignalR.ConnectionCount" value="7" />
この設定は既定では表示されず、Scalability.AzureSignalR.ConnectionString
キーなしでは使用できません。
Scalability.SignalR.RequireStickySessions
true
に設定すると、すべてのトランスポートが有効化され、Orchestrator はロード バランサーで固定セッションが有効化されているものと見なします。固定セッションをロード バランサーで有効化せずに、UiPath.Orchestrator.dll.config
で有効化すると、SignalR 接続が失敗します。
Telemetry.Enabled
問題の診断および Orchestrator の改善を目的として UiPath が使用する、使用状況とパフォーマンスに関するデータの収集を有効化/無効化します。UiPath プライバシー ポリシーのプラクティスについては、プライバシー ステートメントをご覧ください。次の値を使用できます。
true
- テレメトリ機能は有効です。これが既定値です。false
- テレメトリ機能は無効です。
こちらの説明にあるように、パフォーマンスや使用状況のデータ収集オプションのオン/オフは、Orchestrator インスタンスをインストールまたは更新するときにも設定できます。
MediaRecording.Enabled
false
に設定すると、レコーディング機能が無効化されます。既定では true
に設定されており、この機能は有効化されています。ファイル ストレージは、パラメーター Storage.Type
および Storage.Location
を使用して設定されます。
Pagination.Limits.Enabled
true
に設定されます。ページネーション パラメーターで、API エンドポイントのすべての呼び出しについて、既定の $top
の値を追加します (例: odata/Users
)。
Triggers.DisableWhenFailedCount
Triggers.DisableWhenFailedCount
で実行の失敗回数を調整できます。また、Triggers.DisableWhenFailingSinceDays
で日数を変更することもできます。既定では、Triggers.DisableWhenFailedCount
の値は 10 で、Triggers.DisableWhenFailingSinceDays
の値は 1 です。つまり、過去 1 日のうちに起動に 10 回失敗し、一度も正常に実行されなかった場合には、トリガーが無効化されます。
Triggers.DisableWhenFailedCount
を 0 に設定する必要があります。
トリガーの起動に 10 回連続で失敗し、過去 24 時間以内に正常に起動されていない場合、トリガーは自動的に無効化されます。
Triggers.JobsCountStrategy
トリガーを通じて開始されたジョブのカウント方法を選択できます。既定では非表示です。次のオプションを使用できます。
PerProcess
(プロセスごと) - トリガーが必要数のジョブを開始するときに、指定したプロセスで保留中のジョブの数が考慮されます。たとえば、同じプロセスに対して定義された 2 つのトリガーが、それぞれ 3 個のジョブと 5 個のジョブを開始するよう設定されているとします。ある時点で 1 つ目のトリガーにより 3 個のジョブが開始された場合、2 つ目のトリガーが実行されるときには、必要なジョブ数 (5 個) に達するように 2 個のジョブが開始されます。このストラテジを使用するには、設定ファイルにキー<add key="Triggers.JobsCountStrategy" value="PerProcess" />
を追加します。これは既定値です。PerTrigger
(トリガーごと) - トリガーが必要数のジョブを開始するときに、同じトリガーによってこれまでに開始された既存のジョブの数が考慮されます。たとえば、あるトリガーがある時点で 9 個のジョブを開始するよう定義されているとします。既に 2 個のジョブが正常に完了している状態でこのトリガーが再び実行されると、必要なジョブ数 (9 個) に達するようにさらに 2 個のジョブが開始されます。このストラテジを使用するには、設定ファイルにキー<add key="Triggers.JobsCountStrategy" value="PerTrigger" />
を追加します。NoLimit
(制限なし) - トリガーが必要数のジョブを開始するときに、既存のジョブや保留中のジョブは考慮されません。たとえば、あるトリガーがある時点で 5 個のジョブを開始するよう定義されているとします。同じトリガーが 2 度目に実行されるときに、さらに 5 個のジョブが開始されます。このストラテジを使用するには、設定ファイルにキー<add key="Triggers.JobsCountStrategy" value="NoLimit" />
を追加します。
QueueTriggers.PendingJobsStrategy
新しいアイテムがキューに追加されたときにトリガーされる追加ジョブの数の計算方法を選択できます。それには、作成するジョブのターゲットとなる最大数から、特定のステートにあるジョブの数を差し引きます。
次のオプションを使用できます。
-
True
- これが既定のオプションです。これは、Orchestrator で、実行中のすべてのジョブのキュー アイテムが [新規] ステータスから既に移行したと見なす場合に最適です。この数値は次のように計算されます。新しく利用可能になるキュー アイテムに基づいて作成される追加ジョブの最大数 = 同時に許可されている保留中および実行中のジョブの最大数 - 保留中ステートのジョブの数。
-
False
- このオプションは、実行中のすべてのジョブのキュー アイテムが [新規] ステータスからまだ移行していないと見なす場合に最適です。この数値は次のように計算されます。新しく利用可能になるキュー アイテムに基づいて作成される追加ジョブの最大数 = 同時に許可されている保留中および実行中のジョブの最大数引く[保留中]、[再開]、[実行中]、[停止中]、[終了中] のいずれかのステートのジョブの数。
PreventAutoRefresh.Enabled
<add key="PreventAutoRefresh.Enabled" value="true" />
キーを追加します。このキーは既定では表示されません。既定値は false
です。つまり、Orchestrator は新しいジョブのそれぞれについて、ページを自動更新します。
PreventAutoRefresh.Enabled
パラメーターに関係なく更新されます。
QueueActivation.TriggerCache.Expiration.Minutes
キュー トリガーが関連付けられているキューに対する、簡易 Quartz トリガーの生成方法を制御します。
0
に設定すると、Quartz トリガーはキューに追加されたアイテムごとに生成されます。- 0 より大きい値に設定すると、システムが既にそのキューに対して作成された Quartz トリガーがないかを確認して、重複して作成されないようにします。キュー トリガーの条件が満たされると、制約は解除されます。キュー トリガーがこれを実行できない場合、
QueueActivation.TriggerCache.Expiration.Minutes
パラメーターに設定された値に応じて、制約が解除されます。 既定値は5
です。
Features.ClassicFolders.Enabled
false
です。つまり、クラシック フォルダーが無効化されており、モダン フォルダーのみを使用できます。このパラメーターは既定では非表示です。
Jobs.TerminatingJobsTimeout
1440
です。つまり、ジョブは少なくとも 1 日ずっと終了中の状態にならないかぎり、[失敗] とマークされることはありません。このパラメーターは既定では非表示です。
Jobs.TerminatingJobsCleanupCron
Jobs.TerminatingJobsTimeout
パラメーターで設定した期間以上、終了中の状態でない限り、[失敗] とマークされることはありません。既定値は、Jobs.TerminatingJobsCleanupCron
が 0 0 0/3 1/1 * ? *
、Jobs.TerminatingJobsTimeout
が 1440
です。つまり、バックグラウンド ジョブが 3 時間に 1 回実行され、1 日以上終了中の状態であったジョブだけが [失敗] に移行します。このパラメーターは既定では非表示です。
PW.StopExploringCron
0 25 * ? * *
です。つまり、バックグラウンド ジョブは 毎時 25 分に実行されます。ユーザーが必要な権限を持っていない場合、検索セッションは終了されます。このパラメーターは既定では非表示です。
Features.LongRunning.Enabled
<add key="Features.LongRunning.Enabled" value="true" />
を追加します。
Tasks.ModuleEnabled
Features.SmartCardAuthentication.Enabled
<add key="Features.SmartCardAuthentication.Enabled" value="true" />
を追加します。
OData.BackwardsCompatible.Enabled
true
に設定されている場合、要求と応答の本文に含まれる特殊文字が解析されます。このパラメーターは既定では非表示で、false
に設定されています。
NotRespondingRobotsJobStartDelay
UiPath.Orchestrator.dll.config
に表示されません。
Upload.Queues.MaxNumberOfItems
15000
です。既定では、このパラメーターは UiPath.Orchestrator.dll.config
に表示されません。
Processes.FilterOutDeleted
Orchestrator によるプロセスの取得方法を最適化できます。最適化は、関連するパッケージが削除された孤立プロセスに対する不要な検証を排除することで実現します。これにより、特に大規模デプロイにおいて、インスタンスの全体的なパフォーマンスが向上します。次の値を使用できます。
false
- パッケージの取得を最適化し、孤立したプロセスに対する検証を実行しません。true
- パッケージ取得を最適化しません。
true
に設定されます。つまり、プロセス取得を最適化しません。
CertificatesStoreLocation
<add key="CertificatesStoreLocation" value="LocalMachine" />
appsettings.Production.json の AzureKeyVaultCertificateStoreLocation
に同じ値が設定されていることを確認してください。
ProxyIntegration.Enabled
UiPath.Orchestrator.dll.config
に表示されず、その値は true
に設定されています。つまり、特に指定しない限りはプロキシ連携が有効化されます。プロキシ連携を無効化するには、<add key="ProxyIntegration.Enabled" value="false"/> を使用します。
資格情報アセットのパスワードの保護に使用される暗号化キーです。ネットワーク ロード バランサーのある環境を使用している場合は、すべてのマシンでこのキーを同一にする必要があります。
EncryptionKeyPerTenant.Enabled
が true
に設定され、EncryptionKeyPerTenant.KeyProvider
が AzureKeyVault
に設定されている場合にのみ使用できます。また、Azure Key Vault のアクセス ポリシーで、キー、シークレット、証明書に関するすべての権限を Orchestrator インスタンスに付与してください。この手順の詳細については、このページをご覧ください。
ae11aa1a-1234-1234-a123-a12a12aaa1aa
形式で記載されています。既定では、この設定は UiPath.Orchestrator.dll.config
ファイルに表示されません。たとえば <add key="Azure.KeyVault.ClientId" value="ae11aa1a-1234-1234-a123-a12a12aaa1aa" />
です。
UiPath.Orchestrator.dll.config
ファイルに表示されません。例: <add key="Azure.KeyVault.CertificateThumbprint" value="1234123412341234123412341234124312341234" />
https://CustomVaultName.vault.azure.net/
形式で記載されています。既定では、この設定は UiPath.Orchestrator.dll.config
ファイルに表示されません。例: <add key="Azure.KeyVault.VaultAddress" value="https://CustomVaultName.vault.azure.net/" />
このセクションには、SSO ログイン、S2S アクセス トークン、およびロボットのプロビジョニングのアクセス トークンの設定が含まれます。
次のパラメーターにより、Identity Server を介した SSO ログインを設定できます。
ExternalAuth.System.OpenIdConnect.Enabled
true
です。
ExternalAuth.System.OpenIdConnect.Authority
https://Orchestrator/Identity
に設定され、Orchestrator
の箇所はお使いの Orchestrator のインストール アドレスとなります。
ExternalAuth.System.OpenIdConnect.ClientId
Identity Server 内で登録されている Orchestrator アプリケーション ID (クライアント ID) を設定できます。この値はインストール時に生成され、Identity Server に保存されます。
ExternalAuth.System.OpenIdConnect.ClientSecret
Orchestrator アプリケーションが外部認証システムで認識されるように、クライアント シークレットを設定できます。この値はインストール時に生成され、Identity Server に保存されます。
ExternalAuth.System.OpenIdConnect.RedirectUri
http://Orchestrator/signinsystemopenidconnect
です。
ExternalAuth.System.OpenIdConnect.PostLogoutRedirectUri
ユーザーが Orchestrator からログアウトした後に、Identity Server がリダイレクトするアドレスです。この値にはお使いの Orchestrator URL が自動的に設定されます。
UiPath.Orchestrator.dll.config
には次のキーが必要です。
<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
です。
IdentityServer.Integration.Authority
https://Orchestrator/Identity
に設定され、Orchestrator
の箇所はお使いの Orchestrator のインストール アドレスとなります。
IdentityServer.Integration.ClientId
Identity Server 内で登録されている S2S アクセス トークンを生成するために使用するアプリケーション ID (クライアント ID) を設定できます。この値はインストール時に生成されます。
IdentityServer.Integration.ClientSecret
Orchestrator S2S アプリケーションが Identity Server で認識されるよう、クライアント シークレットを設定できます。この値はインストール時に生成されます。
IdentityServer.Integration.AccessTokenCacheBufferInSeconds
50
です。
IdentityServer.Integration.UserOrchestratorApiAudience
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" />
<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
です。
UiPath.Orchestrator.dll.config
に次の既存のキーも含まれており、値が true
に設定されていることを確認します。
MultiTenancy.AllowHostToAccessTenantApi
true
に設定すると、ホスト ユーザーが他のテナントの固有データにアクセスできます。既定では、この値は true
に設定されています。
MultiTenancy.TenantResolvers.HttpGlobalIdHeaderEnabled
true
の場合は API 要求のヘッダーのテナント グローバル ID を読み込むことで、Orchestrator がテナントを識別できます。
<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" />
UiPath.Orchestrator.dll.config
キーは <logger name="Robot.*" writeTo="database,robotElasticBuffer" final="true" />
です。Robot によって生成されるログ メッセージを構成するために使用されます。次のパラメーターを構成する必要があります。
-
writeTo
- ロボットが生成したログ メッセージが書き込まれる場所です。次の値を使用できます。database
- ログは Orchestrator の SQL データベースに送られます。これは既定値の 1 つです。-
robotElasticBuffer
- ログは Elasticsearch に送信されます。これは 2 番目の既定値です。これには追加の設定が必要です。詳しくは、こちらをご覧ください。Orchestrator の SQL データベースと Elasticsearch の両方にログを送信することで、否認不可のログを保持できます。この場所へのログの送信を停止するには、これらの値のいずれかを削除します。
final
- ログに記録されたメッセージとロガー名との間に一致が見つかったときに実行する内容を示すフラグ。true
に設定されている場合は、別の一致の検索を行いません。false
に設定されている場合は、同じソースを照合する他のルールが確認されます。既定ではtrue
に設定されています。
UiPath.Orchestrator.dll.config
キーは <logger name="Quartz.*" minlevel="Info" writeTo="eventLogQuartz" final="true" />
です。スケジュールによって生成されるログ メッセージを構成するために使用されます。
quartz.jobStore.clustered
パラメーターも true
に設定してください。
UiPath.Orchestrator.dll.config
キーは <logger name="Monitoring.*" writeTo="monitoring" minlevel="Warn" final="true" />
です。[監視] ページに表示されるエラー ログを設定するために使用されます。このルールを削除または target
を変更した場合、エラー ログは [監視] ページに表示されません。
UiPath.Orchestrator.dll.config
キーは <logger name="BusinessException.*" minlevel="Info" writeTo="businessExceptionEventLog" final="true" />
です。スローされたビジネス例外のログを構成するために使用されます。たとえば、検証の問題 (例: Invalid username
) またはビジネスの競合 (例: License expired
)。
追加の設定について詳しくは、こちらをご覧ください。
Elasticsearch の設定に従って、次の NLog ターゲットの情報を読み込む必要があります。
<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
- ElasticSearch URL です。http://elastic_server:9200
などのプロトコルとポートを含める必要があります。uri="http://elastic-node1:9200,http://elastic-node2:9200,http://elastic-node3:9200"
など、各ノードの Elasticseach URL でこのパラメーターを設定することにより、ロード バランサーの必要性を取り除くことができます。excludedProperties
- Elasticsearch に保存しないデータです。index
- ログ インデックスの形式。テナントごとに一意にすることも、すべてのテナントで共有することもできます。以下の詳細をご覧ください。requireAuth
-true
に設定すると、Orchestrator を Elasticsearch に接続するときに認証が有効化されます。username
- Elasticsearch へのログインに使用するユーザー名を指定します。requireAuth
がtrue
、OAuthEnabled
がfalse
に設定されている場合にのみ、設定する必要があります。password
- Elasticsearch へのログインに使用するパスワードを指定します。requireAuth
がtrue
、OAuthEnabled
がfalse
に設定されている場合にのみ、設定する必要があります。OAuthEnabled
- このパラメーターをtrue
に設定して OAuth2 を有効化し、Elasticsearch の Nlog ターゲットに対してトークンベースの認証メカニズムを使用します。これを初めて有効化するときは、現在のユーザー名とパスワードを指定して初期のトークンを生成する必要があります。このパラメーターが機能するためには、Logs.Elasticsearch.OAuthEnabled
もtrue
に設定されていて、Elasticsearch サーバーが適切に構成されていることを確認する必要があります。詳細については、「X-PACK 認証」をご覧ください。
- 個別インデックス -
index="${event-properties:item=indexName}-${date:format=yyyy.MM}"
各テナントに個別のインデックスが使用されます。これは、あるテナントに固有のログは、一意のテナント識別子に基づいて生成され、検索されることを意味します。この場合、indexName
は、既定でテナント名になります。これが既定の設定です。この場合、ログは月ごとに生成されます。 -
共有インデックス -
index="robotlogs-${date:format=yyyy.MM.dd}"
すべてのテナントに対して 1 つのインデックスが使用されます。つまり、テナントに関係なく、すべてのログで同じインデックスが使用されます。この場合、ログは 1 日ごとに生成されます。共有インデックスを使用するには、UiPath.Orchestrator.dll.config
にキー<add key="Logs.Elasticsearch.SharedIndex" value="robotlogs" />
を追加する必要があります。NLog ターゲットのindex
パラメーターと同じ値に設定してください。重要: 共有インデックスに移行すると、個々のインデックスを使用して生成されたログが保持されます。ただし、個別のインデックスに移行すると、共有インデックスを使用して生成されたログは失われます。
UiPath.Orchestrator.dll.config
の NLog ターゲット構成セクションname="robotElastic" index="robot-logs-${date:format=yyyy-MM}"
。- Orchestrator データベースの
dbo.Settings
テーブルにあるLoggingIndex
レコード。レコードが NLog ターゲット構成のインデックス パターン (robot-logs-${date:format=yyyy-MM}
) と一致していることを確認します。
システム イベント ログをイベント ビューアーではなくデータベースに保存するには、次の手順を実行します。
-
新しいデータベース テーブルを作成します。例:
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)上記のクエリでは、次の列を持つEventLogs
という名前の表を作成します。Id
- 各ログの ID 番号を保持します。ここでは1
で始まり、各ログが追加されるたびに値が増えていきます。Timestamp
- 各イベントがログ記録された時間を保持します。Level
- 各イベントの数値ログ レベルを保持します。Message
- 該当する場合、各イベントのメッセージを保持します。-
Exception
- 該当する場合、各イベントに対してログに記録された例外を保持します。注: 表に任意の名前を使用し、上記のクエリから列を削除するか、ニーズに合わせて他の列を追加できます。
-
UiPath.Orchestrator.dll.config
ファイルで、新しい 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>各データベース列に追加されるデータの対応するparameter
の定義、この例では、@timestamp
、@level
、@message
、@exception
です。 -
最後に、次を追加して、新しく作成されたターゲットを、上記のすべての Orchestrator メッセージの NLog ロガー分類に関連付けます。
<logger name="*" minlevel="Info" writeTo="eventLog,eventLogDatabase" />
<logger name="*" minlevel="Info" writeTo="eventLog,eventLogDatabase" />
NLog は、設定が簡単で拡張性のあるオープンソースのログ プラットフォームで、さまざまな .NET プラットフォームに使用できます。NLog を使用して、ローカル ファイル、イベント ログ、メール、データベースなど、任意の数の事前定義済みターゲットやカスタム ターゲットに、ログ データを格納したり、渡したりすることができます。
Trace
、Debug
、Info
、Warn
、Error
、Fatal
、または Off
を選択できます。Orchestrator で使用可能なレベルについては、「ログ レベル」をご覧ください。
Off
に設定されています。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="">
次の属性の設定が必須です。
-
internalLogLevel
- 望ましいログ レベル -
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="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">
- アプリの設定
- インストールの詳細設定
- キュー
- アラート
- デプロイ
- ストレージ バケット
- 認可
- ロード バランサー
- Password Vault
- Azure AD 認証
- Active Directory の認証
- ログ
- Webhook
- スケーラビリティ
- 分析
- メディア レコーディング
- ページネーション
- トリガー
- その他
- セキュリティで保護されたアプリ設定
暗号化キー
Azure.KeyVault.ClientId
Azure.KeyVault.CertificateThumbprint
Azure.KeyVault.VaultAddress
Azure.KeyVault.DirectoryId
- Identity Server の設定
- シングル サインオン
- 連携
- ロボットのプロビジョニングのアクセス トークン
- ログの構成
- ロボット ログ
- スケジュールログ
- ログの監視
- ビジネス例外ログ
- 他のログ
- その他の設定
- Elasticsearch
- インデックスの構成
- データベースのイベントのログ記録
- NLog のデバッグを有効化する