UiPath 製品のインストールとアップグレード

UiPath 製品のインストールとアップグレード ガイド

Web.Config

web.config ファイル (C:\Program Files (x86)\UiPath\Orchestrator) には、Orchestrator を必要に応じて構成するための複数の設定が含まれています。必要なパラメーターの多くは appSettings の下で確認できますが、一部のログ構成はインストール後にも変更できます。

📘

注:

これらのパラメーターの値の変更は管理者のみが行うことが推奨されます。

どのような状況でも web.config の設定を変更できるように、IIS サイトをシャットダウンすることをお勧めします。

Parameters that are not documented in this page should not be changed, or have counterparts in the Settings pages.

すべてのパラメーターは、大文字と小文字を区別します

アプリの設定

インストールの詳細設定

  • DeploymentUrl - NuGet プロトコル (NuGet、MyGet) を使用する Web アプリのアドレスで、このアドレスでパッケージを格納できます。Orchestrator では既定の NuGet パッケージ マネージャーが提供されるため、既定ではこの値は空白です。この値は、Orchestrator をクラスターにインストールする場合にのみ変更してください。正常に機能させるためには、次に示すように requireApiKeyNuGet.Packages.ApiKeyNuGet.Packages.Path の各パラメーターを設定する必要もあります。この既定値は、データベースの初期シーディングで使用されます。
  • Logs.RobotLogs.ReadTarget - Orchestrator がログを読み書きするソースを構成できます (databaserobotelasticbuffer など)。
  • EncryptionKeyPerTenant.Enabled -Microsoft Azure Key Vault アカウントに基づき、テナントごとに異なる暗号化キーを使用できます。次の値を設定できます。
    • false - Orchestrator インスタンス全体で 1 つの暗号化キーを使用します。これが既定値です。
    • true - テナントごとに異なる暗号化キーを使用します。テナントのセキュリティを強化し、機密データをより適切に分離します。この機能を有効にするには、「セキュア アプリ設定」セクションで説明されているパラメーターに加えて、EncryptionKeyPerTenant.KeyProvider パラメーターも設定する必要があります。
  • EncryptionKeyPerTenant.KeyProvider - Orchestrator からテナントごとに生成した暗号化キーを格納するキー管理アプリケーションを指定できます。事前設定した Microsoft Azure Key Vault を使用するには、AzureKeyVault に設定します。当社では、Azure Key Vault ライセンスを提供していません。セキュアアプリ設定」セクションで説明されているパラメーターも設定する必要があります。EncryptionKeyPerTenant.Enabledfalse に設定すると、このパラメーターは使用されなくなります。

ここで行った暗号化の設定に対する変更は、Identity Server の appsettings.Production.json ファイルにも同様に反映させる必要があります。対応するフィールドの組み合わせは以下の通りです。

Orchestrator Web.Config Field

Identity Server appsettings.Production.json Field

EncryptionKeyPerTenant.Enabled

EncryptionKeyPerTenant

Azure.KeyVault.VaultAddress

AzureKeyVaultAddress

Azure.KeyVault.CertificateThumbprint

AzureKeyVaultCertificateThumbprint

Azure.KeyVault.ClientId

AzureKeyVaultClientId

📘

注:

cron ジョブに関する変更を反映させるには、Database.EnableAutomaticMigrations パラメーターをあらかじめ true に設定しておく必要があります。

キュー (Queues)

  • autogenerateStatistics - トランザクション チャートを自動的に生成します。既定では、このパラメーターは true に設定されています。
  • inProgressMaxNumberOfMinutes - キュー アイテムが [進行中] のステータスを保てる最長時間です。この時間が経過した後は、キュー アイテムのステータスが [破棄済み] に変わります。既定では、この値は 1,440 分 (24 時間) に設定されています。
  • QueuesStatisticsScheduleCron - [ダッシュボード] ページ、[トランザクション] ページ、および [チャート] ウィンドウでキュー アイテムの統計を更新する時間です。既定では、毎分更新されます。
  • UpdateUncompletedItemsJobCron - ステータスを [破棄済み] に移行する必要があるキューについてデータベースを検索する時間です。既定では、このパラメーターは毎時で設定されています。
  • Queue.MaxSlaInMinutes - SLA に設定できる最大値 (分単位)。既定では、この値は 129600 分 (90 日) であり、更新シナリオを含め、既定で web.config に表示されます。
  • Queue.MaxSchemaFileSizeInKilobytes - キュー アイテムのデータと出力が検証される JSON スキーマの最大ファイル サイズ (KB)。この設定は、既定では web.config ファイルに表示されません。
  • Queue.SlaReadaheadTimeLimitHours - キュー アイテムが予測に加味されるために必要な締め切りまでの期間。既定値は 24 時間です。既定では、このパラメーターは web.config に表示されません。
  • Queue.MaxSpecificDataSizeInKiloBytes - 新しいキュー アイテムの固有データの内容の最大サイズをキロバイト単位で設定します。Orchestrator のクリーン インストールの場合、このパラメーターは表示されず、既定値の 1024 (1MB) が設定されています。アップグレードのシナリオではこのパラメーターが表示され、値は 2048000 (200MB) に設定されています。

アラート (Alerts)

  • DailyAlertMailJobCron - 毎日のメール アラートの送信時刻を制御する cron 式を設定できます。これはメール アラートが有効な場合にのみ機能します。レポートには前日に生成された重要度が Fatal および Error のすべてのアラートが含まれます。既定では、毎日午前 7 時に送信されます。
  • Alerts.Email.Enabled - Fatal および Error のメッセージのメール アラートを有効化/無効化します。このパラメーターは、[設定] ページの [アラート メールを有効化] チェック ボックスに対応しています。既定では false に設定されています。正常に機能させるためには、メール関連の設定についても [設定] ページから構成する必要があります。この既定値は、データベースの初期シードで使用されます。後で値を変更してもメール アラートは切り替わりません。
  • Alerts.Email.SendTimeoutMs -各メール アラートのタイムアウト時間を設定できます。このパラメーターを使用できるのは、定期的に送信されるエラーのメール アラート、毎日のメール アラート、ライセンスの有効期限のメール アラートです。既定では、このパラメーターは web.config に表示されません。既定値は、5000 ミリ秒です。
  • NotificationDistributerJobCron - アラート通知がインターフェイスに送信される頻度です。既定では、アラートは 10 秒ごとに送信されます。
  • PeriodicErrorMailJobCron - 定期的なメール アラートの送信頻度を制御する cron 式を設定できます。これはメール アラートが有効な場合にのみ機能します。既定値は 10 分ごとです。これは、過去 10 分間に生成された、重要度が Fatal および Error のアラートがレポートに含まれることを意味します。アラートが 1 つも生成されなかった場合、レポートは送信されません。
  • PasswordComplexity - パスワードの複雑度の検証ルールを制御し、正規表現で表されます。既定では、複雑度はすべてのパスワード (ホスト管理者のパスワードも含む) に適用されていますが、各テナントは [設定] ページの [セキュリティ] タブでログイン パスワードの複雑度をカスタマイズできます。既定では、パスワードは 8 文字以上にする必要があり、1 文字以上の英字および 1 文字以上の数字を含める必要があります。
  • SystemJobs.DetectNotRespondingRobots.MaxAlertCount - ロボットが応答しなくなったときに送信されるアラートの数を制限できます。このパラメーターは、Orchestrator インスタンスが非常に多数のロボットを処理し、それらのほとんどが頻繁に応答しなくなる場合に役立ちます。既定では設定ファイルには表示されません。たとえば、応答しないロボットに対して受信するアラートの数を 10 に制限する場合は、web.config ファイルの他のすべてのアラート パラメーターの下に <add key="SystemJobs.DetectNotRespondingRobots.MaxAlertCount" value="10" /> を追加します。この設定を適用すると、アラート合計数が設定したアラート数を超えた場合に、警告がイベント ビューアーに表示されます (例: Alerts not published: total number of unresponsive sessions (21) is bigger than configured max allowed (10).)。
  • SystemJobs.LicenseExpirationAlert.DaysBefore - ライセンスの有効期限日の前にメール アラートを受信する時間間隔を設定できます。既定値は 180,90,30,14,7,1 です。すなわち、メール アラートを 6 回、ライセンスの有効期限日の 180 日、90 日、30 日、14 日、7 日、および 1 日前に受信します。設定値を減らせば、メール アラートの頻度を少なくすることができます。そのためには、たとえば web.config ファイルに次のキーを追加します: <add key="SystemJobs.LicenseExpirationAlert.DaysBefore" value="90,30,14" />

デプロイ

  • NuGet.Repository.Type - NuGet パッケージの保存場所を指定します。次のように設定できます。
    • Legacy - パッケージの同期に FileSystem を使用します。これは更新の既定値です。パッケージとアクティビティはそれぞれ、NuGet.Packages.Path パラメーターと NuGet.Activities.Path パラメーターで指定した場所に保存されます。NuGet.EnableRedisNodeCoordination または NuGet.EnableFileSystemMonitoring とともに使用できます。たとえば <add key="NuGet.Repository.Type" value="Legacy" /> です。
    • Composite - パッケージのメタデータは、検索とフィルターを高速化するために SQL データベースに保存されます。パッケージは Storage.Type パラメーターと Storage.Location パラメーターで指定された場所に保存されます。たとえば <add key="NuGet.Repository.Type" value="Composite" /> です。このパラメーターおよび Storage.TypeFileSystem の設定は、クリーン インストールの既定値です。

📘

注:

NuGet.Repository.TypeComposite に設定されている場合、パッケージ専用フォルダーでのコピー アンド ペースト コマンドの使用はサポートされていません。

  • Storage.Type - 複合シナリオのパッケージと実行メディアが保存されるターゲットを定義します。次のターゲットで設定できます。
    • 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 - 複合シナリオのパッケージが保存される実際の場所と実行メディアが保存される場所を定義します。個別の詳細:
    • FileSystem - RootPath=C:\FolderName\AnotherFolderName 形式で絶対パスを入力します (例: <add key="Storage.Location" value="RootPath=C:\FolderName\AnotherFolderName" />)。入力したフォルダーには、追加で 3 つのサブディレクトリ ExecutionMediaPackagesLibraries.が作成されます。ファイルは、種類に応じて、指定された場所の専用フォルダーに保存されます。既定では、次のパスに格納されます: C:\Program Files (x86)\UiPath\Orchestrator\Storage\Orchestrator-tenantKey (Orchestrator-tenantKey はデータで検出されたテナントのキーです)。たとえば、C:\Program Files (x86)\UiPath\Orchestrator\Storage\Orchestrator-12ab1234-a567-456b-a12b-ab3456b123ab のようになります。
    • 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=\"NuGet.Repository.Type\" value=\"Composite\" />
<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.Path - Legacy シナリオの場合のパッケージ フォルダーへの NuGet パスです。既定では、これは ~/NuGetPackages です。これには仮想パスまたは物理パスを設定できます。
  • NuGet.Packages.ApiKey - お使いの NuGet アカウントのライセンス キーです。アクティビティおよびパッケージが同じ NuGet フィードに格納されている場合、このパラメーターの値を NuGet.Activities.ApiKey の値と同一にする必要があります。この既定値は、データベースの初期シーディングで使用されます。任意の文字列も受け入れられます。
  • NuGet.Activities.Path - Legacy シナリオの場合のアクティビティ フォルダーへの NuGet パスです。既定では、これは ~/NuGetPackages/Activities です。
  • NuGet.Activities.ApiKey - お使いの NuGet アカウントのライセンス キーです。アクティビティおよびパッケージが同じ NuGet フィードに格納されている場合、このパラメーターの値を NuGet.Packages.ApiKey の値と同一にする必要があります。任意の文字列も受け入れられます。
    複数の Orchestrator ノードとインターフェイス間のパッケージ同期は、ファイル システムを監視するか、Redis を使用することで実行できます。これは、以下の設定を使用して構成できます。Redis の使用を推奨します。
  • NuGet.EnableFileSystemMonitoring - true に設定した場合、ファイル システムの常時監視を使用して、パッケージ フォルダーから更新や変更を反映します。false に設定した場合、すべてのノード上のキャッシュ ファイルの同期 (クラスター環境の場合)、またはパッケージ ディレクトリと Orchestrator インターフェイス間の同期 (単一ノード環境の場合) が 60 分ごとに実行されます。既定では、このパラメーターは true に設定されています。
  • NuGet.EnableRedisNodeCoordination - true に設定されると、Orchestrator ノード間のパッケージ キャッシュの同期は、ファイル システム モニタリングではなく Redis を使用して行われます。同期は、パッケージがインターフェイス、API、または Studio のパブリッシュ機能を使用して Orchestrator にアップロードまたは削除されるたびにトリガーされます。Orchestrator パッケージ フォルダーにパッケージ ファイル (.nupkg) を手動でコピーして貼り付けると、すべてのノードのキャッシュ ファイルの同期が 60 分ごとに行われます。この設定が使用されている場合は、Redis のコンポーネントは必須です。このパラメーターを使用する場合は、NuGet.EnableFileSystemMonitoringfalse に設定する必要があります。既定では、このパラメーターは false に設定されています。
  • Processes.AllowUpdateWithRunningJobs - プロセスと関連付けのあるジョブが実行中または保留中である場合に、プロセスの削除を可能にするかどうかを指定します。このパラメーターは既定では非表示です。次の値を使用できます。
    • true - プロセスと関連付けのあるジョブが実行中または保留中である場合でも、プロセスを削除できます。
    • false - 実行中または保留中のジョブに関連付けられているプロセスは削除できません。この場合、プロセスを削除しようとすると、「アクティブなジョブが関連付けられているため、このプロセスを変更することはできません。(#1666)」というエラーメッセージが表示されます。これが既定値です。
      たとえば、プロセスと関連付けのあるジョブが実行中でもプロセスを削除できるようにするには、<add key="Processes.AllowUpdateWithRunningJobs" value="true" />web.config ファイルに追加します。
  • Deployment.Libraries.AllowTenantPublish - ホスト フィードを使用するテナントにそのフィードへのライブラリのアップロードを許可するかどうかを指定できます。次の値を使用できます。
    • true - テナント レベルでアップロードされたライブラリは、ホスト フィードにプロパゲートされます。これが既定値です。
    • false - テナント レベルでアップロードされたライブラリは、ホスト フィードにプロパゲートされません。ただし、ユーザーはフィード内の既存のライブラリにはアクセスできます。

これはユーザーインター フェイスからも設定できます。対応するオプション [テナント ユーザーによるフィードへのアップロードを許可 (Allow Tenant Users to Upload into the Feed)] は、ホスト レベルの [設定 (Settings)] ページにあります。詳細についてはこちらをご覧ください。

ストレージ バケット

  • Buckets.ContentSecurityPolicy - Orchestrator が要求を行うことのできる信頼されたドメイン以外のドメインを、ホワイトリスト登録するために使用します。複数の値はコンマ区切りの一覧として入力できます。このパラメーターは Azure や AWS に関する Orchestrator の設定を上書きするため、必要に応じて Azure および/または AWS も追加するようにします。このパラメーターは既定では web.config ファイルに表示されません。
  • Buckets.AvailableProviders - ストレージ バケットの作成時に使用するプロバイダーを制限するために使用します。利用可能なプロバイダーは OrchestratorFileSystemAmazonAzureMinio です。複数の値はコンマで区切って入力できます。このキーは既定では web.config ファイルに表示されず、既定ではすべてのプロバイダーが利用可能です。

認可

外部認証プロバイダーの設定についての説明は、Identity Server の「外部 ID プロバイダー」ページに移動しました。

📘

注:

[Active Directory] グループをインポートするには WindowsAuth.EnabledWindowsAuth.DomainAcceptedRootUrls の各パラメーターを構成しておく必要があります。

  • WindowsAuth.Enabled - Windows Active Directory のユーザー インポート機能を有効化または無効化します。Windows Active Directory を使用した認証を有効化するには、Identity Server の「外部 ID プロバイダー」ページ内の設定を適用します。
  • WindowsAuth.Domain - Active Directory ユーザーまたは Active Directory グループを追加するとき、ここで指定されているドメインと双方向の信頼関係にあるフォレストのすべてのドメインとサブドメインを使用できます。このパラメーターで指定できるドメインは 1 つだけです。
  • WindowsAuth.GroupMembershipCacheExpireHours - Orchestrator に追加された Active Directory グループのキャッシュが期限切れになるまでの時間 (時間単位)。この設定は既定では web.config ファイルに表示されず、既定値は 1 時間に設定されています。
  • WindowsAuth.ConvertUsersAtLogin - true に設定すると、各ローカル ユーザーが Active Directory の資格情報で最初にログインした後、ディレクトリ ユーザーに変換されます。これに代わる方法として、こちらで説明しているスクリプトを使用して、Active Directory の資格情報でログインしているすべてのローカル ユーザーをディレクトリ ユーザーに変換することも可能です。既定では、このパラメーターは web.config ファイルに表示されません。既定では false に設定されています。
  • WindowsAuth.GroupMembershipFetchStrategy - Switch to a faster strategy for fetching Active Directory group membership. It can be enabled by adding the following key in web.config: <add key="WindowsAuth.GroupMembershipFetchStrategy" value="TokenGroups" />. This parameter is not displayed by default in web.config and the strategy is not enabled by default, implicitly.

🚧

重要

このストラテジはユーザーが単一のドメインに存在しており、グループが入れ子にされている大規模な Active Directory 環境に対して最適です。複数のドメインにまたがっては動作しません。たとえドメイン間に双方向の信頼関係がある場合でも、特定のドメインに属するユーザーが別のドメインの親グループからアクセス権を継承することはできません。

  • AcceptedRootUrls - 信頼できる URL の一覧を追加できます。この設定に属する値がない場合は、誰も Orchestrator にアクセスできません。複数の URL を追加する場合は、スペースを入れず、項目をコンマ (,) で区切ります (例: "https://server1,https://server2")。
  • Auth.Cookie.Expire - 自動的にログオフになるまでの時間 (分) です。既定では、この値は 30 分に設定されています。
  • Auth.Bearer.Basic.Expire - ベアラー トークンの期限が切れるまでの時間です。既定では、この値は 30 分に設定されています。
  • Auth.Bearer.Robot.Expire - ロボットのベアラー トークンの期限が切れるまでの時間です。既定では、この値は 30 分に設定されています。
  • Auth.Cookie.ValidateInterval - パスワードのリセット後、または新しいセッションが検出されてからログアウトするまでの時間 (秒単位)。既定では、これは 60 秒に設定されています。既定では、このパラメーターは web.config ファイルに表示されません。たとえば、20 秒に設定する場合は、web.config にキー <add key="Auth.Cookie.ValidateInterval" value="20"/> を追加します。
  • Auth.DisabledPermissions - API 使用時に、ユーザー インターフェイスからの権限を無効化して無視するように設定できます。このパラメーターは既定では非表示です。それらの権限は API で使用されるため、API に追加する必要があります。その場合、複数の権限はコンマで区切ります。たとえば、ライブラリやマシンに対する [削除] 権限を無効にする場合は、web.config にキー <add key="Auth.DisabledPermissions" value="Machines.Delete,Libraries.Delete" /> を追加します。
  • Auth.RememberMe.Enabled - [ログイン] ページで [このアカウントを記録する] チェック ボックスを表示するかどうかを設定できます。既定では、このパラメーターは true に設定され、チェックボックスは表示されるようになっています。非表示にするには、false に設定してください。既定では、この設定は web.config ファイルに表示されません。
  • Auth.AllowChangePassword - ユーザーが [プロファイル] ページの [セキュリティ] セクションから自分のパスワードを変更できるかどうかを設定できます。既定では、この設定は web.config ファイルに表示されません。次の値を使用できます。
    • true - ユーザーは、[プロファイル] ページでパスワードを変更できます。これが既定値です。
    • false - ユーザーは、[プロファイル] ページでパスワードを変更できません。
  • Auth.AllowSelfEmailUpdate - ユーザーが、[プロファイル] ページの [全般] セクションからメール アドレスを変更できるかどうかを設定できます。既定では、パラメーターは true に設定され、更新できることを意味します。フィールドを読み取り専用にするには、パラメーターを false に設定します。既定では、この設定は web.config ファイルに表示されません。
  • Auth.RestrictBasicAuthentication - ユーザーが基本認証資格情報を使用して Orchestrator インスタンスに認証済み API リクエストを作成できるかどうかを設定できます。既定では、この設定は web.config ファイルに表示されません。次の値を使用できます。
    • true - ユーザーは、基本認証資格情報を使用して認証済み要求を行うことはできません。
    • false - ユーザーは、基本認証資格情報を使用して認証済み要求を行うことができます。これが既定値です。
  • Auth.EnableBasicAuthenticationForHostTenant - ユーザーが基本認証資格情報を使用して Orchestrator インスタンスに認証済み API リクエストを作成できるかどうかを設定できます。既定では、この設定は web.config ファイルに表示されません。次の値を使用できます。
    • true - ホスト管理者は、基本認証資格情報を使用して認証済み要求を行うことができます。これが既定値です。
    • false - ホスト管理者は、基本認証資格情報を使用して認証済み要求を行うことはできません。

このパラメーターは、Auth.RestrictBasicAuthentication パラメーターをバイパスしますが、これは Auth.EnableBasicAuthenticationForHostTenanttrueAuth.RestrictBasicAuthenticationtrue に設定されている場合、ホストレベルでの基本認証の資格情報を使用してログインできることを意味します。

  • ExternalAuth.AccessTokenAuth.Enabled - Auth0 によって発行されたベアラー アクセス トークンを使用して Orchestrator に認証できるかどうかを設定できます。既定では、この設定は web.config ファイルに表示されません。次の値を使用できます。
    • true - ユーザーは、Auth0 によって発行されたアクセス トークンを使用して認証済み要求を行うことができます。これは、ExternalAuth.AccessTokenAuth.Audience パラメーターに有効なオーディエンスを設定した場合にのみ考慮されます。
    • false - ユーザーは、Auth0 によって発行されたアクセス トークンを使用して認証済み要求を行うことはできません。これが既定値です。
  • ExternalAuth.AccessTokenAuth.Audience - アクセス トークンのターゲット オーディエンスを制御できます。このパラメーターは、Auth0 トークン オーディエンスと照合するために使用される有効なオーディエンスに設定する必要があります。たとえば、https://platform.uipath.com にオーディエンスを設定したい場合、web.config にキー <add key="ExternalAuth.AccessTokenAuth.Audience" value="https://cloud.uipath.com" /> を追加する必要があります。既定では、この設定は web.config ファイルに表示されません。
  • ExternalAuth.ShowPII - Allow for Orchestrator PII display by adding the following key in web.config. 。このキーは既定では web.config に表示されておらず、既定の挙動では PII の表示は許可されていません。
  • WindowsAuth.GroupMembershipCacheExpireHours - Active Directory グループ メンバーシップ キャッシュを構成できます。既定値は 1 で、Active Directory グループ メンバーシップに加えられた変更は、アクティブなユーザー セッションに対して 1 時間ごとに Orchestrator と同期されます。こちらの「動作」セクションを参照してください。

ロード バランサー

この設定は、ロード バランサーを使用している場合にのみ変更してください。

  • LoadBalancer.UseRedis - データベースとして Redis を使用して、ロード バランサー経由で接続しているすべてのサーバーとの間でメッセージの配信とキャッシュ処理を行います。既定では false に設定されています。
  • LoadBalancer.Redis.ConnectionString - LoadBalancer.UseRedistrue に設定されている場合にのみ使用できます。Redis サーバーを設定するための接続文字列です。サーバーの URL、パスワード、Redis が使用するポートを含みます。また、Orchestrator ノードと Redis サービスの間で SSL 暗号化接続を有効にすることもできます。詳細については、こちらをクリックしてください。例:
    • SSL が有効な場合 - <add key="LoadBalancer.Redis.ConnectionString" value="DOCWREDIS02:6379,password=12345678,ssl=true" />
    • SSL が有効でない場合 - <add key="LoadBalancer.Redis.ConnectionString" value="DOCWREDIS02:6379,password=12345678" />

Password Vault

これらの設定を更新して、CyberArk や Azure Key Vault など、使用している資格情報ストアのプラグインを含める必要があります。資格情報ストアプラグインは、インストールディレクトリの \Orchestrator\Plugins フォルダーにあります。例:

  • <add key="Plugins.SecureStores" value="UiPath.Orchestrator.CyberArk.dll"/>

📘

注:

既存の CyberArk 連携を使用して Orchestrator インスタンスをアップグレードする場合、この設定には CyberArk プラグインが事前に入力されています。他のすべてのインストールでは、設定値は既定で空です。

複数の資格情報ストアがサポートされている場合は、, または ; を使用して各エントリを区切ります。例:

  • <add key="Plugins.SecureStores" value="UiPath.Orchestrator.CyberArk.dll,UiPath.Orchestrator.AzureKeyVault.SecureStore.dll"/>

Azure AD 認証

Azure AD 認証の設定についての説明は、Identity Server の「外部 ID プロバイダー」ページに移動しました。

ログ

  • Logs.RequestAbortedLogBehavior - 実行中の操作のキャンセル時にスローされるキャンセル例外のログ動作を指定します。ボタンをクリックして操作が実行される前に別のボタンをクリックしたときなどに、これらは生成されます。このパラメーターは既定では非表示です。次の値を使用できます。
    • Ignore - すべてのキャンセル例外は、対応する要求が中止されると無視されます。これが既定値です。
    • Info - キャンセル例外は、Info 重要度レベルでログされます。
    • None - キャンセル例外は、Error 重要度レベルでログされます。

たとえば、キャンセル例外が一切ログされないようにするには、<add key="Logs.RequestAbortedLogBehavior" value="Ignore" />web.config ファイルに追加します。

  • Logs.Elasticsearch.SharedIndex - すべてのテナントについて同じインデックスにログを記録できるようにします。NLog ターゲットの index パラメーターに使用される値と同じ値に設定する必要があります。たとえば <add key="Logs.Elasticsearch.SharedIndex" value="robotlogs" /> です。詳細についてはこちらをご覧ください。このパラメーターは既定では非表示です。

Webhook

🚧

重要!

web.config のセクションは廃止されました。Webhook の設定は、Webhook サービスに固有な appsettings.json ファイル内で変更できます。
Webhook の appsettings.json ファイルについてのページはこちらからご確認ください。

  • Webhooks.Enabled - 既定では true に設定されています。この設定により、Webhook 機能を有効化または無効化できます。<add key="Webhooks.Enabled" value="false" /> に設定すると、この機能は無効になります。
  • Webhooks.Quotas.MaxCountPerTenant - 既定では、この設定は web.config ファイルに表示されません。テナントごとに有効にできる Webhook の最大数です。既定では、100 に設定されています。たとえば最大数を 150 に変更するには、<add key="Webhooks.Quotas.MaxCountPerTenant" value="150" /> を追加します。
  • Webhooks.Requests.Timeout - 既定では、この設定は web.config ファイルに表示されません。各 HTTP リクエストがキャンセルされるまでの時間です。タイムアウトしたリクエストは、Webhooks.Requests.RetryAfter パラメーターに従ってリトライされます。既定では、タイムアウト時間は 15 秒です。
  • Webhooks.Requests.RetryAfter - 既定では、この設定は web.config ファイルに表示されません。失敗したリクエストがリトライされるまでの時間 (秒) です。コンマで区切られた整数として入力され、既定では 0, 15, 60 に設定されています。このため、次のように最大 3 回リトライされます。
    • 1 回目のリトライは、最初の試行が失敗した直後に実行されます。
    • 2 回目のリトライは、1 回目のリトライが失敗してから 15 秒後に実行されます。
    • 3 回目の再試行は、2 回目の再試行が失敗してから 60 秒後に実行されます。
      遅延の回数は変更できます。たとえば、<add key="Webhooks.Requests.RetryAfter" value="0,10" /> と記述した場合、再試行は 2 回だけで、1 回目は直ちに実行され、2 回目は 10 秒後に実行されます。最初の再試行は必ず 0 に設定し、300 秒 (5 分) より長い時間は設定しないことをお勧めします。
  • Webhooks.Quotas.MaxPayloadSize - 既定では、この設定は web.config ファイルに表示されません。これは、JSON ペイロード (UTF-8) の最大バイト数を表します。既定値は 1048576 です。この上限を超えるサイズの Webhook イベントはドロップされます。
  • Webhooks.Quotas.MaxParallelRequests - 1 つの CPU コアが処理する Webhook の最大数です。既定では、1 CPU 当たり 100 に設定されます。既定では、この設定は web.config ファイルに表示されません。

スケーラビリティ

  • Scalability.Heartbeat.PeriodSeconds - ロボットが Orchestrator にハートビートを送信して自身のステータスを通知する間隔 (秒)。既定では、これは 30 秒に設定されています。
  • Scalability.Heartbeat.FailureThreshold - ロボットによるハートビート送信の連続失敗回数です。この数を超えると、このロボットは Orchestrator で応答なしとマークされます。既定では、4 に設定されています。つまり、ハートビートの失敗が 2 分間続くと (4 回 x 30 秒)、ロボットは応答なしとフラグ付けされます。
  • Scalability.SignalR.Enabled - Robot サービスが Orchestrator の SignalR チャネルにサブスクライブするかどうかを指定します。既定では true に設定されています。このパラメーターは、データベースの初期シーディングで使用されます。インストール後に変更を加えるには、テナントまたはホスト レベルの [設定] ページを使用します。
  • Scalability.SignalR.Transport - Specifies the transport protocol used to connect to Orchestrator's SignalR channels. The following values can be attributed (any combination - bitwise OR):
    WebSocketTransport = 1
    ServerSentEventsTransport = 2
    LongPollingTransport = 4
    Default value: 7 (WebSocketTransport | ServerSentEventsTransport | LongPollingTransport)
    This parameter is used in the initial seeding of the database. To make changes after installation, use the Settings page, at tenant or host level.
  • Scalability.SignalR.AuthenticationEnabled - If set to true, enables the Robot SignalR authentication method, a method that ensures secure communication between Orchestrator and Robot. This feature is disabled by default - set to false. Please note that if you enable this feature, you cannot execute jobs on Robots with a version lower than 2018.4.4.
  • Scalability.AzureSignalR.ConnectionString - 各種ロボットと SignalR Service 間の (Orchestrator の仲介を必要としない) 直接通信を容易にするために Azure SignalR Service を有効化できるようにします。このオプションは、Azure がホストする Orchestrator インスタンスがある場合にだけ使用するようにしてください。Scalability.AzureSignalR.ConnectionCount キーと組み合わせて使用できます。このパラメーターは UiPath のクラウド製品で有効化されます。既定では、web.config ファイルに表示されません。
    有効にすると、2019.2 より前のバージョンの Robot が Orchestrator との通信にハートビート プロトコルのみを使用することになり、Orchestrator からのコマンドは、30 秒ごとにしか Robot に取り込まれなくなることに注意してください。このパラメーターを有効にするには、値として Azure サービスへの接続文字列を入力します。例: <add key="Scalability.AzureSignalR.ConnectionString" value="Endpoint=https://test.signalr.net;AccessKey=M1ug+sBu07hyyi12AgyJ52SEd4OgC2Mm6BvllVHCC9c=;Version=1.0;" />
  • Scalability.AzureSignalR.ConnectionCount - サーバーと Azure SignalR Service 間の接続数 (ハブごと) を変更できます。既定値は 5 です。たとえば、<add key="Scalability.AzureSignalR.ConnectionCount" value="7" /> です。この設定は既定では表示されず、Scalability.AzureSignalR.ConnectionString キーなしでは使用できません。

Insights

  • Insights.ParallelBuildCount - 同時に発生する Insight データ キューブ作成数の最大値を設定できます。既定では 4 に設定されます。
    : この設定は任意であり、既定では web.config ファイルに表示されません。
  • Insights.TableCreationRetryCount - テーブルを新たに作成するときのリトライ回数の最大値を設定できます。既定では 3 に設定されます。
    : この設定は任意であり、既定では web.config ファイルに表示されません。
  • Insights.TableCreationRetryBackoffSeconds - リトライの時間間隔を秒単位で設定できます。既定では 60 に設定されます。
    : この設定は任意であり、既定では web.config ファイルに表示されません。

分析 (Analytics)

  • Telemetry.Enabled - UiPath が問題の診断および Orchestrator の改善を目的として行う使用状況とパフォーマンスに関するデータの収集を有効化/無効化します。UiPath プライバシー ポリシーのプラクティスについては、プライバシー ステートメントをご覧ください。次の値を使用できます。
    • true - テレメトリ機能は有効です。これが既定値です。
    • false - テレメトリ機能は無効です。
      こちらの説明にあるように、Orchestrator インスタンスをインストールまたは更新するときに、パフォーマンスや使用状況のデータ収集オプションをオン/オフにすることも可能です。

メディアの記録 (Media Recording)

  • MediaRecording.Enabled - true に設定すると、レコーディング機能が有効になります。既定では false に設定されており、この機能は無効になっています。ファイル ストレージは NuGet.Repository.Type パラメーターの影響を受けます。また、NuGet.Repository.TypeComposite に設定されている場合は、Storage.Type パラメーターと Storage.Location パラメーターで設定されます。

ページネーション

  • Pagination.Limits.Enabled- Cloud Platform および On-Premises Orchestrator インスタンスのクリーン インストールの場合、既定で true に設定されます。ページ送りパラメーターで、API エンドポイントのすべての呼び出しについて、既定の $top の値を追加します (例: odata/Users) 。

セキュアアプリ設定 (SecureAppSettings)

  • EncryptionKey - 資格情報アセットのパスワードの保護に使用される暗号化キーです。ネットワーク ロード バランサーのある環境を使用している場合は、すべてのサーバーでこのキーを同一にする必要があります。

テナントごとの暗号化キーを Azure Key Vault に格納する場合は、次のパラメーターを使用してセットアップします。これらのパラメーターは、EncryptionKeyPerTenant.Enabledtrue に設定され、EncryptionKeyPerTenant.KeyProviderAzureKeyVault に設定されている場合にのみ使用できます。また、Azure Key Vault の アクセスポリシー (Access policies)で、キー、シークレット、証明書に関するすべての権限を Orchestrator インスタンスに付与してください。この手順の詳細については、このページを参照してください。

  • Azure.KeyVault.ClientId - Orchestrator インスタンスのアプリケーション ID です。これは、Azure の [アプリの登録]ae11aa1a-1234-1234-a123-a12a12aaa1aa 形式で記載されています。既定では、この設定は web.config ファイルに表示されません。たとえば <add key="Azure.KeyVault.ClientId" value="ae11aa1a-1234-1234-a123-a12a12aaa1aa" /> です。
  • Azure.KeyVault.CertificateThumbprint - Azure が生成した Orchestrator 証明書のサムプリントです。この値は、Azureの [App Services] > [インスタンス (Your instance)] > [SSL 設定 (SSL Settings)] > [プライベート証明書 (Private Certificates)] (または [公開証明書 (Public Certificates)]) に記載されています。既定では、この設定は web.config ファイルに表示されません。たとえば、<add key="Azure.KeyVault.CertificateThumbprint" value="1234123412341234123412341234124312341234" /> です。
  • Azure.KeyVault.VaultAddress - Azure Key Vault の DNS 名です。これは、Azure Key Vault の [概要][DNS 名]https://CustomVaultName.vault.azure.net/ 形式で記載されています。既定では、この設定は web.config ファイルに表示されません。たとえば <add key="Azure.KeyVault.VaultAddress" value="https://CustomVaultName.vault.azure.net/" /> です。

その他

  • Features.LongRunning.Enabled - インスタンスで長期実行ワークフローをサポートするかどうかを構成できます。有効化する場合、web.config にキー <add key="Features.LongRunning.Enabled" value="true" /> を追加します。
  • Tasks.ModuleEnabled - インスタンスでアクション機能を有効化するかどうかを設定できます。有効化する場合、web.config にキー <add key="Tasks.ModuleEnabled" value="true" /> を追加します。この設定によって、この機能がインスタンス レベルで使用できるようになります。この機能をテナント別に構成するには、こちらに記載されている手順に従います。この設定を適用するには、Features.LongRunning.Enabled パラメーターを true に設定する必要があります。
  • ActiveDirectory.SearchInputMinimumLength - 検索をトリガーするクエリの最小サイズ。既定値は 2 です。これは、2 文字以上を入力すると検索が実行されることを意味します。既定では、このパラメーターは web.config ファイルに表示されません。たとえば、<add key="ActiveDirectory.SearchInputMinimumLength" value="4" /> です。
  • ActiveDirectory.SearchResultsSizeLimit - Active Directory ユーザーまたはグループを検索したときに返される結果の最大数。既定値は 20 です。既定では、このパラメーターは web.config ファイルに表示されません。たとえば、<add key="ActiveDirectory.SearchResultsSizeLimit" value="30" /> です。
  • ActiveDirectory.SearchResultsTimeLimitSeconds - クエリで許容される検索時間の最大値。この時間を超過すると検索が中断され、その時点までに見つかった結果が返されます。既定値は 30 秒です。既定では、このパラメーターは web.config ファイルに表示されません。たとえば、<add key="ActiveDirectory.SearchResultsSizeLimit" value="40" /> です。
  • OData.BackwardsCompatible.Enabled - Orchestrator API での特殊文字の解析方法を制御できます。true に設定されている場合、要求と応答の本文に含まれる特殊文字が解析されます。このパラメーターは既定では非表示で、false に設定されています。
  • NotRespondingRobotsJobStartDelay - アップグレード後のロボット ステータスの初回チェックについて、遅延を秒単位で設定できます。既定では、このパラメーターは web.config に表示されません。
  • Upload.Queues.MaxNumberOfItems - 一括アップロード機能での一度にアップロード可能な最大アイテム数を少なくすることができます。既定値は 15000 です。既定では、このパラメーターは web.config に表示されません。
  • Processes.FilterOutDeleted - Orchestrator によるプロセスの取得方法を最適化できます。最適化は、関連するパッケージが削除された孤立プロセスに対する不要な検証を排除することで実現します。これにより、特に大規模デプロイにおいて、インスタンスの全体的なパフォーマンスが向上します。次の値を使用できます。
    • false - パッケージ取得を最適化し、孤立したプロセスに対する検証を実行しません。
    • true - パッケージ取得を最適化しません

このパラメーターは非表示で、既定では true に設定されます。つまり、プロセス取得を最適化しません

system.webServer

HTTP 圧縮 (HTTP Compression)

下の要素により、Orchestrator で動的コンテンツ (それぞれサイズの大きいダウンロード可能な .csv レポート) を圧縮できます。既定では、この機能は有効 (true に設定) されています。これを無効化するには、enabled 属性の値を false に変更します。

<httpCompression>
  <dynamicTypes>
    <remove mimeType="text/csv" />
    <add mimeType="text/csv" enabled="true" />
  </dynamicTypes>
</httpCompression>

Identity Server Settings

This section contains settings for configuring SSO login, S2S access tokens and Robot provisioning access tokens.

Single Sign-On

The following parameters allow you to configure SSO login through the Identity Server:

  • ExternalAuth.System.OpenIdConnect.Enabled - Orchestrator の外部認証システムへの接続を有効または無効にします。既定では、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 - Identity Server への認証後の、Orchestrator へのリダイレクト URL を指定します。この URL は Identity Server と Orchestrator 内で自動的に事前設定されるため、変更の必要はありません。既定値は http://Orchestrator/signinsystemopenidconnect です。
  • ExternalAuth.System.OpenIdConnect.PostLogoutRedirectUri - ユーザーが Orchestrator からログアウトした後に、Identity Server がリダイレクトするアドレスです。この値にはお使いの Orchestrator URL が自動的に設定されます。

たとえば、web.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/" />

Integration

Identity Server にデータを安全に伝達するには、Orchestrator はトークン認証用のアクセス トークンが必要です。このトークンは、クライアント資格情報フロー (S2S)を介して Identity Server から取得されます。次のキーを web.config に追加する必要があります。

  • IdentityServer.Integration.Enabled - Identity Server と Orchestrator の連携を有効または無効にします。既定では、true に設定されています。
  • IdentityServer.Integration.Authority - Identity Server の場所を設定できます。既定ではこの値は 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 - Identity Server は、異なる対象を持つ複数のアクセス トークンを生成できます。Orchestrator API の要求は、この対象を持つユーザー アクセス トークンを使用して認証できます。既定では、この値は 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" />

Identity Server により生成されたクライアント資格情報 (S2S) アクセス トークンを消費するには、Orchestrator は次のキーを web.config に追加する必要があります。

  • IdentityServer.S2SIntegration.Enabled - S2S アクセス トークンの消費を有効化または無効化します。このパラメーターは web.config に既定値がありません。
  • IdentityServer.Integration.S2SOrchestratorApiAudience - S2S アクセス トークンを検証する際に Orchestrator が確認する対象を設定できます。既定では、この値は OrchestratorApiS2SAccess に設定されています。

また、web.config に次の既存のキーも含まれており、値が true に設定されていることを確認します。

  • MultiTenancy.AllowHostToAccessTenantApi - true に設定すると、ホスト ユーザーが他のテナントの固有データにアクセスできます。既定ではこの値は true に設定されています。
  • MultiTenancy.TenantResolvers.HttpGlobalIdHeaderEnabled - S2S アクセス トークンを使用して認証された API 呼び出しを Orchestrator が受信すると、設定が 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" />

Robot Provisioning Access Tokens

Orchestrator acts as a Token Generator for Robots. Robots call the Orchestrator endpoint to generate an access token. The access token is then passed to activities that can call different resources, such as AI Fabric. With the integration of Identity Service with Orchestrator, Identity Server takes over the generation of the access tokens.

ログの構成

ロボット ログ

これに対応する web.config キーは <logger name="Robot.*" writeTo="database,robotElasticBuffer" final="true" /> です。Robot によって生成されるログ メッセージを構成するために使用されます。次のパラメーターを構成する必要があります。

  • writeTo - ロボットが生成したログ メッセージが書き込まれる場所です。次の値を使用できます。
    • database - ログは Orchestrator の SQL データベースに送られます。これは既定値の 1 つです。
    • robotElasticBuffer - ログは Elasticsearch に送信されます。これは 2 番目の既定値です。これには追加の設定が必要です。詳細についてはこちらをご覧ください。
      Orchestrator の SQL データベースと Elasticsearch の両方にログを送信することで、否認不可 (non-repudiation) のログを保持できます。この場所へのログの送信を停止するには、これらの値のいずれかを削除します。
  • final - ログに記録されたメッセージとロガー名との間に一致が見つかったときに実行する内容を示すフラグ。true に設定されている場合は、別の一致の検索を行いません。false に設定されている場合は、同じソースを照合する他のルールが確認されます。既定では true に設定されています。

スケジュールログ

これに対応する web.config キーは <logger name="Quartz.*" minlevel="Info" writeTo="eventLogQuartz" final="true" /> です。スケジュールによって生成されるログ メッセージを構成するために使用されます。

📘

注:

ロード バランサーで設定された Orchestrator でスケジュールがスムーズに実行されるようにするため、quartz.jobStore.clustered パラメーターも true に設定してください。

ログの監視

対応する web.config キーは <logger name="Monitoring.*" writeTo="monitoring" minlevel="Warn" final="true" /> です。[監視] ページに表示されるエラー ログを設定するために使用されます。このルールを削除または target を変更した場合、エラー ログは [監視] ページに表示されません。

ビジネス例外ログ

これに対応する web.config キーは <logger name="BusinessException.*" minlevel="Info" writeTo="businessExceptionEventLog" final="true" /> です。スローされたビジネス例外のログを構成するために使用されます。たとえば、検証の問題 (例: Invalid username) またはビジネスの競合 (例: License expired)。

他のログ

これに対応する web.config キーは <logger name="*" minlevel="Info" writeTo="eventLog" /> です。Orchestrator によって生成されるメッセージを含む、上記以外のすべてのその他ログを構成するために使用します。

📘

注:

SQL データベース内に 200 万を超えるログを保持すると、パフォーマンスの問題が発生する場合があります。そのことも考慮し、Elasticsearch を使用することをお勧めします。

その他の設定 (Additional Settings)

Elasticsearch

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" />
  • 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 - ログ インデックスの形式。テナントごとに一意にすることも、すべてのテナントで共有することもできます。以下の詳細を参照してください。

インデックスの構成

  • 個別インデックス - index="${event-properties:item=indexName}-${date:format=yyyy.MM}" - 別のインデックスが各テナントに使用されます。これは、あるテナントに固有のログは、一意のテナント識別子に基づいて生成され、検索されることを意味します。この場合、indexName は、既定でテナント名になります。これが既定の構成です。この場合、ログは月ごとに生成されます。

  • 共有インデックス - index="robotlogs-${date:format=yyyy.MM.dd}" - すべてのテナントに対して 1 つのインデックスが使用されます。これは、テナントに関係なく、すべてのログが同じインデックスを使用することを意味します。この場合、ログは 1 日ごとに生成されます。共有インデックスを使用するには、web.config でキー <add key="Logs.Elasticsearch.SharedIndex" value="robotlogs" /> を追加する必要があります。NLog ターゲットの index パラメーターと同じ値に設定してください。

🚧

重要!

共有インデックスに移行すると、個々のインデックスを使用して生成されたログが保持されます。ただし、個別のインデックスに移行すると、共有インデックスを使用して生成されたログは失われます。

データベースのイベントのログ記録

システムイベントログをイベント ビューアーではなくデータベースに保存するには、次の手順を実行します。

  1. 新しいデータベーステーブルを作成します。例:
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 - 該当する場合、各イベントに対してログに記録された例外を保持します。

📘

注:

You can use any name for your table, and remove any columns from the above query or add others to suit your needs.

  1. web.config ファイルで、新しい NLog ターゲットを追加します。
<target xsi:type="Database" connectionStringName="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 です。

  1. 最後に、次を追加して、新しく作成されたターゲットを、上記のすべての Orchestrator メッセージの NLog ロガー分類に関連付けます。
<logger name="*" minlevel="Info" writeTo="eventLog,eventLogDatabase" />

NLog のデバッグを有効にする (Enabling NLog Debugging)

NLog は、設定が簡単で拡張性のあるオープンソースのログ プラットフォームで、さまざまな .NET プラットフォームに使用できます。NLog を使用して、ローカル ファイル、イベント ログ、メール、データベースなど、任意の数の事前定義済みターゲットやカスタム ターゲットに、ログ データを格納したり、渡したりすることができます。

NLog と Orchestrator では、一部重複する部分があるものの、ログレベルが異なります。NLog では、TraceDebugInfoWarnErrorFatal、または Off を選択できます。Orchestrator で使用可能なレベルについては、「ログレベル (Logging Levels)」を参照してください。

NLog では、正常な機能を確保するために、デバッグを有効にすることができます。既定では、NLog は Off に設定されています。web.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="">
The attributes which must be set are:
* `internalLogLevel` - the desired logging level
* `internalLogFile` - the location of the log file

For example:
<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">

📘

注:

Orchestrator が実行されるユーザープロファイルは、internalLogFile 属性で指定されているパスへのアクセス権を持つ必要があります。

Updated 6 days ago


Web.Config


改善の提案は、API 参照ページでは制限されています

改善を提案できるのは Markdown の本文コンテンツのみであり、API 仕様に行うことはできません。