REST APIリファレンス > データ取り込みおよびレプリケーションREST API > ストリーミング取り込みとレプリケーションREST API
  

ストリーミング取り込みとレプリケーションREST API

ストリーミング取り込みとレプリケーションREST APIリソースを使用して、ストリーミング取り込みとレプリケーションタスクの作成、デプロイ、デプロイ解除、開始、停止、コピー、更新や、ストリーミング取り込みとレプリケーションジョブの監視を行うことができます。
ストリーミング取り込みとレプリケーションリソースを使用する場合は、次の要求ヘッダー形式を使用してください。

<METHOD><base URL>
Content-Type: application/json
Accept: application/json
IDS-SESSION-ID: <SessionId>

ストリーミング取り込みおよびレプリケーションタスクの作成

CreateEntity/Documentsリソースを使用し、ストリーミング取り込みとレプリケーションタスクを作成します。

POST要求

ストリーミング取り込みとレプリケーションタスクを作成するには、次のURLを使用します。
POST <server URI>/sisvc/restapi/v1/CreateEntity/Documents
次の要求ヘッダーを使用します。
POST <server URI>/sisvc/restapi/v1/CreateEntity/Documents
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID: <SessionId>

POST要求のサンプル

ストリーミング取り込みとレプリケーションタスクを作成する際にはこのサンプルを参考にしてください。
POST <server URI>/sisvc/restapi/v1/CreateEntity/Documents
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID:2l0oeVx22Rujiej7yTokmT
{
"name": "FileToFile17",
"description": "FileToFile_V2",
"runtimeId": "01000025000000000003",
"locationId": "8ubL3nIupMqk6bJC2mYtkh",
"currentVersion": "2",
"messageFormat": "binary",
"documentState": "VALID",
"parentInfo": [
{
"parentId": "8ubL3nIupMqk6bJC2mYtkh",
"parentName": "ng",
"parentType": "Project"
}
],
"nodes": [
{
"name": "FileToFile_source",
"type": "source",
"connectionId": "0100000B000000000002",
"transformationType": "",
"config": [
{
"key": "File",
"value": "siagent.log"
},
{
"key": "initialPosition",
"value": "Current Time"
},
{
"key": "rolloverPattern",
"value": ""
},
{
"key": "tailingMode",
"value": "Single file"
}
]
},
{
"name":"Filter",
"serviceType":"transformation",
"type":"filter",
"metaMetadata":"",
"config": [{
"key":"messageFormat",
"value":"binary"
}, {
"key":"transformationName",
"value":"Filter"
}, {
"key":"filterType",
"value":"regEx"
}, {
"key":"expression",
"value":"*"
}, {
"key":"name",
"value":"filter"
}
]
},
{
"name": "FileToFile_target",
"type": "target",
"connectionId": "0100000B000000000002",
"transformationType": "",
"config": [
{
"key": "File Name",
"value": "testing.log"
},
{
"key": "interimDirectory",
"value": "/home/agent/infa/test_file_target"
},
{
"key": "rolloverSize",
"value": 100
},
{
"key": "rolloverEvents",
"value": 100
},
{
"key": "rolloverTime",
"value": 100
}
]
}
],
"edges": [
{
"from": "FileToFile_source",
"to": "Filter"
},
{
"from": "Filter",
"to": "FileToFile_target"
}
],
"runtimeOptions": {
"maxLogSize": {
"value": 10,
"unit": "MB"
},
"logLevel": "INFO"
}
}

POST応答

要求が成功すると、サービスはHTTPステータスコード200 OKを返します。

ストリーミング取り込みとレプリケーションタスクのデプロイ、デプロイ解除、開始、および停止

dataflowsリソースを使用して、ストリーミング取り込みとレプリケーションタスクをデプロイ、デプロイ解除、開始、および停止します。
次のベースURLを使用する。
<server URI>/sisvc/api/v1/Dataflows('<dataflow ID>')/OData.SI.<API name>
注:
HTTPバージョンを自動的に含めるPostmanなどのツールを使用する場合は、URLにHTTPバージョンを入力しないでください。HTTPバージョンがURLに2回出現すると、要求が失敗します。

ストリーミング取り込みとレプリケーションタスクのデプロイ

POST要求を使用してストリーミング取り込みとレプリケーションタスクをデプロイします。

POST要求

ストリーミング取り込みとレプリケーションタスクをデプロイするには、次のURLを使用します。
<server URI>/sisvc/api/v1/Dataflows('<dataflow ID>')/OData.SI.Deploy
URLはデータフローIDを渡すため、要求本文は必要ありません。

POST要求の例

ストリーミング取り込みとレプリケーションタスクをデプロイするには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/api/v1/Dataflows('50077311-d4a4-437c-9218-c3596d1f182f')/OData.SI.Deploy
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID:2l0oeVx22Rujiej7yTokmT

POST応答の例

要求が成功した場合、次の例のような応答を受信します。
{
"@odata.context": "$metadata#OData.SI.DeploymentResult",
"successful": true,
"code": null,
"errorMessage": null
}

ストリーミング取り込みとレプリケーションタスクのデプロイ解除

POST要求を使用してストリーミング取り込みとレプリケーションタスクをデプロイ解除します。

POST要求

ストリーミング取り込みとレプリケーションタスクをデプロイ解除するには、次のURLを使用します。
<server URI>/sisvc/api/v1/Dataflows('<dataflow ID>')/OData.SI.Undeploy
URLはデータフローIDを渡すため、要求本文は必要ありません。

POST要求の例

ストリーミング取り込みとレプリケーションタスクをデプロイ解除するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/api/v1/Dataflows('50077311-d4a4-437c-9218-c3596d1f182f')/OData.SI.Undeploy
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID:2l0oeVx22Rujiej7yTokmT

POST応答の例

要求が成功した場合、次の例のような応答を受信します。
{
"@odata.context": "$metadata#OData.SI.DeploymentResult",
"successful": true,
"code": null,
"errorMessage": null
}

ストリーミング取り込みとレプリケーションタスクの開始

POST要求を使用してストリーミング取り込みとレプリケーションタスクを開始します。

POST要求

ストリーミング取り込みとレプリケーションタスクを開始するには、次のURLを使用します。
<server URI>/sisvc/api/v1/Dataflows('<dataflow ID>')/OData.SI.Start
URLはデータフローIDを渡すため、要求本文は必要ありません。

POST要求の例

ストリーミング取り込みとレプリケーションタスクを開始するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/api/v1/Dataflows('50077311-d4a4-437c-9218-c3596d1f182f')/OData.SI.Start
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID:2l0oeVx22Rujiej7yTokmT

POST応答の例

要求が成功した場合、次の例のような応答を受信します。
{
"@odata.context": "$metadata#OData.SI.DeploymentResult",
"successful": true,
"code": null,
"errorMessage": null
}

ストリーミング取り込みとレプリケーションタスクの停止

POST要求を使用してストリーミング取り込みとレプリケーションタスクを停止します。

POST要求

ストリーミング取り込みとレプリケーションタスクを停止するには、次のURLを使用します。
<server URI>/sisvc/api/v1/Dataflows('<dataflowID>')/OData.SI.Stop
URLはデータフローIDを渡すため、要求本文は必要ありません。

POST要求の例

ストリーミング取り込みとレプリケーションタスクを停止するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/api/v1/Dataflows('d7572789-dc4c-4c56-bbeb-3772736d61aa')/OData.SI.Stop
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID:2l0oeVx22Rujiej7yTokmT

POST応答の例

要求が成功した場合、次の例のような応答を受信します。
{
"@odata.context": "$metadata#OData.SI.DeploymentResult",
"successful": true,
"code": null,
"errorMessage": null
}

ストリーミング取り込みとレプリケーションタスクのコピー

ストリーミング取り込みとレプリケーションタスクをコピーするには、CopyEntitiesリソースを使用します。

POST要求

ストリーミング取り込みとレプリケーションタスクをコピーするには、次のURLを使用します。
<server URI>/sisvc/restapi/v1/CopyEntities
要求に以下のフィールドを含めることができます。
フィールド
タイプ
必須
説明
targetLocationID
String
オブジェクトのコピー先となるターゲットの場所のID。
sourceEntities
配列
ソース接続とターゲット接続の設定。
sourceId
String
ソースオブジェクトのID。
targetName
String
ターゲットオブジェクトの名前。
targetDescription
String
-
ターゲットオブジェクトの説明。

POST要求の例

2つのストリーミング取り込みとレプリケーションタスクをコピーするには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/restapi/v1/CopyEntities
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID:2l0oeVx22Rujiej7yTokmT
{
"targetLocationID": "2RGmVdwN15PbfnQP5PSoSB",
"sourceEntities": [
{
"sourceId": "5Ff6jeaSh2UfAqiV01ldKD",
"targetName": "Test_Copy_A",
"targetDescription": "Description_1"
},
{
"sourceId": "fZnCSqcWTOQkJOr8VCWZQE",
"targetName": "Test_Copy_B",
"targetDescription": "Description_2"
}
]
}
要求が失敗すると、応答にエラーの理由が含まれます。

POST応答

POST要求を使用してストリーミング取り込みとレプリケーションタスクをコピーした場合、成功すると成功応答を返し、エラーが発生した場合はエラーオブジェクトを返します。

POST応答の例

要求が成功した場合、次の例のような応答を受信します。
{
"Status Message": "Operation succeeded on 2 artifacts.",
"Success": {
"Test_Copy_A": "ideNJw6l54gizxofF53HQH",
"Test_Copy_B": "cOQ3gcWKSYikzVqqg6IOok"
}
}

ストリーミング取り込みとレプリケーションタスクの更新

ストリーミング取り込みとレプリケーションタスクを更新するには、UpdateEntityリソースを使用します。Amazon Kinesis、Amazon S3 V2、Microsoft Azure Event Hub、Microsoft Azure Data Lake Storage Gen2、フラットファイル、JDBC V2、JMS、Kafka、またはMQTTのコネクタを使用するストリーミング取り込みとレプリケーションタスクを更新できます。

POST要求

POST要求を使用してストリーミング取り込みとレプリケーションタスクを更新します。
ストリーミング取り込みとレプリケーションタスクを更新するには、次のURLを使用します。
<server URI>/sisvc/restapi/v1/UpdateEntity/Documents('<document ID>')
要求に以下のフィールドを含めることができます。
フィールド
タイプ
必須
説明
name
String
タスクの名前。
description
String
-
タスクの説明。
runtimeId
String
ランタイム環境のID。
currentVersion
String
最新のデータフローオブジェクトバージョン。
nodes
配列
タスクのソース接続とターゲット接続の詳細。

ノード配列のフィールド

配列内のフィールドによって、接続の名前、タイプ、および接続IDを指定します。これには、編集可能なキーと値のペアであるソース接続とターゲット接続の設定が含まれます。nodes配列には以下のフィールドを含めることができます。
フィールド
タイプ
必須
説明
name
String
接続の名前。
type
String
接続タイプ、ソースまたはターゲット。
connectionId
String
接続のID。
transformationType
String
-
該当なし。
config
配列
ソース接続とターゲット接続の設定。

POST応答

REST APIはアクションの実行に成功すると、200または201成功応答が返されます。REST APIでエラーが発生すると、適切なエラーコードが返されます。
要求が成功した場合、応答は次のフィールドを返します。
フィールド
タイプ
説明
name
String
タスクの名前。
description
String
タスクの説明(存在する場合)。
runtimeId
String
ランタイム環境のID。
currentVersion
String
最新のデータフローオブジェクトバージョン。
nodes
配列
タスクのソース接続とターゲット接続の詳細。

ノード配列のフィールド

応答には、nodes配列の以下のフィールドが含まれます。
フィールド
タイプ
説明
name
文字列
接続の名前。
タイプ
文字列
接続タイプ。
connectionId
文字列
接続のID。
transformationType
文字列
トランスフォーメーションのタイプ。
config
文字列
キーと値のペアであるソース接続とターゲット接続の設定。配列内のキーは、ソース接続とターゲット接続のタイプによって異なります。
要求が失敗すると、応答にエラーの理由が含まれます。

MQTTソース

タスクソースのソース接続がMQTTの場合、ソース接続の構成配列に次のフィールドおよびキーと値のペアを含めることができます。
キー
タイプ
必須
説明
ClientID
String
-
MQTTソースとMQTTブローカ間の接続を識別する一意の識別子。クライアントIDは、MQTTソースがメッセージの処理中にメッセージを格納するために使用するファイルベースの永続ストアです。
255文字までの文字列を入力できます。
MaxQueueSize
Integer
-
プロセッサがメモリに保存できるメッセージの最大数。
1から2147483647までの数値を入力できます。
トピック
String
MQTTトピックの名前。

POST要求の例

MQTTソースとフラットファイルターゲットを使用するストリーミング取り込みとレプリケーションタスクを更新するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/restapi/v1/UpdateEntity/Documents('<document ID>')
Content-Type: application/json
Accept: application/json
IDS-SESSION-ID: <SessionId>

{
"name": "mqtt to flatfile",
"description": "mqtt to flatfile",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "mqtt to flatfile_source",
"type": "source",
"connectionId": "012MGS0B00000000001O",
"transformationType": "",
"config": [
{
"key": "ClientID",
"value": "test"
},
{
"key": "MaxQueueSize",
"value": 1024
},
{
"key": "Topic",
"value": "test"
}
]
},
{
"name": "mqtt to flatfile_target",
"type": "target",
"connectionId": "012MGS0B00000000002N",
"transformationType": "",
"config": [
{
"key": "interimDirectory",
"value": "/home/agent/test"
},
{
"key": "rolloverSize",
"value": 1024
},
{
"key": "rolloverEvents",
"value": 100
},
{
"key": "rolloverTime",
"value": 300000
},
{
"key": "File Name",
"value": "test"
}
]
}
],
"edges": [
{
"from": "mqtt to flatfile_source",
"to": "mqtt to flatfile_target"
}
]
}
応答は、要求で入力したフィールドのみを返します。要求が失敗すると、応答にエラーの理由が含まれます。

POST応答の例

要求が成功した場合、Successノードで次の例のような応答を受信することがあります。
{
"Success": {
"name": "mqtt to flatfile",
"description": "mqtt to flatfile",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "mqtt to flatfile_source",
"type": "source",
"connectionId": "012MGS0B00000000001O",
"transformationType": "",
"config": [
{
"key": "ClientID",
"value": "test"
},
{
"key": "MaxQueueSize",
"value": 1024
},
{
"key": "Topic",
"value": "test"
}
]
},
{
"name": "mqtt to flatfile_target",
"type": "target",
"connectionId": "012MGS0B00000000002N",
"transformationType": "",
"config": [
{
"key": "interimDirectory",
"value": "/home/agent/test"
},
{
"key": "rolloverSize",
"value": 1024
},
{
"key": "rolloverEvents",
"value": 100
},
{
"key": "rolloverTime",
"value": 300000
},
{
"key": "File Name",
"value": "test"
}
]
}
],
"edges": [
{
"from": "mqtt to flatfile_source",
"to": "mqtt to flatfile_target"
}
]
}
}

JMSソース

タスクソースのソース接続がJMSの場合、ソース接続の構成配列に次のフィールドおよびキーと値のペアを含めることができます。
キー
タイプ
必須
説明
destinationType
String
ソースサービスがJMSメッセージを送信する接続先のタイプ。次のいずれかの値を入力します。
  • - [キュー]。JMSプロバイダは、キューに登録されている単一のコンシューマにメッセージを配信します。
  • - [トピック]。JMSプロバイダは、トピックにサブスクライブしているすべてのアクティブなコンシューマにメッセージを配信します。
clientId
String
JMS接続の一意のID。255文字までの文字列を入力できます。
sharedSubscription
String
複数のコンシューマが単一のサブスクリプションにアクセスできるようにします。トピックの接続先タイプに適用されます。次のいずれかの値を入力します。
  • - True
  • - False
durableSubscription
String
Trueに設定した場合、JMSソースサービスは、非アクティブなサブスクライバがメッセージを保持し、サブスクライバが再接続したときにそれらのメッセージを配信できるようにします。トピックの接続先タイプに適用されます。次のいずれかの値を入力します。
  • - True
  • - False
subscriptionName
String
サブスクリプションの名前。トピックサブスクリプションタイプが共有、継続、またはその両方である場合に、トピックの接続先タイプに適用されます。
JMS接続先
String
JMSプロバイダがメッセージを配信するキューまたはトピックの名前。

POST要求の例

JMSソースとフラットファイルターゲットを使用するストリーミング取り込みとレプリケーションタスクを更新するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/restapi/v1/UpdateEntity/Documents('<document ID>')
Content-Type: application/json
Accept: application/json
IDS-SESSION-ID: <SessionId>

{
"name": "crud",
"description": "JMS to FileToFile",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "crud_source",
"type": "source",
"connectionId": "012MGS0B000000000003",
"transformationType": "",
"config": [
{
"key": "destinationType",
"value": "QUEUE"
},
{
"key": "clientId",
"value": ""
},
{
"key": "JMS Destination",
"value": "test"
}
]
},
{
"name": "crud_target",
"type": "target",
"connectionId": "012MGS0B00000000000H",
"transformationType": "",
"config": [
{
"key": "interimDirectory",
"value": "/home/agent/test"
},
{
"key": "rolloverSize",
"value": 1024
},
{
"key": "rolloverEvents",
"value": 100
},
{
"key": "rolloverTime",
"value": 300000
},
{
"key": "File Name",
"value": "test"
}
]
}
],
"edges": [
{
"from": "crud_source",
"to": "crud_target"
}
]
}
応答は、要求で入力したフィールドのみを返します。要求が失敗すると、応答にエラーの理由が含まれます。

POST応答の例

要求が成功した場合、Successノードで次の例のような応答を受信することがあります。
{
"Success": {
"name": "crud",
"description": "JMS to FileToFile",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "crud_source",
"type": "source",
"connectionId": "012MGS0B000000000003",
"transformationType": "",
"config": [
{
"key": "destinationType",
"value": "QUEUE"
},
{
"key": "clientId",
"value": ""
},
{
"key": "JMS Destination",
"value": "test"
}
]
},
{
"name": "crud_target",
"type": "target",
"connectionId": "012MGS0B00000000000H",
"transformationType": "",
"config": [
{
"key": "interimDirectory",
"value": "/home/agent/test"
},
{
"key": "rolloverSize",
"value": 1024
},
{
"key": "rolloverEvents",
"value": 100
},
{
"key": "rolloverTime",
"value": 300000
},
{
"key": "File Name",
"value": "test"
}
]
}
],
"edges": [
{
"from": "crud_source",
"to": "crud_target"
}
]
}
}

Microsoft Azure Data Lake Storage Gen2(ADLS Gen2)ターゲット

タスクターゲットのターゲット接続がADLS Gen2の場合、ターゲット接続の構成配列に次のフィールドおよびキーと値のペアを含めることができます。
キー
タイプ
必須
説明
writeStrategy
String
ADLS Gen2ストレージに同じ名前のファイルが存在する場合に実行するアクション。
次のいずれかの値を入力します。
  • - 付加。既存のファイルにデータを追加します。
  • - 上書き。既存のファイルを新しいファイルに置き換えます。
  • - 失敗。要求を失敗させます。
  • - ロールオーバー。現在のファイルを閉じ、設定されたロールオーバー値に基づいて新しいファイルを作成します。
rolloverSize *
Integer
-
ロールオーバーをトリガする際のターゲットファイルサイズ(KB)。ロールオーバー書き込みストラテジに適用されます。
1から2147483647までの数値を入力できます。
rolloverEvents *
Integer
-
ロールオーバーの前に蓄積するイベントまたはメッセージの数。ロールオーバー書き込みストラテジに適用されます。
1から2147483647までの数値を入力できます。
rolloverTime *
Integer
-
ロールオーバーをトリガするまでの時間(ミリ秒単位)。ロールオーバー書き込みストラテジに適用されます。
1から2147483647までの数値を入力できます。
filesystemNameOverride
String
-
接続で提供されたデフォルトのファイルシステム名をオーバーライドします。このファイルシステム名は、実行時にファイルに書き込むために使用されます。
1280文字までの文字列を入力できます。
directoryOverride
String
-
デフォルトのディレクトリパスをオーバーライドします。データを書き込む先のADLS Gen2ディレクトリパス。空白の場合は、デフォルトのディレクトリパスが使用されます。
1280文字までの文字列を入力できます。
compressionFormat
String
-
ストリーミング取り込みタスクがターゲットファイルにデータを書き込む前に使用する圧縮形式。
次のいずれかの値を入力します。
  • - なし
  • - GZIP
  • - BZIP2
  • - DEFAULT1
  • Zlib形式を使用するには、この値を入力します。
  • - DEFAULT2
  • Deflate形式を使用するには、この値を入力します。
ファイル名/式
String
ADLS Gen2ファイル名または正規表現。
249文字までの文字列を入力できます。
* これらのフィールドの少なくとも1つに値を入力してください。

POST要求の例

フラットファイルソースとADLS Gen2ターゲットを使用するストリーミング取り込みとレプリケーションタスクを更新するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/restapi/v1/UpdateEntity/Documents('<document ID>')
Content-Type: application/json
Accept: application/json
IDS-SESSION-ID: <SessionId>

{
"name": "flatfile to adls",
"description": "flatfile to adls",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "flatfile to adls_source",
"type": "source",
"connectionId": "012MGS0B00000000002N",
"transformationType": "",
"config": [
{
"key": "File",
"value": "logfile"
},
{
"key": "initialPosition",
"value": "Current Time"
},
{
"key": "rolloverPattern",
"value": "test"
},
{
"key": "tailingMode",
"value": "Single file"
}
]
},
{
"name": "flatfile to adls_target",
"type": "target",
"connectionId": "012MGS0B00000000003D",
"transformationType": "",
"config": [
{
"key": "writeStrategy",
"value": "Rollover"
},
{
"key": "filesystemNameOverride",
"value": "test"
},
{
"key": "File Name/Expression",
"value": "test"
},
{
"key": "compressionFormat",
"value": "NONE"
},
{
"key": "directoryOverride",
"value": "/test"
},
{
"key": "interimDirectory",
"value": "/home/agent/test"
},
{
"key": "rolloverSize",
"value": 1024
},
{
"key": "rolloverEvents",
"value": 100
},
{
"key": "rolloverTime",
"value": 300000
}
]
}
]
}
応答は、要求で入力したフィールドのみを返します。要求が失敗すると、応答にエラーの理由が含まれます。

POST応答の例

要求が成功した場合、Successノードで次の例のような応答を受信することがあります。
{
"Success": {
"name": "flatfile to adls",
"description": "flatfile to adls",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "flatfile to adls_source",
"type": "source",
"connectionId": "012MGS0B00000000002N",
"transformationType": "",
"config": [
{
"key": "File",
"value": "logfile"
},
{
"key": "initialPosition",
"value": "Current Time"
},
{
"key": "rolloverPattern",
"value": "test"
},
{
"key": "tailingMode",
"value": "Single file"
}
]
},
{
"name": "flatfile to adls_target",
"type": "target",
"connectionId": "012MGS0B00000000003D",
"transformationType": "",
"config": [
{
"key": "writeStrategy",
"value": "Rollover"
},
{
"key": "filesystemNameOverride",
"value": "test"
},
{
"key": "File Name/Expression",
"value": "test"
},
{
"key": "compressionFormat",
"value": "NONE"
},
{
"key": "directoryOverride",
"value": "/test"
},
{
"key": "interimDirectory",
"value": "/home/agent/test"
},
{
"key": "rolloverSize",
"value": 1024
},
{
"key": "rolloverEvents",
"value": 100
},
{
"key": "rolloverTime",
"value": 300000
}
]
}
]
}
}

Amazon S3ターゲット

タスクターゲットのターゲット接続がAmazon S3の場合、ターゲット接続の構成配列に次のフィールドおよびキーと値のペアを含めることができます。
キー
タイプ
必須
説明
partitionTime
String
-
ストリーミング取り込みタスクがAmazon S3バケットにパーティションを作成する際に従う時間間隔。
次のいずれかの値を入力します。
  • - なし
  • - 5分
  • - 10分
  • - 15分
  • - 20分
  • - 30分
  • - 1時間
  • - 1日
minUploadPartSize
Integer
-
複数の独立したパートセットとしてサイズの大きなファイルをアップロードする場合の最小パートサイズ(MB単位)。このプロパティを使用して、ファイルのロードをAmazon S3に合わせます。
50から5120までの数値を入力できます。
multipartUploadThreshold
Integer
-
オブジェクトを複数のパートで並行してアップロードする場合のマルチパートしきい値。
50から5120までの数値を入力できます。
オブジェクト名/式
String
Amazon S3ターゲットファイル名、またはAmazon S3ファイル名パターンの正規表現。

POST要求の例

フラットファイルソースとAmazon S3ターゲットを使用するストリーミング取り込みとレプリケーションタスクを更新するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/restapi/v1/UpdateEntity/Documents('<document ID>')
Content-Type: application/json
Accept: application/json
IDS-SESSION-ID: <SessionId>

{
"name": "flatfile to amazon S3",
"description": "flatfile to amazon S3",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "flatfile to amazon S3_source",
"type": "source",
"connectionId": "012MGS0B00000000002N",
"transformationType": "",
"config": [
{
"key": "File",
"value": "logfile"
},
{
"key": "initialPosition",
"value": "Current Time"
},
{
"key": "rolloverPattern",
"value": "test"
},
{
"key": "tailingMode",
"value": "Single file"
}
]
},
{
"name": "flatfile to amazon S3_target",
"type": "target",
"connectionId": "012MGS0B0000000000I7",
"transformationType": "",
"config": [
{
"key": "partitionTime",
"value": "None"
},
{
"key": "minUploadPartSize",
"value": 5120
},
{
"key": "multipartUploadThreshold",
"value": 5120
},
{
"key": "Object Name/Expression",
"value": "test"
}
]
}
],
"edges": [
{
"from": "flatfile to amazon S3_source",
"to": "flatfile to amazon S3_target"
}
]
}
応答は、要求で入力したフィールドのみを返します。要求が失敗すると、応答にエラーの理由が含まれます。

POST応答の例

要求が成功した場合、Successノードで次の例のような応答を受信することがあります。
{
"Success": {
"name": "flatfile to amazon S3",
"description": "flatfile to amazon S3",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "flatfile to amazon S3_source",
"type": "source",
"connectionId": "012MGS0B00000000002N",
"transformationType": "",
"config": [
{
"key": "File",
"value": "logfile"
},
{
"key": "initialPosition",
"value": "Current Time"
},
{
"key": "rolloverPattern",
"value": "test"
},
{
"key": "tailingMode",
"value": "Single file"
}
]
},
{
"name": "flatfile to amazon S3_target",
"type": "target",
"connectionId": "012MGS0B0000000000I7",
"transformationType": "",
"config": [
{
"key": "partitionTime",
"value": "None"
},
{
"key": "minUploadPartSize",
"value": 5120
},
{
"key": "multipartUploadThreshold",
"value": 5120
},
{
"key": "Object Name/Expression",
"value": "test"
}
]
}
],
"edges": [
{
"from": "flatfile to amazon S3_source",
"to": "flatfile to amazon S3_target"
}
]
}
}

Azure Event Hubsターゲット

タスクターゲットのターゲット接続がAzure Event Hubsの場合、ターゲット接続の構成配列に次のフィールドおよびキーと値のペアを含めることができます。
キー
タイプ
必須
説明
sasPolicyName
String
-
Event Hub名前空間共有アクセスポリシーの名前。
255文字までの文字列を入力できます。
sasPolicyPrimaryKey
String
-
Event Hub名前空間共有アクセスポリシーのプライマリキー。
255文字までの文字列を入力できます。
Event Hub
String
Azure Event Hubsの名前。
255文字までの文字列を入力できます。名前には、小文字、大文字、数字、および特殊文字(「-」および「_」)を含めることができます。

POST要求の例

フラットファイルソースとAzure Event Hubsターゲットを使用するストリーミング取り込みとレプリケーションタスクを更新するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/restapi/v1/UpdateEntity/Documents('<document ID>')
Content-Type: application/json
Accept: application/json
IDS-SESSION-ID: <SessionId>

{
"name": "flatfile to azure event hub",
"description": "flatfile to azure event hub",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "flatfile to azure event hub_source",
"type": "source",
"connectionId": "012MGS0B00000000002N",
"transformationType": "",
"config": [
{
"key": "File",
"value": "logfile"
},
{
"key": "initialPosition",
"value": "Current Time"
},
{
"key": "rolloverPattern",
"value": "test"
},
{
"key": "tailingMode",
"value": "Single file"
}
]
},
{
"name": "flatfile to azure event hub_target",
"type": "target",
"connectionId": "012MGS0B00000000001S",
"transformationType": "",
"config": [
{
"key": "sasPolicyName",
"value": "test"
},
{
"key": "sasPolicyPrimaryKey",
"value": "test"
},
{
"key": "Event Hub",
"value": "test"
}
]
}
],
"edges": [
{
"from": "flatfile to azure event hub_source",
"to": "flatfile to azure event hub_target"
}
]
}
応答は、要求で入力したフィールドのみを返します。要求が失敗すると、応答にエラーの理由が含まれます。

POST応答の例

要求が成功した場合、Successノードで次の例のような応答を受信することがあります。
{
"Success": {
"name": "flatfile to azure event hub",
"description": "flatfile to azure event hub",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "flatfile to azure event hub_source",
"type": "source",
"connectionId": "012MGS0B00000000002N",
"transformationType": "",
"config": [
{
"key": "File",
"value": "logfile"
},
{
"key": "initialPosition",
"value": "Current Time"
},
{
"key": "rolloverPattern",
"value": "test"
},
{
"key": "tailingMode",
"value": "Single file"
}
]
},
{
"name": "flatfile to azure event hub_target",
"type": "target",
"connectionId": "012MGS0B00000000001S",
"transformationType": "",
"config": [
{
"key": "sasPolicyName",
"value": "test"
},
{
"key": "sasPolicyPrimaryKey",
"value": "test"
},
{
"key": "Event Hub",
"value": "test"
}
]
}
],
"edges": [
{
"from": "flatfile to azure event hub_source",
"to": "flatfile to azure event hub_target"
}
]
}
}

JDBC V2ターゲット

タスクターゲットのターゲット接続がJDBC V2の場合、ターゲット接続の構成配列に次のフィールドおよびキーと値のペアを含めることができます。
キー
タイプ
必須
説明
Table Name
String
JSON形式でデータを挿入するテーブルの名前。
988文字までの文字列を入力します。

POST要求の例

フラットファイルソースとJDBC V2ターゲットを使用するストリーミング取り込みとレプリケーションタスクを更新するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/restapi/v1/UpdateEntity/Documents('<document ID>')
Content-Type: application/json
Accept: application/json
IDS-SESSION-ID: <SessionId>

{
"name": "FileFile to jdbc",
"description": "FileToFile to jdbc_target",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "flatfile to jdbc_source",
"type": "source",
"connectionId": "012MGS0B00000000002N",
"transformationType": "",
"config": [
{
"key": "initialPosition",
"value": "Current Time"
},
{
"key": "tailingMode",
"value": "Single file"
},
{
"key": "rolloverPattern",
"value": "test"
},
{
"key": "File",
"value": "logfile"
}
]
},
{
"name": "flatfile to jdbc_target",
"type": "target",
"connectionId": "012MGS0B0000000000KF",
"transformationType": "",
"config": [
{
"key": "Table Name",
"value": "table"
}
]
}
],
"edges": [
{
"from": "flatfile to jdbc_source",
"to": "flatfile to jdbc_target"
}
]
}
応答は、要求で入力したフィールドのみを返します。要求が失敗すると、応答にエラーの理由が含まれます。

POST応答の例

要求が成功した場合、Successノードで次の例のような応答を受信することがあります。
{
"Success": {
"name": "FileFile to jdbc",
"description": "FileToFile to jdbc_target",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "flatfile to jdbc_source",
"type": "source",
"connectionId": "012MGS0B00000000002N",
"transformationType": "",
"config": [
{
"key": "initialPosition",
"value": "Current Time"
},
{
"key": "tailingMode",
"value": "Single file"
},
{
"key": "rolloverPattern",
"value": "test"
},
{
"key": "File",
"value": "logfile"
}
]
},
{
"name": "flatfile to jdbc_target",
"type": "target",
"connectionId": "012MGS0B0000000000KF",
"transformationType": "",
"config": [
{
"key": "Table Name",
"value": "table"
}
]
}
],
"edges": [
{
"from": "flatfile to jdbc_source",
"to": "flatfile to jdbc_target"
}
]
}
}

Amazon Kinesis Streamsソースとターゲット

タスクのソース接続とターゲット接続がAmazon Kinesis Streamsの場合、ソース接続とターゲット接続の構成配列に次のフィールドおよびキーと値のペアを含めることができます。
キー
タイプ
必須
説明
appendGUID
Boolean
Amazon DynamoDBテーブル名にサフィックスとしてGUIDを追加するかどうかを指定します。
次のいずれかの値を入力します。
  • - true
  • - false
dynamoDB
String
Kinesisソースデータのチェックポイントの詳細を保存するAmazon DynamoDBテーブル名。
128文字までの文字列を入力できます。
ストリーム
String
データを読み取る元のKinesis Streamの名前。
128文字までの文字列を入力します。
ソースノードに表示されます。
ストリーム名/式
String
データを書き込む先のKinesis Stream名または正規表現。
128文字までの文字列を入力します。
ターゲットノードに表示されます。

POST要求の例

Amazon Kinesis StreamsソースとAmazon Kinesis Streamsターゲットを使用するストリーミング取り込みとレプリケーションタスクを更新するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/restapi/v1/UpdateEntity/Documents('<document ID>')
Content-Type: application/json
Accept: application/json
IDS-SESSION-ID: <SessionId>

{
"name": "kinesis to kinesis",
"description": "kinesis to kinesis",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "kinesis to kinesis_source",
"type": "source",
"connectionId": "012MGS0B00000000000F",
"transformationType": "",
"config": [
{
"key": "appendGUID",
"value": true
},
{
"key": "dynamoDB",
"value": "table"
},
{
"key": "Stream",
"value": "test"
}
]
},
{
"name": "kinesis to kinesis_target",
"type": "target",
"connectionId": "012MGS0B00000000000F",
"transformationType": "",
"config": [
{
"key": "Stream Name/Expression",
"value": "trgt"
}
]
}
],
"edges": [
{
"from": "kinesis to kinesis_source",
"to": "kinesis to kinesis_target"
}
]
}
応答は、要求で入力したフィールドのみを返します。要求が失敗すると、応答にエラーの理由が含まれます。

POST応答の例

要求が成功した場合、Successノードで次の例のような応答を受信することがあります。
{
"Success": {
"name": "kinesis to kinesis",
"description": "kinesis to kinesis",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "kinesis to kinesis_source",
"type": "source",
"connectionId": "012MGS0B00000000000F",
"transformationType": "",
"config": [
{
"key": "appendGUID",
"value": true
},
{
"key": "dynamoDB",
"value": "table"
},
{
"key": "Stream",
"value": "test"
}
]
},
{
"name": "kinesis to kinesis_target",
"type": "target",
"connectionId": "012MGS0B00000000000F",
"transformationType": "",
"config": [
{
"key": "Stream Name/Expression",
"value": "trgt"
}
]
}
],
"edges": [
{
"from": "kinesis to kinesis_source",
"to": "kinesis to kinesis_target"
}
]
}
}

フラットファイルソースおよびターゲット

タスクのソース接続とターゲット接続がフラットファイルの場合、ソース接続とターゲット接続の構成配列に次のフィールドおよびキーと値のペアを含めることができます。
キー
タイプ
必須
説明
File
String
ソースファイルの絶対パスおよび名前。複数ファイルモードのベースディレクトリを入力します。
initialPosition
String
テールするファイルからデータを読み取る際の開始位置。次のいずれかの値を入力します。
  • - ファイルの先頭。ファイルの先頭から読み取ります。すでにロールオーバーされているデータは取り込みません。
  • - 現在の時刻。ファイルの最近更新された部分から読み取ります。ロールオーバーされたデータまたは書き込まれたファイル内のデータは取り込みません。
rolloverPattern
String
-
ロールオーバーするファイルのファイル名パターン。
テールするファイルがロールオーバーした場合、Secure Agentはファイル名パターンを使用して、ロールオーバーしたファイルを識別します。ファイルのロールオーバー中にSecure Agentが停止した場合、再起動時に、中断されたポイントからファイルを取得します。
アスタリスク(*)と疑問符(?)をワイルドカード文字として使用し、ファイルが同じディレクトリにロールオーバーされることを示すことができます。例: ${filename}.log.*と入力します。ここで、アスタリスク(*)は、ファイル名に追加される連続するバージョン番号を表します。
tailingMode
String
ロギングパターンに基づいて、1つまたは複数のファイルをテールします。次のいずれかの値を入力します。
  • - 単一ファイル。1つのファイルをテールします。
  • - 複数ファイル。ベースディレクトリに示されているすべてのファイルをテールします。正規表現を入力して、テールするファイルを示すことができます。
ファイル名
String
ターゲットファイルの名前。
interimDirectory
String
Secure Agent上のステージングディレクトリへのパス。
rolloverSize
Integer
タスクがファイルをステージングディレクトリからターゲットに移動する際のファイルサイズ(KB)。
1から2147483647までの数値を入力できます。
rolloverEvents
Integer
ファイルのロールオーバーの前に蓄積するイベントまたはメッセージの数。
1から2147483647までの数値を入力できます。
rolloverTime
Integer
-
ターゲットファイルがロールオーバーするまでの時間(ミリ秒単位)。
1から2147483647までの数値を入力できます。
edges
配列
-
データフロー実行のシーケンス。

POST要求の例

フラットファイルソースとフラットファイルターゲットを使用するストリーミング取り込みとレプリケーションタスクを更新するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/restapi/v1/UpdateEntity/Documents('<document ID>')
Content-Type: application/json
Accept: application/json
IDS-SESSION-ID: <SessionId>

{
"name": "FileToFile",
"description": "FileToFile_V2",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "FileToFile_source",
"type": "source",
"connectionId": "0100000B000000000002",
"transformationType": "",
"config": [
{
"key": "File",
"value": "siagent.log"
},
{
"key": "initialPosition",
"value": "Current Time"
},
{
"key": "rolloverPattern",
"value": ""
},
{
"key": "tailingMode",
"value": "Single file"
}
]
},
{
"name": "FileToFile_target",
"type": "target",
"connectionId": "0100000B000000000002",
"transformationType": "",
"config": [
{
"key": "File Name",
"value": "testing.log"
},
{
"key": "interimDirectory",
"value": "/home/agent/infa/test_file_target"
},
{
"key": "rolloverSize",
"value": 100
},
{
"key": "rolloverEvents",
"value": 100
},
{
"key": "rolloverTime",
"value": 100
}
]
}
],
"edges": [
{
"from": "FileToFile_source",
"to": "FileToFile_target"
}
],
"runtimeOptions": {
"maxLogSize": {
"value": 10,
"unit": "MB"
},
"logLevel": "INFO"
}
}
応答は、要求で入力したフィールドのみを返します。要求が失敗すると、応答にエラーの理由が含まれます。

POST応答の例

要求が成功した場合、次の例のような応答を受信します。
{
"Success": {
"name": "FileToFile",
"description": "FileToFile_V2",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "FileToFile_source",
"type": "source",
"connectionId": "0100000B000000000002",
"transformationType": "",
"config": [
{
"key": "File",
"value": "siagent.log"
},
{
"key": "initialPosition",
"value": "Current Time"
},
{
"key": "rolloverPattern",
"value": ""
},
{
"key": "tailingMode",
"value": "Single file"
}
]
},
{
"name": "FileToFile_target",
"type": "target",
"connectionId": "0100000B000000000002",
"transformationType": "",
"config": [
{
"key": "File Name",
"value": "testing.log"
},
{
"key": "interimDirectory",
"value": "/home/agent/infa/test_file_target"
},
{
"key": "rolloverSize",
"value": 100
},
{
"key": "rolloverEvents",
"value": 100
},
{
"key": "rolloverTime",
"value": 100
}
]
}
],
"edges": [
{
"from": "FileToFile_source",
"to": "FileToFile_target"
}
],
"runtimeOptions": {
"maxLogSize": {
"value": 10,
"unit": "MB"
},
"logLevel": "INFO"
}
}
}

Kafkaソースおよびターゲット

タスクのソース接続とターゲット接続がKafkaの場合、ソース接続とターゲット接続の構成配列に次のフィールドおよびキーと値のペアを含めることができます。
キー
タイプ
必須
説明
トピック
String
イベントの読み取り元となるKafkaソーストピック名、またはJavaでサポートされているKafkaソーストピック名パターンの正規表現。
249文字までの文字列を入力します。
consumerProperties
String
-
必要に応じて、コンシューマ設定のプロパティのカンマ区切りリストを指定します。キーと値のペアとして値を指定します。例: key1=value1, key2=value2
4000文字までの文字列を入力できます。
producerProperties
String
-
プロデューサの設定プロパティ。
カンマ区切りリストを指定し、値をキーと値のペアとして指定します。
4000文字までの文字列を入力できます。
mdFetchTimeout
Integer
-
それ以降にメタデータが取得されなくなる時間。
1~2147483647の範囲で値を入力してください。
batchSize
Integer
-
ストリーミング取り込みタスクがそれ以降のターゲットにデータを書き込むイベントのバッチサイズ。
1~2147483647の範囲で値を入力してください。
トピック名/式
String
Kafkaトピック名またはJavaがサポートするKafkaトピック名パターンの正規表現。
249文字までの文字列を入力できます。

POST要求の例

KafkaソースとKafkaターゲットを使用するストリーミング取り込みとレプリケーションタスクを更新するには、次の例のような要求を送信します。
POST <serverUrl>/sisvc/restapi/v1/UpdateEntity/Documents('<document ID>')
Content-Type: application/json
Accept: application/json
IDS-SESSION-ID: <SessionId>

{
"name": "kafka to kafka",
"description": "kafka to kafka",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "kafka to kafka_source",
"type": "source",
"connectionId": "012MGS0B000000000002",
"transformationType": "",
"config": [
{
"key": "consumerProperties",
"value": "key=value"
},
{
"key": "Topic",
"value": "test"
}
]
},
{
"name": "kafka to kafka_target",
"type": "target",
"connectionId": "012MGS0B000000000002",
"transformationType": "",
"config": [
{
"key": "producerProperties",
"value": "key=value"
},
{
"key": "mdFetchTimeout",
"value": 5000
},
{
"key": "batchSize",
"value": 1048576
},
{
"key": "Topic Name/Expression",
"value": "test"
}
]
}
],
"edges": [
{
"from": "kafka to kafka_source",
"to": "kafka to kafka_target"
}
]
}
応答は、要求で入力したフィールドのみを返します。要求が失敗すると、応答にエラーの理由が含まれます。

POST応答の例

要求が成功した場合、Successノードで次の例のような応答を受信することがあります。
{
"Success": {
"name": "kafka to kafka",
"description": "kafka to kafka",
"runtimeId": "01000025000000000003",
"locationId": "5sJ0JDyJyWLlrosS5qJjsQ",
"currentVersion": "2",
"messageFormat": "binary",
"nodes": [
{
"name": "kafka to kafka_source",
"type": "source",
"connectionId": "012MGS0B000000000002",
"transformationType": "",
"config": [
{
"key": "consumerProperties",
"value": "key=value"
},
{
"key": "Topic",
"value": "test"
}
]
},
{
"name": "kafka to kafka_target",
"type": "target",
"connectionId": "012MGS0B000000000002",
"transformationType": "",
"config": [
{
"key": "producerProperties",
"value": "key=value"
},
{
"key": "mdFetchTimeout",
"value": 5000
},
{
"key": "batchSize",
"value": 1048576
},
{
"key": "Topic Name/Expression",
"value": "test"
}
]
}
],
"edges": [
{
"from": "kafka to kafka_source",
"to": "kafka to kafka_target"
}
]
}
}

ストリーミング取り込みとレプリケーションジョブに関する詳細の取得

jobsリソースを使用して、ストリーミング取り込みとレプリケーションジョブの詳細を取得します。

GET要求

ストリーミング取り込みとレプリケーションジョブの詳細を要求するには、次のURLを使用します。
<server URI>/sisvc/monitor/v1/jobs/<dataflow ID>/<run ID of the job>

GET要求の例

ストリーミング取り込みとレプリケーションジョブの詳細を取得するには、次の例のような要求を送信します。
GET https://usw1-ing.dm2-us.informaticacloud.com/sisvc/monitor/v1/jobs/1948938e-3923-4602-aba8-f122e3d66faf/42559
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID:2l0oeVx22Rujiej7yTokmT

GET応答

成功した場合はジョブオブジェクトが返され、エラーが発生した場合はエラーオブジェクトが返されます。
成功した場合、応答には、ストリーミング取り込みとレプリケーションジョブに関する次の情報が含まれます。
パラメータ
タイプ
説明
assetId
String
ストリーミング取り込みとレプリケーションジョブのID。
assetName
String
ストリーミング取り込みとレプリケーションジョブの名前。
duration
Integer
ジョブのデプロイに要した時間。
endTime
Integer
ジョブのデプロイの終了時刻(UTC時間)。
startTime
Integer
ジョブのデプロイの開始時刻(UTC時間)。
extraData
String
タスクID、デプロイされたバージョン、Secure AgentグループIDなどの追加情報。
runId
Integer
ストリーミング取り込みとレプリケーションジョブの実行ID。IDはデプロイのたびに変わります。
orgId
String
ログインユーザーが属する組織のID。
runtimeEnv
String
ストリーミング取り込みとレプリケーションジョブをデプロイしたSecure AgentのID。
startedBy
String
ストリーミング取り込みとレプリケーションタスクを作成したユーザーの名前。
status
String
ストリーミング取り込みとレプリケーションジョブのステータス。ジョブは、次のいずれかのステータスになります。
  • - デプロイ中。ジョブはデプロイ中です。
  • - 稼働中。ジョブは実行中です。
  • - 実行中(警告あり)。ジョブは実行中ですが警告があります。
  • - 実行中(エラーあり)。ジョブは実行中ですがエラーがあります。
  • - アンデプロイ済み。ジョブはアンデプロイされています。
  • - 停止。ジョブが意図的に停止されました。

GET応答の例

ストリーミング取り込みとレプリケーションジョブの詳細を取得する要求が成功した場合、次の例のような応答を受け取ります。
{
"assetId": "1948938e-3923-4602-aba8-f122e3d66faf",
"assetName": "testmonitor",
"assetType": "SI_DATAFLOW",
"correlationId": null,
"duration": 1543,
"endTime": "2022-02-14T04:04:13.000+0000",
"extraData": "{\"id\":\"0RwiUUb9bVwjL67dWOKjoI\",\"version\":1,\"agentGroupId\":null}",
"location": "Default",
"runId": 42559,
"orgId": "2lFy0UUNnlnbjhaoT3TSqw",
"runtimeEnv": "011ZFB2500000000000N",
"startedBy": "siqa_new",
"status": "Undeployed",
"startTime": "2022-02-14T03:38:30.000+0000",
"deployedVersion": 1
}

ストリーミング取り込みとレプリケーションジョブのリストの取得

MIJobsリソースを使用して、使用可能なストリーミング取り込みとレプリケーションジョブのリストを取得します。

GET要求

使用可能なストリーミング取り込みとレプリケーションジョブのリストを要求するには、次のURLを使用します。
<server URI>/mijobmonitor/api/v1/MIJobs
URIで以下のクエリパラメータを含めることができます。
パラメータ
タイプ
必須
説明
$count
Boolean
×
データベース内の取り込みおよびレプリケーションジョブの数を表示します。
$filter
String
×
入力に基づいてジョブをフィルタリングします。次のいずれかのフィールドを使用してフィルタできます。
  • - assetName
  • - assetType
  • - startedBy
  • - status
単一または複数のフィールドを使用してジョブをフィルタリングできます。
$orderby
String
×
ジョブの順序を並べ替えます。次のフィールドを使用してジョブを並べ替えることができます。
  • - assetName
  • - assetType
  • - status
  • - runtimeEnv
  • - startTime
単一または複数のフィールドを使用してジョブを並べ替えることができます。
$skip
Integer
×
指定したストリーミング取り込みとレプリケーションジョブの数をスキップします。例えば、最初の5つのストリーミング取り込みとレプリケーションジョブをスキップしたい場合などです。
指定している場合は、$filterおよび$orderbyパラメータの値を検討してください。
$top
Integer
×
指定した数の上位ストリーミング取り込みとレプリケーションジョブを表示します。例えば、上位10個のストリーミング取り込みとレプリケーションジョブを確認したい場合などです。
指定している場合は、$filterおよび$orderbyパラメータの値を検討してください。

GET要求の例

使用可能なストリーミング取り込みとレプリケーションジョブのリストを取得するには、次の例のような要求を送信します。
POST https://usw1-ing.dm2-us.informaticacloud.com/mijobmonitor/api/v1/MIJobs?$count=true&$filter=(startedBy eq 'siqa_new')&$orderby=deployTime desc&$skip=0&$top=25
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID:2l0oeVx22Rujiej7yTokmT

GET応答

成功した場合はMIJobsオブジェクトが返され、エラーが発生した場合はエラーオブジェクトが返されます。
成功した場合、応答には、ストリーミング取り込みとレプリケーションジョブに関する次の情報が含まれます。
パラメータ
タイプ
説明
assetName
String
ストリーミング取り込みとレプリケーションジョブの名前。
runId
Integer
ストリーミング取り込みとレプリケーションジョブの実行ID。IDはデプロイのたびに変わります。
orgId
String
ログインユーザーが属する組織のID。
runtimeEnv
String
ストリーミング取り込みとレプリケーションジョブをデプロイしたSecure AgentのID。
startTime
Integer
ジョブのデプロイの開始日時(UTC時間)。
endTime
Integer
ジョブのデプロイの終了日時(UTC時間)。
deployTime
Integer
ジョブのデプロイ日時(UTC時間)。
undeployTime
Integer
ジョブのデプロイ解除日時(UTC時間)。
startedBy
Integer
ストリーミング取り込みとレプリケーションタスクを作成したユーザーの名前。
status
String
ストリーミング取り込みとレプリケーションジョブのステータス。ジョブは、次のいずれかのステータスになります。
  • - デプロイ中。ジョブはデプロイ中です。
  • - 稼働中。ジョブは実行中です。
  • - 実行中(警告あり)。ジョブは実行中ですが警告があります。
  • - 実行中(エラーあり)。ジョブは実行中ですがエラーがあります。
  • - アンデプロイ済み。ジョブはアンデプロイされています。
  • - 停止。ジョブが意図的に停止されました。
extraData
String
タスクID、ストリーミング取り込みジョブの場所、Secure Agent IDなどの追加情報。

GET応答の例

使用可能なストリーミング取り込みとレプリケーションジョブのリストを取得する要求が成功した場合、次の例のような応答を受け取ります。
{
"@odata.context": "$metadata#Collection(OData.MI.JobMonitor.MIJob)",
"@odata.count": 421,
"value": [
{
"assetId": "7ce6bbc7-f0e2-4278-bd6d-d1187f4a1420",
"assetName": "SIdeployJms",
"assetType": "SI_DATAFLOW",
"runId": 33015,
"duration": 300000,
"orgId": "1Pm6cSfPcAqfgeV57Fn3u4",
"runtimeEnv": "011U5M08000000000003",
"startTime": "2021-04-29T13:09:48.000+0000",
"endTime": "2021-04-29T13:14:48.000+0000",
"deployTime": "2021-04-29T13:09:48.000+0000",
"undeployTime": "2021-04-29T13:14:48.000+0000",
"startedBy": "siqa_new",
"status": "Undeployed",
"outOfSync": true,
"extraData": "{\"taskId\":\"7Z4ZZjXc9QViT4t2okiHuz\",\"runtimeEnv\":\"011U5M25000000000002\",\"location\":\"RestAutomation\"}",
"deployedVersion": 1,
"replace": null,
"lastUpdateTime": 0
},
{
"assetId": "a03b9aa1-4a4a-47ee-808d-ddc0ee7b3a4a",
"assetName": "kafka to kafka test",
"assetType": "SI_DATAFLOW",
"runId": 33527,
"duration": 204988000,
"orgId": "1Pm6cSfPcAqfgeV57Fn3u4",
"runtimeEnv": "011U5M08000000000002",
"startTime": "2021-05-04T05:41:39.000+0000",
"endTime": "2021-05-06T14:38:07.000+0000",
"deployTime": "2021-05-04T05:41:39.000+0000",
"undeployTime": "2021-05-06T14:38:07.000+0000",
"startedBy": "siqa_new",
"status": "Undeployed",
"outOfSync": true,
"extraData": "{\"taskId\":\"8V21nib7Sqgiw3QoDRi5uK\",\"runtimeEnv\":\"011U5M25000000000002\",\"location\":\"Default\"}",
"deployedVersion": 1,
"replace": null,
"lastUpdateTime": 0
}
]
}

ジョブステータス

statusリソースを使用して、ストリーミング取り込みとレプリケーションジョブのステータスを取得します。

GET要求

ストリーミング取り込みとレプリケーションジョブのステータスを要求するには、次のURLを使用します。
<server URI>/sisvc/monitor/v1/status/dataflows/<dataflow ID>

GET要求の例

ストリーミング取り込みとレプリケーションジョブのステータスを取得するには、次の例のような要求を送信します。
GET https://usw1-ing.dm2-us.informaticacloud.com/sisvc/monitor/v1/status/dataflows/1948938e-3923-4602-aba8-f122e3d66faf
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID:2l0oeVx22Rujiej7yTokmT

GET応答

成功した場合はジョブステータスオブジェクトが返され、エラーが発生した場合はエラーオブジェクトが返されます。
成功した場合、応答には、ストリーミング取り込みとレプリケーションジョブのステータスに関する次の情報が含まれます。
パラメータ
タイプ
説明
dataflowName
String
ストリーミング取り込みとレプリケーションジョブの名前。
dataflowId
Integer
ストリーミング取り込みとレプリケーションジョブのID。
status
String
ストリーミング取り込みとレプリケーションジョブのステータス。ジョブは、次のいずれかのステータスになります。
  • - デプロイ中。ジョブはデプロイ中です。
  • - 稼働中。ジョブは実行中です。
  • - 実行中(警告あり)。ジョブは実行中ですが警告があります。
  • - 実行中(エラーあり)。ジョブは実行中ですがエラーがあります。
  • - アンデプロイ済み。ジョブはアンデプロイされています。
  • - 停止。ジョブが意図的に停止されました。
timestamp
Integer
Secure Agentがストリーミング取り込みとレプリケーションジョブのステータスを記録する時間(ミリ秒単位)。
reports
Array
各ノードのステータスの詳細。
graph
String
ジョブのソースとターゲットのスループット情報。
runId
Integer
ストリーミング取り込みとレプリケーションジョブの実行ID。IDはデプロイのたびに変わります。

GET応答の例

ストリーミング取り込みとレプリケーションジョブのステータスを取得する要求が成功した場合、次の例のような応答を受け取ります。
{
"dataflowName": "testmonitor",
"dataflowId": "1948938e-3923-4602-aba8-f122e3d66faf",
"status": "Running",
"timestamp": 1644839755000,
"reports": [
{
"name": "testmonitor_testmonitor_source",
"id": "a5684428-f41f-4d24-b73f-33c232314a91",
"status": "Running",
"timestamp": 1644839756000,
"message": null
},
{
"name": "testmonitor_testmonitor_target",
"id": "4f59b5fb-b5b2-4b83-994b-0d3e56f67e22",
"status": "Running",
"timestamp": 1644839756000,
"message": null
}
],
"graph": "{\"agentId\":\"011ZFB0800000000000N\",\"nodes\":[{\"id\":\"a5684428-f41f-4d24-b73f-33c232314a91\",\"name\":\"testmonitor_source\",\"serviceType\":\"source\",\"config\":[{\"key\":\"_nativeName\",\"value\":\"src\"},{\"key\":\"consumerProperties\",\"value\":null}],\"connectionId\":\"011ZFB0B0000000000KJ\",\"type\":\"\",\"metaMetadata\":\"\"},{\"id\":\"4f59b5fb-b5b2-4b83-994b-0d3e56f67e22\",\"name\":\"testmonitor_target\",\"serviceType\":\"target\",\"config\":[{\"key\":\"_nativeName\",\"value\":\"trgt\"},{\"key\":\"batchSize\",\"value\":\"1048576\"},{\"key\":\"mdFetchTimeout\",\"value\":\"5000\"},{\"key\":\"producerProperties\",\"value\":null}],\"connectionId\":\"011ZFB0B0000000000KJ\",\"type\":\"\",\"metaMetadata\":\"\"}],\"edges\":[{\"id\":\"6ae185ea-7e6e-4bf6-bd9e-0be5ef3a8e78\",\"name\":\"testmonitor_source_testmonitor_target\",\"from\":\"testmonitor_source\",\"to\":\"testmonitor_target\",\"type\":\"success\",\"config\":[],\"metaMetadata\":\"\"}],\"runtimeOptions\":null}",
"version": 1,
"runId": 42563
}

ジョブの統計

statisticsリソースを使用して、ストリーミング取り込みとレプリケーションジョブの統計を取得します。
統計を表示するには、ストリーミング取り込みジョブが次のいずれかのステータスになっている必要があります。

GET要求

ストリーミング取り込みとレプリケーションジョブの統計を要求するには、次のURLを使用します。
<server URI>/sisvc/monitor/v1/statistics/dataflows/<dataflow ID>
URIで以下のクエリパラメータを含めることができます。
パラメータ
タイプ
必須
説明
intervals
Integer
ストリーミング取り込みジョブの統計を表示する時間(秒単位)。例えば、30秒を指定すると、応答は過去30秒間のジョブ統計を表示します。
overall
Boolean
×
ジョブがデプロイされた時点からの統計を表示します。

GET要求の例

ストリーミング取り込みとレプリケーションジョブの統計を要求するには、次の例のような要求を送信します。
GET https://usw1-ing.dm2-us.informaticacloud.com/sisvc/monitor/v1/statistics/dataflows/7f1daca9-3983-4677-930f-a9529802c56b?intervals=30&overall=true
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID:2l0oeVx22Rujiej7yTokmT

GET応答

成功した場合は統計オブジェクトが返され、エラーが発生した場合はエラーオブジェクトが返されます。
成功した場合、応答には、ストリーミング取り込みとレプリケーションジョブの統計に関する次の情報が含まれます。
パラメータ
タイプ
説明
dataflowId
String
ストリーミング取り込みとレプリケーションジョブのID。
dataflowRunId
Integer
ストリーミング取り込みとレプリケーションジョブの実行ID。
startTime
Integer
ストリーミング取り込みジョブの開始時刻(ミリ秒単位)。
stopTime
Integer
ストリーミング取り込みジョブの停止時刻(ミリ秒単位)。
inMessages
Integer
ノードに到着するメッセージの数。ノードは、ストリーミング取り込みタスクで使用されるソース、トランスフォーメーション、またはターゲットです。
ソースノードの値はゼロです。
outMessages
Integer
ノードから転送されるメッセージの数。
ターゲットノードの値はゼロです。
inBytes
Integer
受信メッセージの合計サイズ(バイト単位)。
ソースノードの値はゼロです。
outBytes
Integer
送信メッセージの合計サイズ(バイト単位)。
ターゲットノードの値はゼロです。
nodes
Array
タスクで使用されるソースとターゲットのストリーミングデータに関する情報。
intervals
Integer
リクエストで指定した時間間隔でのジョブの統計。間隔を設定するときに適用されます。

GET応答の例

ストリーミング取り込みとレプリケーションジョブの統計を取得する要求が成功した場合、次の例のような応答を受け取ります。
{
"dataflowId": "7f1daca9-3983-4677-930f-a9529802c56b",
"dataflowName": "newnew",
"dataflowVersion": 1,
"dataflowRunId": 54231,
"snapshotCount": 171,
"overall": {
"dataflowId": "7f1daca9-3983-4677-930f-a9529802c56b",
"dataflowName": "newnew",
"dataflowVersion": 1,
"dataflowRunId": 54231,
"traits": {},
"interval": 6007,
"startTime": 1646649995000,
"stopTime": 1646656000000,
"nodes": [
{
"name": "newnew_newnew_source",
"id": "17a51cdf-1f27-481e-81b8-d2e8ff60ec28",
"inMessages": 0,
"outMessages": 0,
"inBytes": 0,
"outBytes": 0,
"nodeType": "Unknown"
},
{
"name": "newnew_newnew_target",
"id": "c30d6db4-6a3b-40d3-adfb-88779a972098",
"inMessages": 0,
"outMessages": 0,
"inBytes": 0,
"outBytes": 0,
"nodeType": "Unknown"
}
]
},
"intervals": {
"30": {
"dataflowId": "7f1daca9-3983-4677-930f-a9529802c56b",
"dataflowName": "newnew",
"dataflowVersion": null,
"dataflowRunId": 54231,
"traits": {},
"interval": 30,
"startTime": 1646655972683,
"stopTime": 1646656002683,
"nodes": []
}
}
}

ジョブ履歴

historyリソースを使用して、ストリーミング取り込みとレプリケーションジョブの履歴を取得します。

GET要求

ストリーミング取り込みとレプリケーションジョブの履歴を要求するには、次のURLを使用します。
<server URI>/sisvc/monitor/v1/history/dataflows/<dataflow ID>

GET要求の例

ストリーミング取り込みとレプリケーションジョブの履歴を取得するには、次の例のような要求を送信します。
GET https://usw1-ing.dm2-us.informaticacloud.com/siscv/monitor/v1/history/dataflows/1948938e-3923-4602-aba8-f122e3d66faf
Content-Type: application/json
Accept:application/json
IDS-SESSION-ID:2l0oeVx22Rujiej7yTokmT

GET応答

成功した場合はジョブ履歴オブジェクトが返され、エラーが発生した場合はエラーオブジェクトが返されます。
成功した場合、応答には、ストリーミング取り込みとレプリケーションジョブの履歴に関する次の情報が含まれます。
パラメータ
タイプ
説明
dataflowName
String
ストリーミング取り込みとレプリケーションジョブの名前。
dataflowId
Integer
ストリーミング取り込みとレプリケーションジョブのID。
deployedAt
Integer
ジョブのデプロイの開始時刻(UTC時間)。
undeployedAt
Integer
ジョブのデプロイ解除の終了時刻(UTC)。
runID
Integer
ストリーミング取り込みとレプリケーションジョブの実行ID。IDはデプロイのたびに変わります。

GET応答の例

ストリーミング取り込みとレプリケーションジョブの履歴を取得する要求が成功した場合、次の例のような応答を受け取ります。
[
{
"dataflowId": "1948938e-3923-4602-aba8-f122e3d66faf",
"dataflowName": "testmonitor",
"deployedAt": 1644809910000,
"undeployedAt": 1644811453000,
"dataflowVersion": 1,
"runId": 42559,
"overall": null,
"intervals": {},
"graph": null
},
{
"dataflowId": "1948938e-3923-4602-aba8-f122e3d66faf",
"dataflowName": "testmonitor",
"deployedAt": 1644811513000,
"undeployedAt": 1644838813000,
"dataflowVersion": 1,
"runId": 42561,
"overall": null,
"intervals": {},
"graph": null
}
]