# コネクションプロファイル
単一の Workato オンプレミスエージェント (OPA) を複数のオンプレミスアプリケーションに接続できます。 コネクションプロファイル は、各アプリケーションを一意に識別し、接続に必要な設定情報を格納します。
# 基本情報
# コネクションプロファイルとは
コネクションプロファイルとは、オンプレミスアプリケーションを一意に識別し、オンプレミスアプリケーションに関する情報を格納するファイルです。プロファイルは、<INSTALL_HOME>/conf/config.yml
にある設定ファイルに格納されています。
一般的な設定ファイルは以下のようになります。
database:
profile1: # Connection names can't contain
... # spaces or special characters
profile2: # But may contain underscores (_) and hyphens (-)
...
files:
profile3:
...
profile4:
...
jms:
profile5:
...
ldap:
profile6:
...
server:
classpath:
...
staging:
...
# 接続できるシステムの種類
config.yml
ファイルには、以下の種類のシステムのプロファイルを格納できます。
- データベース
- オンプレミスファイルシステム
- SAP
- Java メッセージングサービス
- Apache Kafka
- Active Directory
- HTTP プロファイル
- NTLM
- コマンドラインスクリプト
- 拡張機能
- サーバー
インターネット接続が制限されているサーバーにインストールされた OPA に対して、プロキシサーバーを設定することもできます。
# 新しい設定の適用方法
デフォルトでは、config.yml
が変更されるたびに OPA を再起動する必要があります。詳細については、オンプレミスエージェントの実行に関するガイドを参照してください。
オンプレミスエージェントで変更を自動的に適用できるようにするには、autoReload
オプションを使用するよう、以下のコードを config.yml
ファイルの最上部に追加します。
config:
autoReload: true
このオプションが有効になっている場合、config.yml
に対する変更は autoReload
によって処理されます。OPA を手動で再起動する必要はありません。
autoReload とサーバープロファイル
autoReload
は、サーバープロファイルに対する変更には適用されません。これらの変更を適用するには、手動で OPA を開始および停止します。
# データベースプロファイル
データベースコネクションプロファイルは、OPA がデータベースに接続するために使用する情報を提供します。コネクションプロファイルは config.yml
の database
セクションにあります。
OPA は、複数のデータベースへの接続に対応しています。接続したいデータベースごとに、database
キー下にセクションを追加します。例 :
database:
your-connection-name: # Specify the connection name, ex: sales-database
adapter: sqlserver
host: localhost
port: 1433
database: sales
username: sales_analyst
password: secretPassword456
このセクションでは、以下の項目について説明します。
# プロファイルのプロパティ
データベースコネクションプロファイルには、以下のプロパティを含めることができます。
名前 | 種類 | 説明 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
adapter | 任意 | プロファイルが使用されるデータベースのタイプ。たとえば、プロファイルが PostgreSQL データベース用のものである場合、この値は postgresql になります。
OPA によりサポートされているデータベースでなければなりません。詳細については、設定例を参照してください。 | ||||||||||||
url | 任意 | データベース用の JDBC 接続 URL。たとえば jdbc:postgresql://sales.database:5432/sales は PostgreSQL データベースに接続します。
注 : コネクションプロファイルの設定をすべて行うには、 url または host 値を指定する必要があります。
詳細については、設定例を参照してください。 | ||||||||||||
host | 任意 | データベースのホストアドレス。たとえば、localhost です。
注 : コネクションプロファイルの設定をすべて行うには、 url または host 値を指定する必要があります。
| ||||||||||||
port | 任意 | データベースのポート。選択したタイプのデータベースでデフォルトのポートを使用している場合は、このプロパティを省略できます。
たとえば PostgreSQL データベースは、デフォルトでポート 5432 を使用します。PostgreSQL でこのポートを使用する場合、port プロパティをコネクションプロファイルに追加する必要はありません。
デフォルトのポートは、サポートされているデータベースのセクションに記載されています。 | ||||||||||||
database | 任意 | データベースの名前。例 : sales
注 : url プロパティが指定されている場合は、このプロパティを省略できます。
| ||||||||||||
username | 必須 | データベースへの接続に使用されるデータベースユーザーのユーザー名。 | ||||||||||||
password | 必須 | データベースユーザー (username ) のパスワード。この値には、外部のシークレットマネージャーから取得したシークレットを使用できます。詳細については、設定例を参照してください。
| ||||||||||||
driverClass | 必須 | JDBC 接続でのみ必要です。指定されたデータベースの JDBC ドライバークラスの完全修飾名。ドライバークラスは、エージェントの classpath プロパティで利用できる必要があります。
| ||||||||||||
ssl | 任意 | SSL 接続を設定するためのオプション。SSL は以下のデータベースでサポートされています。
|
# サポートされているデータベース
以下の表は、OPA が現在サポートしているデータベースに関する次の情報を示しています。
- データベース名 : データベースの名前です。
- アダプター : データベースの
adapter
値です。この値は、OPA が接続しているデータベースの種類を指定するために使用されます。 - デフォルトのポート : データベースのデフォルトの
port
です。 - 注意事項 : データベースの設定時の注意事項です。
データベース名 | アダプター | デフォルトのポート | 注意事項 |
---|---|---|---|
Amazon Redshift | redshift | 5439 | |
JDBC 互換データベース | jdbc | 以下が必要です。
| |
Microsoft SQL Server | sqlserver | 1433 | |
MySQL | mysql | 3306 | |
Oracle | oracle | 1521 | Oracle Service を使用している場合は、url プロパティが必要です。
SID を使用している場合は、 adapter プロパティまたは url プロパティのいずれかを使用できます。
詳細については、Oracle の例を参照してください。 |
PostgreSQL | postgresql | 5432 |
# 設定例
ブロックをクリックすると例が表示されます。
adapter プロパティの使用
以下の例では、adapter
プロパティを使用して Microsoft SQL Server と Amazon Redshift データベースに接続します。
database:
sales:
adapter: sqlserver
host: localhost
port: 1433
database: sales
username: sales_analyst
password: secretPassword123
operations:
adapter: redshift
host: localhost
port: 5439
database: customers
username: cs_analyst
password: secretPassword789
url プロパティの使用
以下の例では、url
プロパティを使用して PostgreSQL データベースに接続します。
database:
sales:
url: jdbc:postgresql://sales.database:5432/sales
username: sales_analyst
password: secretPassword123
ApplicationName: workato
password プロパティにシークレットを使用
以下の例では、外部シークレットマネージャーから取得したシークレットを使用して、データベースパスワードを提供します。詳細については、シークレットマネージャーの説明を参照してください。
database:
sales_database:
adapter: sqlserver
host: localhost
port: 1433
database: test
username: sales_user
password: { secret: 'sales-db-password-password' }
Oracle データベースへの接続
Oracle データベースに接続する場合、 SID または サービス のいずれかに接続できます。
SID を使用する場合は、adapter
プロパティまたは url
プロパティのいずれかを使用できます。
サービス を使用する場合は、url
プロパティを指定する必要があります。
database:
erp:
url: jdbc:oracle:thin:@localhost:1521/PROD
username: admin
password: SecretPassword456
JDBC 互換データベースへの接続
JDBC 互換データベースに接続するには、以下が必要です。
- コネクションプロファイル内の
url
およびdriverClass
プロパティ - 設定済みの
server
プロファイル
database:
tpc:
url: jdbc:presto://warehouse.intra:8889/tpch
driverClass: com.facebook.presto.jdbc.PrestoDriver
adapter: jdbc
username: my_user
server:
classpath: jdbc
SSL の有効化
以下の例では、PostgreSQL データベースに SSL を設定します。
注 : 現在、SSL 接続は MySQL (5.7以上) データベースおよび PostgreSQL (11以上) データベースでサポートされています。
database:
sales:
adapter: postgresql
host: localhost
port: 5432
database: sales
username: sales_analyst
password: secretPassword123
ssl:
cert: /path/client_ca.crt
trustAll: false
verifyHost: true
# オンプレミスファイルプロファイル
オンプレミスファイルを使用するには、files
セクションでファイルシステムプロファイルを定義する必要があります。
その際、相対パスの解決に使用される、ファイルアクセス用の base フォルダーを指定する必要があります。たとえば、C:\Documents\
ディレクトリ内の HR
フォルダーは以下のように設定します。
files:
hrfiles:
base: "C:\\Documents\\HR"
別の例として、Desktop ディレクトリの employees
フォルダーにアクセスできるようにするには、以下のようなファイルパスを指定します。
files:
hrfiles:
base: "/Users/me/Desktop/employees"
# SAP プロファイル
server
セクションと sap
セクションの両方に、SAP コネクションプロファイルを定義する必要があります。
サーバープロファイルで、
lib_ext
とは、SAP JCo コネクターライブラリを配置するディレクトリのことです。まだ作成されていない場合は、このディレクトリを OPA の root ディレクトリ下に作成し、SAP JCo コネクターライブラリをそこに配置します。lib_ext
フォルダーには、すでにsap-connector-impl-X.X.jar
が含まれているはずです。サーバープロファイルの詳細については、こちらをご確認ください。
SAP コネクターが対応しているコネクションのタイプには、直接接続とメッセージサーバー接続の2つがあります。
SAP のデフォルトのポート
Workato の SAP コネクターでは、デフォルトで以下のポートを使用します。
- SAP メッセージサーバー経由 : 36xx (xx は SAP のシステム番号)
- SAP メッセージサーバーなし (SAP に対する直接呼び出し) : 33xx (SNC あり) および 48xx (SNC なし)
さらに、HTTP(s) インバウンド通信 (SAP からプロビジョニングされた REST OData サービス、SOAP WebServices などを使用する場合など) の場合は、ポートはデフォルトで8000 (HTTP) および44300 (HTTPs) になります。このポートが SAP でカスタムの方法で設定されている場合、ポート番号は SAP で以下の手順で確認できます。
- ICM モニタ ( SMICM ) トランザクションに移動します。
- [Goto] > [Services] の順に選択して、ICM で設定されたサービスと関連付けられたポートを表示します。
これらのポートがデフォルトと異なる場合は、Workato サポートまでお問い合わせください。
# SAP - 直接接続
以下に Direct
コネクションタイプの例を示します。SAP システムがアプリケーションサーバーとして直接公開される場合は、このコネクションタイプを使用します。
server:
classpath:
- lib_ext
sap:
# Direct connection to an ABAP application server
sap_profile_1: # This is on-prem agent connection profile name
network_connection:
gateway_host: "xx.xx.xx.xx"
system_number: "00"
program_id: "WORKATO" # Only needed if you are using IDocs. This can be omitted for connections that only use RFCs.
user_logon:
client: "800"
language: "EN"
user: "USERN"
password: "PASSW"
パラメータ | 説明 | クリックして画像を拡大 |
---|---|---|
gateway_host | DNS 名または IP アドレスのいずれかになります。存在する場合、これは SAP ホストへの直接接続を示しています。xx.xx.xx.xx という形式になります。これは、直接接続する SAP アプリケーションサーバーの IP アドレスです。オンプレミス SAP アプリケーションサーバーへのログインに使用される、SAP Logon Pad に表示される可能性があります。 | |
system_number | 2桁の SAP システム番号です。アプリケーションサーバーが受信リクエストをリッスンしている論理ポートを識別します。通常、TCP ポート 33XX で確認できます (XX はシステム番号)。 | |
program_id | 任意。IDOC がレシピで使用されている場合にのみ必要になります。Tcode SM59 で Workato にリンクされている RFC 宛先に指定されたプログラム ID と同じです。指定されていない場合は、デフォルトで WORKATO が使用されます。 | |
client | Workato への接続に使用される実際のクライアント番号。SAP Logon Pad でログインするときと同じものを使用します。必ず3桁の整数になります。 | |
language | 任意。ログオン言語を示します。このプロパティが指定されていない場合は、ユーザーまたはシステムのデフォルト言語が使用されます。有効な値は、2文字の ISO 言語コードまたは1文字の SAP 言語コードです。 | |
user | Workato にプロビジョニングされた SAP ユーザー。バックグラウンドユーザーを使用し、ダイアログプロパティを無効にすることが推奨されます。 | |
password | SAP ユーザーのパスワード。 |
# SAP - メッセージサーバー接続
以下に messageserver
コネクションタイプの例を示します。SAP システムがメッセージサーバーゲートウェイの背後にある場合は、このコネクションタイプを使用します。
server:
classpath:
- lib_ext
sap:
# Message Server connection to an ABAP application server
sap_profile_2: # This is on-prem agent connection profile name
network_connection:
message_server_host: "10.30.xx.xx"
logon_group: "PUBLIC"
system_id: "DEV"
program_id: "WORKATO" # Only needed if you are using IDocs. This can be omitted for connections that only use RFCs.
user_logon:
client: "800"
language: "EN"
user: "USERN"
password: "PASSW"
パラメータ | 説明 | クリックして画像を拡大 |
---|---|---|
message_server_host | xx.xx.xx.xx という形式のメッセージサーバーのホスト。これは、接続しているメッセージサーバーの IP アドレスです。 | |
logon_group | (任意) アプリケーションサーバーの論理グループ名。SAP Tcode SMLG で確認できます。 | |
system_id | メッセージサーバーが属しているシステムのシステム ID。接続エラーが発生する場合は、SAP ノート52959を参照してください。 | |
program_id | 任意。IDOC がレシピで使用されている場合にのみ必要になります。Tcode SM59 で Workato にリンクされている RFC 宛先に指定されたプログラム ID と同じです。指定されていない場合は、デフォルトで WORKATO が使用されます。 | |
client | Workato への接続に使用される実際のクライアント番号。SAP Logon Pad でログインするときと同じものを使用します。必ず3桁の整数になります。 | |
language | 任意。ログオン言語を示します。このプロパティが指定されていない場合は、ユーザーまたはシステムのデフォルト言語が使用されます。有効な値は、2文字の ISO 言語コードまたは1文字の SAP 言語コードです。 | |
user | Workato にプロビジョニングされた SAP ユーザー。バックグラウンドユーザーを使用し、ダイアログプロパティを無効にすることが推奨されます。 | |
password | SAP ユーザーのパスワード。 |
# JMS プロファイル
jms
セクションに、JMS コネクションプロファイルを定義する必要があります。JMS プロバイダーは、コネクションプロファイルの provider
プロパティで指定されます。オンプレミスエージェントによって、以下の JMS プロバイダーがサポートされています。
メッセージングサービス | プロバイダー |
---|---|
Amazon Simple Queue Service | amazon-sqs または sqs |
Apache ActiveMQ | activemq |
Azure Service Bus | custom |
# Amazon SQS
Amazon SQS に接続するには、以下の設定プロパティが必要です。
jms:
MyAmazonProfile:
provider: amazon-sqs
region: <Your Amazon API region, eg 'us-east-2'>
accessKey: <Your Amazon API access key>
secretKey: <Your Amazon API secret>
メッセージを送信する前に、必ず SQS キューを作成する必要があります。
# Apache ActiveMQ
実行中の ActiveMQ ブローカーに接続するには、以下のようにブローカー URL を指定するだけです。
jms:
MyActiveMQProfile:
provider: activemq
url: tcp://localhost:61616
ActiveMQ ブローカーをエージェントに組み込むことはできません。vm://
ブローカー接続の使用はサポートされていません。
# Azure Service Bus
Azure Service Bus では、カスタム JMS プロバイダーを使用します。Azure Service Bus に接続するには、以下の設定プロパティが必要です。
jms:
azureServiceBus:
provider: custom
class: org.apache.qpid.jms.JmsConnectionFactory
remoteURI: amqps://<host-name>.servicebus.windows.net
username: <policy-name>
password: "<primary-key>"
こちら (opens new window)から jar ファイルをダウンロードし、lib_ext
フォルダーに展開します。
config.yml ファイルにクラスパスを追加します。クラスパスプロパティの詳細については、こちらをご確認ください。
server:
classpath: lib_ext
# Apache Kafka プロファイル
kafka
セクションに Kafka コネクションプロファイルを定義する必要があります。Kafka に接続するには、以下の設定プロパティが必要です。
kafka:
MyKafkaProfile:
... connection properties ...
bootstrap.servers
や batch_size
など、任意の Kafka producer (opens new window) または consumer (opens new window) の設定プロパティを指定できます。
ただし、一部のプロパティは、オンプレミスエージェントにより上書きされ、設定できません。保護されたプロパティを再定義しようとすると、警告が表示されます。保護されたプロパティには、以下のようなものがあります。
プロパティ名 | コメント |
---|---|
key.serializer | StringSerializer のみがエージェントによってサポートされています。 |
value.serializer | StringSerializer のみがエージェントによってサポートされています。 |
key.deserializer | StringSerializer のみがエージェントによってサポートされています。 |
value.deserializer | StringSerializer のみがエージェントによってサポートされています。 |
auto.offset.reset | レシピによって定義されています。 |
enable.auto.commit | 内部で定義されています。 |
Workato Agent では、以下 (Kafka 以外) の設定プロパティもサポートしています。
プロパティ名 | 説明 |
---|---|
timeout | 一般的な操作のタイムアウト値 (ミリ秒) です。 |
url | プロトコルが kafka または kafka+ssl であるサーバー URL のカンマ区切りのリストです。 |
ssl.truststore | Kafka への安全な接続を確保するために、PEM形式でエンコードされたトラストストアのインライン化を許可します。 |
ssl.keystore.key | Kafka への安全な接続を確保するために、秘密鍵のインライン化を許可します。 |
ssl.keystore.cert | Kafka への安全な接続を確保するために、クライアント証明書のインライン化を許可します。 |
SSL/TLS を使用して Kafka に接続するときに、上記の ssl.*
オプションを使用できます。このオプションを使用すると、config.yml
ファイル内に PEM 形式でエンコードされた証明書と秘密鍵を維持できます。たとえば、YAML と互換性のある複数行の構文を以下のように使用できます。
kafka:
MyKafkaProfile:
ssl.truststore:
|
-----BEGIN CERTIFICATE-----
502mPNNAYkY4a7Zu84DLCXLFurEa4BhLBqLkzC6WdTrBN9z6Rp/svTIl6VgjSTP6
.....
-----END CERTIFICATE-----
パスワードで保護された秘密鍵はインライン化できないことに注意してください。
# Active Directory プロファイル
Active Directory コネクションプロファイルは、ldap
セクションで定義する必要があります。プロファイルの例 :
ldap:
active_directory_main:
url:
- ldap://acme1.ldap.com:389
- ldaps://acme2.ldap.com:636
username: Administrator
password: foobar
base: dc=acme,dc=com
ssl:
cert: /path/to/PEM-encoded-certificate-or-trusted-CA
trustAll: true
プロパティ名 | 説明 | |
---|---|---|
url 必須 |
使用する LDAP サーバーの URL。URL は ldap://myserver.example.com:389 という形式でなければなりません。SSL アクセスには、LDAPS プロトコルを使用します。URL は、同じ形式 ( ldaps://myserver.example.com:636 ) になります。フェイルオーバー機能が必要な場合は、複数の URL を指定できます。 | |
username 必須 |
LDAP サーバーでの認証時に使用するユーザー名 (プリンシパル)。これは通常、管理者ユーザーの識別名になります。たとえば cn=Administrator 、または単に Administrator などです。
| |
password 必須 | LDAP サーバーでの認証時に使用するパスワード (資格情報)。 | |
base 任意 |
すべてのリクエストのベース DN。この属性が設定されている場合、LDAP 操作に対して指定される、または LDAP 操作から取得されるすべての識別名は、この LDAP パスに対して相対的になります。これにより、大規模な LDAP ツリーでの作業が大幅に簡素化されます。 ただし、ベースパスにアクセスしなければならない場合もあります。詳細については、「ベース LDAP パスへの参照の取得」を参照してください。 | |
ssl 任意 | cert | PEM 形式でエンコードされた証明書または信頼される CA へのパス。 |
pem | PEM 形式でエンコードされた証明書の全内容。 | |
key |
相互 SSL をセットアップするための秘密鍵。pem が指定されている場合は、必須です。
| |
trustAll |
自己署名証明書を有効にするには、true に設定します。
|
# HTTP プロファイル
http
設定セクションでは、以下のように内部 HTTPS リソースへのエージェントのアクセスを設定できます。
http:
trustAll: true
verifyHost: true
自己署名証明書を使用する内部 HTTPS リソースにアクセスできるようエージェントを設定できます。自己署名証明書を有効にするには、trustAll
プロパティを true
に設定します。
通常、サーバー証明書の共通名 (またはサブジェクト代替名) のフィールドはターゲットのホスト名と一致している必要があります。ホスト名が一致していないサーバー証明書をエージェントが受け入れるようにするには、verifyHost
プロパティを false
に設定して (デフォルトは true
)、ホスト名の検証を無効にします。
# NTLM プロファイル
特定の HTTP リソースでは、NTLM 認証が必要です。この認証は、NTLM コネクションプロファイルを使用して実行できます。以下に、いくつかの NTLM プロファイルの例を示します。
ntlm:
MyNtlmProfile:
auth: "username:password@domain/workstation"
base_url: "http://myntlmhost.com"
cm_default_max_per_route: 15
cm_max_total: 100
verifyHost: true
trustAll: false
AnotherNtlmProfile:
auth: "domain/workstation"
username: "username"
password: "password"
base_url: "http://myntlmhost.com"
cm_default_max_per_route: 15
cm_max_total: 100
verifyHost: true
trustAll: false
以下のプロファイルプロパティがサポートされています。
プロパティ名 | 説明 |
---|---|
auth | NTLM 認証の完全な資格情報。これには、ユーザー名、パスワード、ドメイン、ワークステーションを含めることができます。 OPA バージョン2.4.7以降では、ユーザー名とパスワードに @ や / などの特殊文字が含まれている場合、以下に示すようにユーザー名とパスワードを個別に設定できます。 |
username | NTLM 認証のユーザー名。 (OPA バージョン2.4.7以降の場合のみ) |
password | NTLM 認証のパスワード。 (OPA バージョン2.4.7以降の場合のみ) |
base_url | NTLM リソースのベース URL。 |
cm_default_max_per_route | 任意。 ルート/ホストごとの接続数を設定します (正数を指定すること、デフォルトは5)。 |
cm_max_total | 任意。 接続の最大数を設定します (正数を指定すること、デフォルトは10)。 |
http_connect_timeout | 任意。 接続のリクエスト時に使用するミリ秒単位のタイムアウト値 (正数を指定すること、デフォルトは10000)。 |
http_connection_request_timeout | 任意。 接続が確立されるまでのミリ秒単位のタイムアウト値 (正数を指定すること、デフォルトは10000)。 |
http_socket_timeout | 任意。 ソケットのミリ秒単位のタイムアウト値。データを待機するときのタイムアウト値、つまり2つの連続するデータパケット間の最大非アクティブ期間です (正数を指定すること、デフォルトは10000)。 |
verifyHost | 任意。 SSL/TLS 接続に対してホスト名の検証を有効にするかどうかを指定します (デフォルトは true)。 |
trustAll | 任意。 SSL/TLS 接続に対してすべての証明書を信頼するかどうかを指定します (デフォルトは false)。 |
NTLM 接続でサポートされている HTTP メソッドは、GET
、POST
、PUT
、PATCH
、DELETE
、HEAD
です。
# コマンドラインスクリプトプロファイル
このプロファイルにより、ユーザーは OPA で任意のスクリプトまたはコマンドを実行できます。設定ファイルのスクリプト定義にはパラメータを指定できます。
アクションを宣言するときに、パラメータの値を指定する必要があります。
Unix でのプロファイルの例を以下に示します。
command_line_scripts:
workday_reports:
concurrency_limit: 3
timeout: 30
scripts:
copy_file:
name: Copy file
command:
- /bin/cp
- '{{source_file}}'
- '{{target_directory}}'
parameters:
- { name: source_file }
- { name: target_directory }
append_file_to_another:
name: Append file to another
command:
- bash
- -c
- cat {{source_file}} >> {{target_file}}
parameters:
# Parameter quoting
- { name: source_file, quote: '"' }
# Advanced parameter quoting
- { name: target_file, quote: { start: '"', end: '"', quote: '"', escape_char: \ } }
generate_report:
name: Generate report
command:
- python
- /home/user/script.py
- --from
- '{{from_date}}'
# Conditional fragment
- { value: --to, if: to_date }
# Conditional fragment
- { value: '{{to_date}}', if: to_date }
parameters:
- { name: from_date }
- { name: to_date, schema: { optional: true, control_type: select, pick_list: [01/01/2018, 02/02/2018] } }
コマンドラインスクリプトのプロファイルは、config.yml の command_line_scripts
セクションに配置されています。各プロファイルには複数のスクリプトを含めることができます。プロファイルの設定プロパティは以下のとおりです。
プロパティ名 | 説明 |
---|---|
scripts | スクリプトのハッシュ。各キーの値にはスクリプトプロファイルが含まれます。 |
concurrency_limit | 任意。 同時に実行されるスクリプトの最大数。指定されない場合は、デフォルトの10になります。制限に達すると、リクエストはキューに入れられます。 |
timeout | 任意。 各スクリプト実行の最大期間 (秒単位)。指定されない場合は、デフォルトの90秒になります。 |
ハッシュキーは、スクリプトプロファイルの一意の識別子として使用されます。スクリプトの設定プロパティは以下のとおりです。
プロパティ名 | 説明 |
---|---|
name | レシピ UI に表示されるスクリプトのわかりやすい名前です。 |
command | コマンド呼び出しの配列。各項目の値では、Mustache (opens new window) テンプレートの変数を使用してパラメータの値を置換できます。 |
parameters | 任意。 パラメータ配列 (デフォルトは空の配列)。 |
コマンド呼び出し要素の設定には文字列だけを指定できますが、以下のプロパティを含めることもできます。
プロパティ名 | 説明 |
---|---|
value | コマンド呼び出し要素の値。 |
if | パラメータ名。パラメータ値が空の場合は、このコマンド呼び出し要素は考慮されません。 |
パラメータの設定プロパティは以下のとおりです。
プロパティ名 | 説明 |
---|---|
name | パラメータ名。 |
quote | 任意。 パラメータの引用文字のルール (デフォルトではルールなし)。 |
schema | 任意。 パラメータのスキーマ。 |
引用文字の設定には、1つの文字列のみを指定することも、または複数のプロパティを指定することもできます。プロパティは以下のとおりです。
プロパティ名 | 説明 |
---|---|
start | 開始の引用文字。 |
end | 終了の引用文字。 |
quote | パラメータ値内のエスケープされる引用文字。 |
escape_char | エスケープ文字。 |
引用文字の設定に1つの文字列を使用する場合、その値は start
、end
、および quote
プロパティの値と見なされます。また escape_char
プロパティの値は Unix では「\」、Windows では「""」に設定されます。
パラメータのスキーマ設定には、以下のようなプロパティを指定できます。
プロパティ名 | 説明 |
---|---|
任意 | 任意。 パラメータのオプションのフラグ (デフォルトは false)。 |
label | 任意。 レシピ UI に表示されるスクリプトのわかりやすい名前 (デフォルトでは、パラメータの名前)。 |
control_type | 任意。 「text」または「select」。「select」の場合は、「pick_list」プロパティも定義する必要があります。デフォルトは「text」です。 |
pick_list | 任意。 パラメータ値を選択するための値です。「control_type」プロパティの値が「select」に設定されている場合は、このプロパティを定義する必要があります。 |
# 拡張機能プロファイル
Java 拡張機能を使用するには、拡張機能プロファイルを定義する必要があります。jar
ファイルが配置される場所の定義は server
セクションで、また Java クラスの個々のプロファイルの作成は extensions
セクションで行います。Java 拡張機能の設定の例を以下に示します。
server:
classpath: ext
extensions:
security:
controllerClass: com.mycompany.onprem.SecurityExtension
secret: HA63A3043AMMMM
server パラメータの設定プロパティは以下のとおりです。
プロパティ名 | 説明 |
---|---|
classpath | ユーザー定義のクラスの場所を指定します。 |
各 extensions プロファイルの設定プロパティは以下のとおりです。
プロパティ名 | 説明 |
---|---|
controllerClass | 拡張機能をマッピング先の Java クラスを OPA に通知するための必須フィールドです。 |
secret | Java クラスで使用されるオプションの環境プロパティです。複数のプロパティを追加できます。 |
Java 拡張機能の作成方法の説明をご覧ください。
# サーバープロファイル
サーバープロファイルでは、OPA アセットがオンプレミスサーバーのどこに配置されるのかを定義します。サーバープロファイルは config.yml
の server
セクションに配置されます。
server:
classpath: lib_ext
staging: staging
このセクションでは、以下の項目について説明します。
# プロファイルのプロパティ
サーバープロファイルには、以下のプロパティを含めることができます。
名前 | 種類 | 説明 |
---|---|---|
classpath | 必須 | Java ドライバーまたはユーザー定義のクラスを格納するディレクトリを定義します。例 : jar ファイル または ドライバークラス。
注 : これは、OPA インストールフォルダーの既存のサブディレクトリでなければなりません。 |
staging | 必須 ** | ターゲットシステムへの読み込み中に、一時的にデータを格納するステージングフォルダーを定義します。注 : これは、OPA インストールフォルダーの既存のサブディレクトリでなければなりません。
指定しないままにすると、OPA はステージングフォルダーを内部で管理します。 ステージングフォルダーに格納されているファイルは、OPA によりターゲットシステムに読み込まれた後、自動的に削除されます。 ** OPA バージョン2.9.3以前では必須です。バージョン2.10以降では任意です。 |
# 設定例
以下のディレクトリ構造を用いたプロファイルの設定例をいくつか見てみましょう。この例では、オンプレミスエージェントは /opt/workato-agent
にインストールされます。
/opt
├── /workato_agent
├── /conf
├── /bin
├── /lib_ext
├── /staging
以下の例では、Java ドライバークラスまたはユーザー定義のクラスを格納する jdbc
ディレクトリを定義します。
server:
classpath: lib_ext
次に、staging
プロパティの設定方法を説明します。このプロパティでは、OPA がターゲットシステムへの読み込み中にファイルを一時的に格納する場所を定義します。
たとえば、SQL Server の[Export query result] アクションを実行する場合、CSV 出力は /staging
ディレクトリに一時的に格納され、ファイルが読み込まれた後に削除されます。
server:
classpath: lib_ext
staging: staging
Last updated: 2023/8/31 1:07:14