アップタイムデバイスの追加
最終更新日 - 23年2026月XNUMX日
LogicMonitor REST API v3を使用すると、内部および外部のUptime Webデバイスとpingデバイスの両方をLogicMonitorアカウントに追加できます。
アップタイム内部ウェブデバイスの追加
LogicMonitor REST API v3 を使用すると、Uptime の内部 Web デバイスを追加できます。API リクエストを行う前に認証を行う必要があります。
URI: POST /device/devices
以下の表は、APIリクエストで使用されるパラメータについて説明しています。
| タイプ | 詳細説明 | |
|---|---|---|
type | String |
Uptimeデバイスの種類を指定してください。 サポートされている値は次のとおりです。
"type": "uptimewebcheck"
|
deviceType | 整数 | Uptime内部Webチェックデバイスの場合、デバイスタイプを次のように指定します。 18.デフォルトでは、値は次のように設定されています。 0.例- "deviceType":18 |
name | String | 追加したいUptime内部Webチェックデバイスの名前。 例- "name": "Test-Web-Check-Int-V3-Int-New-4" |
description | String | Uptime内部ウェブチェック装置の説明。 例- "description": "Internal Web Check for google.com" |
groupIds | 文字列のリスト | Uptime内部Webチェックデバイスに関連付けられているグループIDのリスト。 たとえば、 "groupIds": ["1","3774"] Uptime内部ウェブチェックデバイスがグループID「1」および「3774」の一部であることを示します。例- "groupIds": "3774" |
isInternal | ブーリアン | Uptime内部Webチェックデバイスの場合、値を次のように設定します。 true これは、デバイスが内部のLogicMonitorコレクターによって監視されていることを示しています。例- "isInternal": true |
individualSmAlertEnable | ブーリアン |
Uptimeの内部Webチェックデバイスを、1つまたは複数のLogicMonitorコレクターに関連付けることができます。
false.例- "individualSmAlertEnable": true
|
individualAlertLevel | String | 個々のインスタンスに設定されたアラートレベルが individualSmAlertEnable=trueサポートされている値は次のとおりです warn, error, critical. デフォルトでは、アラートレベルは次のように設定されています。 warn.例- "individualAlertLevel": "error" |
overallAlertLevel | String | ウェブチェック全体のインスタンスに適用されるアラートレベル。 サポートされている値は次のとおりです warn, error, critical. デフォルトでは、アラートレベルは次のように設定されています。 warn.例- "overallAlertLevel": "warn" |
pollingInterval | 整数 | 定期的にサービスをチェックする間隔(分単位)を示します。サポートされているポーリング間隔は 1 ~ 10 分です。デフォルトのポーリング間隔は 5 分。例- "pollingInterval": 1 |
transition | 整数 | アラートがトリガーされるまでに失敗する必要のあるチェックの数。 サポートされている値は次のとおりです 1–10, 30, 60. デフォルトでは、チェックの数は次のように設定されています。 1 これは、誤った生データが最初に発生した直後にアラートがトリガーされることを示しています。例- "transition": 1 |
globalSmAlertCond | 整数 |
アラートをトリガーするために、テストに失敗した最小箇所数を示します。 サポートされている値は次のとおりです。
0.例- "globalSmAlertCond": 1
|
useDefaultLocationSetting | ブーリアン | 選択したデフォルトチェックポイントのインスタンスを作成する際に、ウェブサイトのデフォルトの位置情報設定を使用する必要があるかどうかを指定します。 デフォルトでは、値は次のように設定されています。 falseこれは、現在のリクエストの設定がインスタンス作成に使用されることを示しています。例- "useDefaultLocationSetting": false |
useDefaultAlertSetting | ブーリアン | 選択したチェックポイント用に作成されたインスタンスに、ウェブサイトのデフォルトのアラート設定を適用する必要があるかどうかを指定してください。 デフォルトでは、値は次のように設定されています。 falseこれは、現在のリクエストの設定がインスタンスに適用されることを示しています。例- "useDefaultAlertSetting": false |
testLocation | JSONオブジェクト |
設定されたチェックが監視される場所。内部ウェブチェックの場合、設定済み collectorIds デバイスを監視する。JSONオブジェクトには、以下のパラメータを指定する必要があります。
“{\”collectorIds\”:[12,67]}”デフォルトでは、値は次のように設定されています。 “{\”all\”:true}”例- "testLocation": { "all": false, "collectorIds": [ 12248 ], "smgIds": [] }
|
properties | 主要値のリスト | ウェブチェックに関連付けられたプロパティ。プロパティは以下の形式で入力する必要があります。[{name1, value1}, {name2, value2}]例- "properties": [{ "name": "testname", "value": "testvalue" }] |
template | JSONオブジェクト | ウェブサイトを作成するためのテンプレート。 デフォルトでは、値は次のように設定されています。 null.例- "template": null |
steps | JSONオブジェクト |
1つ以上の工程から構成される物体。
|
domain | String | ウェブサイトのドメインまたはベースURL。 例- "domain": "www.google.com" |
ignoreSSL | ブーリアン | 各ウェブチェックにおいて、SSLを無視するか適用するかを指定してください。 デフォルトでは、値は次のように設定されています。 false.例- "ignoreSSL": true |
pageLoadAlertTimeInMS | 整数 | アラートがトリガーされるまでに、ウェブページが各ステップで読み込むことができる最大時間(ミリ秒単位)。 デフォルトでは、値は次のように設定されています。 30000.例- "pageLoadAlertTimeInMS": 30000 |
schema | String | URLに関連付けられたスキーマまたはプロトコル。サポートされている値は http (NAIST) と https.デフォルトでは、値は次のように設定されています。 http.例- "schema": "https" |
alertExpr | String |
SSL証明書の警告しきい値(日数)。 triggerSSLExpirationAlert is true、その場合は値を指定する必要があります alertExpr.例- "< 200 100 50"
"alertExpr": "< 30 25 15"
|
triggerSSLStatusAlert | ブーリアン |
SSL証明書の現在の状態に基づいて、アラートを有効または無効にすることができます。
false.例- "triggerSSLStatusAlert": false
|
triggerSSLExpirationAlert | ブーリアン |
SSL証明書の有効期限が近づいていることを知らせるアラートを有効または無効にすることができます。
false.例- "triggerSSLExpirationAlert": false
|
以下のPythonスクリプトは、Uptimeの内部WebデバイスをLogicMonitorアカウントに追加します。
#!/bin/env python
import requests
import json
import hashlib
import base64
import time
import hmac
import getpass
#Account Info: LogicMonitor recommends to NEVER hardcode the credentials. Instead, retrieve the values from a secure storage.
#Note: The below is provided for illustration purposes only.
AccessId = getpass.getpass("Enter your AccessId: ")
AccessKey = getpass.getpass("Enter your AccessKey: ")
Company = 'COMPANY_NAME'
#Request Info
httpVerb ='POST'
resourcePath = '/device/devices'
queryParams = ''
data = '{"type":"uptimewebcheck","deviceType":18,"id":0,"name":"UptimeInternalWebCheck","description":"","groupIds":["1"],"isInternal":true,"individualSmAlertEnable":true,"individualAlertLevel":"error","overallAlertLevel":"warn","pollingInterval":1,"transition":1,"globalSmAlertCond":0,"useDefaultLocationSetting":false,"useDefaultAlertSetting":false,"testLocation":{"all":true,"collectorIds":[4],"smgIds":[]},"properties":[],"template":null,"steps":[{"type":"script","enable":true,"useDefaultRoot":true,"url":"","HTTPVersion":"1.1","HTTPMethod":"GET","name":"__step0","followRedirection":true,"fullpageLoad":false,"requireAuth":false,"auth":{"domain":"","password":"","type":"basic","userName":""},"HTTPHeaders":"","reqType":"config","respType":"config","matchType":"plain","keyword":"","invertMatch":"false","statusCode":"","path":""}],"domain":"www.google.com","ignoreSSL":true,"pageLoadAlertTimeInMS":30000,"schema":"https","alertExpr":"","triggerSSLStatusAlert":false,"triggerSSLExpirationAlert":false}'
#Construct URL
url = 'https://'+ Company +'.logicmonitor.com/santaba/rest' + resourcePath +queryParams
#Get current time in milliseconds
epoch = str(int(time.time() * 1000))
#Concatenate Request details
requestVars = httpVerb + epoch + data + resourcePath
#Construct signature
digest = hmac.new(
AccessKey.encode('utf-8'),
msg=requestVars.encode('utf-8'),
digestmod=hashlib.sha256).hexdigest()
signature = base64.b64encode(digest.encode('utf-8')).decode('utf-8')
#Construct headers
auth = 'LMv1 ' + AccessId + ':' + str(signature) + ':' + epoch
headers = {'Content-Type':'application/json','Authorization':auth,'X-Version':'3'}
#Make request
response = requests.post(url, data=data, headers=headers)
#Print status and body of response
print('Response Status:',response.status_code)
print('Response Body:',response.content)アップタイム外部ウェブデバイスの追加
LogicMonitor REST API v3 を使用すると、Uptime の外部 Web デバイスを追加できます。API リクエストを行う前に認証を行う必要があります。
URI: POST /device/devices
以下の表は、APIリクエストで使用されるパラメータについて説明しています。
| タイプ | 詳細説明 | |
|---|---|---|
type | String |
Uptimeデバイスの種類を指定してください。 サポートされている値は次のとおりです。
"type": "uptimewebcheck"
|
deviceType | 整数 | Uptime外部Webチェックデバイスの場合、デバイスタイプを次のように設定します。 18.デフォルトでは、値は次のように設定されています。 0.例- "deviceType":18 |
name | String | 追加したいUptime外部Webチェックデバイスの名前。 例- "name": "Test-Web-Check-Ext-V3-Ext-New-5" |
description | String | Uptime外部ウェブチェックデバイスの説明。 例- "description": "External Web Check for google.com" |
groupIds | 文字列のリスト | Uptime外部Webチェックデバイスに関連付けられているグループIDのリスト。 たとえば、 "groupIds": ["2","3775"] Uptime内部ウェブチェックデバイスがグループID「2」および「3775」の一部であることを示します。例- "groupIds": "3775" |
isInternal | ブーリアン | Uptime外部Webチェックデバイスの場合、値を次のように設定します。 false これは、当該デバイスが様々な地域に配置された外部サイトモニターによって監視されていることを示しています。例- "isInternal": false |
individualSmAlertEnable | ブーリアン | Uptimeの外部Webチェックデバイスは、1つまたは複数のサイトモニターに関連付けることができます。
false.例- "individualSmAlertEnable": true |
individualAlertLevel | String | 個々のインスタンスに設定されたアラートレベルが individualSmAlertEnable=trueサポートされている値は次のとおりです warn, error, critical. デフォルトでは、アラートレベルは次のように設定されています。 warn.例- "individualAlertLevel": "error" |
overallAlertLevel | String | ウェブチェック全体のインスタンスに適用されるアラートレベル。 サポートされている値は次のとおりです warn, error, critical. デフォルトでは、アラートレベルは次のように設定されています。 warn.例- "overallAlertLevel": "warn" |
pollingInterval | 整数 | 定期的にサービスをチェックする間隔(分単位)を示します。サポートされるポーリング間隔は1~10分です。 デフォルトでは、ポーリング間隔は次のように設定されています。 5 分。例- "pollingInterval": 2 |
transition | 整数 | アラートがトリガーされるまでに失敗する必要のあるチェックの数。 サポートされている値は次のとおりです 1–10, 30, 60. デフォルトでは、チェックの数は次のように設定されています。 1 これは、誤った生データが最初に発生した直後にアラートがトリガーされることを示しています。例- "transition": 1 |
globalSmAlertCond | 整数 | アラートをトリガーするために、テストに失敗した最小箇所数を示します。 サポートされている値は次のとおりです。
0.例- "globalSmAlertCond": 0 |
useDefaultLocationSetting | ブーリアン | 選択したデフォルトチェックポイントのインスタンスを作成する際に、ウェブサイトのデフォルトの位置情報設定を使用する必要があるかどうかを指定します。 デフォルトでは、値は次のように設定されています。 falseこれは、現在のリクエストの設定がインスタンス作成に使用されることを示しています。例- "useDefaultLocationSetting": false |
useDefaultAlertSetting | ブーリアン | 選択したチェックポイント用に作成されたインスタンスに、ウェブサイトのデフォルトのアラート設定を適用する必要があるかどうかを指定します。 デフォルトでは、値は次のように設定されています。 falseこれは、現在のリクエストの設定がインスタンスに適用されることを示しています。例- "useDefaultAlertSetting": false |
testLocation | JSONオブジェクト | 設定されたチェックが監視される場所。外部ウェブチェックの場合、設定済み smgIds デバイスを監視する。JSONオブジェクトには、以下のパラメータを指定する必要があります。
例- “{\”smgIds\”:[2,3]}”お願い: 内部文字列をエンコードする必要があります。 デフォルトでは、値は次のように設定されています。 “{\”all\”:true}”例- "testLocation": { "all": true, "collectorIds": [ ], "smgIds": [2,3,4] } |
properties | 主要値のリスト | ウェブチェックに関連付けられたプロパティ。プロパティは以下の形式で入力する必要があります。[{name1, value1}, {name2, value2}]例- "properties": [{ "name": "testname", "value": "testvalue" }] |
template | JSONオブジェクト | ウェブサイトを作成するためのテンプレート。 デフォルトでは、値は次のように設定されています。 null.例- "template": null |
steps | JSONオブジェクト |
1つ以上の工程から構成される物体。
|
domain | String | ウェブサイトのドメインまたはベースURL。 例- "domain": "www.google.com" |
ignoreSSL | ブーリアン | 各ウェブチェックにおいて、SSLを無視するか適用するかを指定してください。 デフォルトでは、値は次のように設定されています。 false.例- "ignoreSSL": true |
pageLoadAlertTimeInMS | 整数 | アラートがトリガーされるまでに、ウェブページが各ステップで読み込むことができる最大時間(ミリ秒単位)。 デフォルトでは、値は次のように設定されています。 30000.例- "pageLoadAlertTimeInMS": 30000 |
schema | String | URLに関連付けられたスキーマまたはプロトコル。サポートされている値は http (NAIST) と https.デフォルトでは、値は次のように設定されています。 http.例- "schema": "https" |
alertExpr | String | SSL証明書の警告しきい値(日数)。 triggerSSLExpirationAlert is true、その場合は値を指定する必要があります alertExpr.例- "< 150 100 50"
"alertExpr": "< 35 25 15" |
triggerSSLStatusAlert | ブーリアン |
SSL証明書の現在の状態に基づいて、アラートを有効または無効にすることができます。
false.例- "triggerSSLStatusAlert": false
|
triggerSSLExpirationAlert | ブーリアン |
SSL証明書の有効期限が近づいていることを知らせるアラートを有効または無効にすることができます。
false.例- "triggerSSLExpirationAlert": false
|
以下のPythonスクリプトは、Uptime外部WebデバイスをLogicMonitorアカウントに追加します。
#!/bin/env python
import requests
import json
import hashlib
import base64
import time
import hmac
import getpass
#Account Info: LogicMonitor recommends to NEVER hardcode the credentials. Instead, retrieve the values from a secure storage.
#Note: The below is provided for illustration purposes only.
AccessId = getpass.getpass("Enter your AccessId: ")
AccessKey = getpass.getpass("Enter your AccessKey: ")
Company = 'COMPANY_NAME'
#Request Info
httpVerb ='POST'
resourcePath = '/device/devices'
queryParams = ''
data = '{"type":"uptimewebcheck","deviceType":18,"id":0,"name":"UptimeExternalWebCheck","description":"","groupIds":["1"],"isInternal":false,"individualSmAlertEnable":true,"individualAlertLevel":"error","overallAlertLevel":"warn","pollingInterval":1,"transition":1,"globalSmAlertCond":0,"useDefaultLocationSetting":false,"useDefaultAlertSetting":false,"testLocation":{"collectorIds":[],"collectors":[],"smgIds":["2","4","3"],"all":false},"properties":[],"template":null,"steps":[{"enable":true,"useDefaultRoot":true,"url":"","HTTPVersion":"1.1","HTTPMethod":"GET","name":"__step0","followRedirection":true,"fullpageLoad":false,"requireAuth":false,"auth":{"domain":"","password":"","type":"basic","userName":""},"HTTPHeaders":"","reqType":"config","respType":"config","matchType":"plain","keyword":"","invertMatch":"false","statusCode":"","path":""}],"domain":"google.com","ignoreSSL":true,"pageLoadAlertTimeInMS":30000,"schema":"https","alertExpr":"","triggerSSLStatusAlert":false,"triggerSSLExpirationAlert":false}'
#Construct URL
url = 'https://'+ Company +'.logicmonitor.com/santaba/rest' + resourcePath +queryParams
#Get current time in milliseconds
epoch = str(int(time.time() * 1000))
#Concatenate Request details
requestVars = httpVerb + epoch + data + resourcePath
#Construct signature
digest = hmac.new(
AccessKey.encode('utf-8'),
msg=requestVars.encode('utf-8'),
digestmod=hashlib.sha256).hexdigest()
signature = base64.b64encode(digest.encode('utf-8')).decode('utf-8')
#Construct headers
auth = 'LMv1 ' + AccessId + ':' + str(signature) + ':' + epoch
headers = {'Content-Type':'application/json','Authorization':auth,'X-Version':'3'}
#Make request
response = requests.post(url, data=data, headers=headers)
#Print status and body of response
print('Response Status:',response.status_code)
print('Response Body:',response.content)