合成 API モニタリングジョブの作成 API

このページでは、合成 API モニタリングジョブの作成と構成に使用する API について説明します。

API モニタリングジョブの作成

指定された JSON ペイロードを使用して新しい API モニタリングジョブを作成します。

リソースURL

POST <api_server_URL>/v1/synthetic/api/schedule

または、OAuth 認証方式を使用している場合は、次の URL を使用します。

POST <controller_url>/controller/restui/synthetic/api-schedule/<applicationId>/updateSchedule

要求/応答の形式

JSON

リクエスト
{
"scheduleRunConfigs": [
{
"rate": {
"value": 15,
"unit": "MINUTES"
},
"daysOfWeek": [
"SUN",
"WED",
"THUR",
"FRI",
"MON",
"TUES",
"SAT"
],
"timezone": "UTC"
}
],
"description": "jobUI",
"apiMetadata": {
"script": {
"contentType": "JAVASCRIPT",
"script": "// Javascript based API Monitoring Test\n\nconst assert = require(\"assert\");\n(async () => {\n    var response = await client.get(\"<URL>\");\n    assert.equal(response.statusCode, 200);\n    assert.equal(response.statusMessage, \"OK\");\n    for(var key in response.headers) {\n        console.log(`${key} : ${response.headers[key]}`);\n    }\n    assert.equal(response.body, \"response body\");\n})()"
}
},
"browserCodes": [
"API"
],
"chromeVersions": [],
"locationCodes": [
"M50"
],
"timeoutSeconds": 15,
"appKey": "appKey",
"composableConfig": {
"numBeforeConfirmedError": 0,
"resourceErrorDetection": {
"ignoreWhen": {
"resourceUrlContains": [],
"resourceMimeType": []
},
"onlyWhen": {
"resourceUrlContains": [],
"resourceMimeType": []
}
}
},
"performanceCriteria": {
"retestOnWarning": false,
"retestOnCritical": false,
"warningCriterion": [],
"criticalCriterion": []
}
}
レスポンス
{
"_id": "job_id",
"version": 1,
"scheduleRunConfigs": [
{
"rate": {
"value": 1,
"unit": "MINUTES"
},
"daysOfWeek": [
"WED",
"FRI",
"SUN",
"SAT",
"TUES",
"MON",
"THUR"
],
"timezone": "UTC"
}
],
"userEnabled": true,
"systemEnabled": true,
"type": "ALL_BROWSERS",
"rate": {
"value": 15,
"unit": "MINUTES"
},
"daysOfWeek": [
"WED",
"FRI",
"SUN",
"SAT",
"TUES",
"MON",
"THUR"
],
"timezone": "UTC",
"description": "https://appdynamics.com",
"appKey": "appKey",
"scheduleMode": "NONE",
"url": "https://appdynamics.com",
"browserCodes": [
"Chrome"
],
"chromeVersions": [
"86"
],
"locationCodes": [
"BOM",
"M50"
],
"failOnPageError": true,
"captureVisualMetrics": true,
"simulateMobileBrowser": false,
"networkProfile": {
"name": "Native",
"downloadKbps": 5000,
"uploadKbps": 1000,
"roundtripTimeMillis": 28,
"packetLossPercent": 0,
"isDefault": false
},
"timeoutSeconds": 15,
"state": {
"lastFireTime": "2022-04-06T05:57:16.000Z",
"nextFireTime": "2022-04-06T06:00:16.000Z"
},
"projectedUsage": {
"projectedDailyRuns": 2880,
"projectedMonthlyRuns": 86400
},
"performanceCriteria": {
"retestOnWarning": false,
"retestOnCritical": false,
"criterion": []
},
"composableConfig": {
"numBeforeConfirmedError": 0,
"resourceErrorDetection": {
"ignoreWhen": {
"resourceUrlContains": [],
"resourceMimeType": []
},
"onlyWhen": {
"resourceUrlContains": [],
"resourceMimeType": []
}
}
},
"created": "2022-04-05T05:30:36.426Z",
"updated": "2022-04-05T05:30:36.426Z"
}

リクエスト パラメータ

パラメータ名Parameter Type説明必須リクエスト
scheduleRunConfigs-いいえ
rate-いいえ
value

分:1 ~ 60

時間:1 ~ 24

日:「ヌル」

いいえ
unit文字列分、時間、または日いいえ
daysOfWeek文字列"SUN"、"MON"、"TUES"、"WED"、"THUR"、"FRI"、"SAT"いいえ
timeRange文字列hh:mm AM/PM から hh:mm AM/PM までいいえ
timezone文字列"UTC"GMT +/-hh:mmいいえ
startTimeMillis文字列いいえ
endTimeMillis文字列いいえ
説明文字列ジョブ名ジョブの名前あり
url文字列"null" または監視する URL

監視する URL。

このパラメータを使用する場合、スクリプトの値

いいえ
スクリプト文字列

"null" または監視する python ベースの selenium スクリプト

スクリプト化されたジョブがある場合は、ユーザーフローまたは動作のシミュレーションに使用される python ベースの selenium スクリプトを指定します。

このパラメータを使用する場合、url の値

いいえ
apiMetadata文字列API モニタリングジョブのスクリプトオブジェクトあり
contentType文字列あり
スクリプト文字列あり
browserCodes文字列

次の Synthetic 内部ブラウザコードを使用します。

  • Chrome:Chrome
  • Internet Explorer:IE11
  • Firefox:Firefox
  • モバイル:Chrome.DeviceEmulation
いいえ
chromeVersions文字列Chrome ブラウザバージョン 86いいえ
locationCodes文字列

各エージェントロケーションの Synthetic 内部ロケーションコード。「ロケーションコード」を参照してください。

あり
timeoutSeconds数字いいえ
appKey文字列アプリケーションキー

コントローラからアプリケーションキーを取得できます。

  1. [User Experience] > [API Monitoring] に移動します。
  2. コレクション名にカーソルを合わせ、コピーアイコンをクリックしてコレクションキーをコピーします。コレクションキーはアプリケーションキーです。
あり

networkProfile

文字列"name":"Native"、"downloadKbps":5000、"uploadKbps":1000、"roundtripTimeMillis":28、"packetLossPercent":0、"isDefault":falseいいえ
composableConfig-このパラメータを使用して、以下を構成できます。
  • カスタム再試行
  • 可用性ルール
いいえ
numBeforeConfirmedError数字0、1、2、3、5、または 10Number of retriesいいえ
resourceErrorDetection-いいえ
ignoreWhen-いいえ
resourceUrlContains文字列カンマ区切りリストリソース URL のリストいいえ
resourceMimeType文字列いいえ
onlyWhen-いいえ
resourceUrlContains文字列カンマ区切りリストリソース URL のリストいいえ
resourceMimeType文字列いいえ
deviceEmulationProfile文字列いいえ
requestHeader文字列いいえ
performanceCriteria-いいえ
retestOnWarningブーリアンtrue または false 警告イベントで再テストいいえ
retestOnCriticalブーリアンtrue または false 重大なイベントで再テストいいえ
warningCriterion文字列いいえ
criticalCriterion文字列いいえ

ロケーションコード

クラウドのロケーションCodes
Azure
アムステルダムNET
サン アントニオSAN
メルボルンASV
トロントCAC
チェンナイSIC
AWS
ムンバイBOM
ダブリンDUB
フランクフルトFRA
サンパウロGRU
香港HON
アッシュバーンIAD
ソウルICN
ロンドンLON
ボードマンM50
MilanMIL
モントリオールMON
東京NRT
パリPAR
サンフランシスコSFO
シンガポールSIN
シドニーSYD

応答ステータスコード

コード説明
200成功
401Unauthorized
402ジョブの制限を超えました
422検証の失敗
429スロットル
500内部サーバーエラーです