Forrester Total Economic Impact™の調査によると、Edwin AIは複合組織において313%の投資対効果(ROI)を実現したことが判明しました。

続きを読む

LogicMonitor REST API v3を使用すると、内部および外部のUptime Webデバイスとpingデバイスの両方をLogicMonitorアカウントに追加できます。

アップタイム内部ウェブデバイスの追加

LogicMonitor REST API v3 を使用すると、Uptime の内部 Web デバイスを追加できます。API リクエストを行う前に認証を行う必要があります。

URI: POST /device/devices

以下の表は、APIリクエストで使用されるパラメータについて説明しています。

タイプ 詳細説明
typeString Uptimeデバイスの種類を指定してください。
サポートされている値は次のとおりです。
  • uptimewebcheck—稼働状況ウェブチェックデバイスを示します。
  • uptimepingcheck—稼働状況確認用pingチェックデバイスを示します。
  • 空白または空の値の場合、通常のデバイスであることを示します。
例-"type": "uptimewebcheck"
deviceType整数Uptime内部Webチェックデバイスの場合、デバイスタイプを次のように指定します。 18.
デフォルトでは、値は次のように設定されています。 0.
例-"deviceType":18
nameString追加したいUptime内部Webチェックデバイスの名前。
例-"name": "Test-Web-Check-Int-V3-Int-New-4"
descriptionStringUptime内部ウェブチェック装置の説明。
例-"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コレクターに関連付けることができます。
  • に設定した場合 true単一のコレクターがアラート条件を満たした場合にアラートがトリガーされます。
  • に設定した場合 falseアラートは発生しません。
デフォルトでは、値は次のように設定されています。 false.
例-"individualSmAlertEnable": true
individualAlertLevelString個々のインスタンスに設定されたアラートレベルが individualSmAlertEnable=true
サポートされている値は次のとおりです warn, error, critical.
デフォルトでは、アラートレベルは次のように設定されています。 warn.
例-"individualAlertLevel": "error"
overallAlertLevelStringウェブチェック全体のインスタンスに適用されるアラートレベル。
サポートされている値は次のとおりです warn, error, critical.
デフォルトでは、アラートレベルは次のように設定されています。 warn.
例-"overallAlertLevel": "warn"
pollingInterval整数定期的にサービスをチェックする間隔(分単位)を示します。サポートされているポーリング間隔は 1 ~ 10 分です。デフォルトのポーリング間隔は 5 分。
例-"pollingInterval": 1
transition整数アラートがトリガーされるまでに失敗する必要のあるチェックの数。
サポートされている値は次のとおりです 110, 30, 60.
デフォルトでは、チェックの数は次のように設定されています。 1 これは、誤った生データが最初に発生した直後にアラートがトリガーされることを示しています。
例-"transition": 1
globalSmAlertCond整数 アラートをトリガーするために、テストに失敗した最小箇所数を示します。
サポートされている値は次のとおりです。
  • 0全ての場所
  • 1—場所の半分
  • 2複数の場所
  • 3—あらゆる場所
デフォルトでは、値は次のように設定されています。 0.
例-"globalSmAlertCond": 1
useDefaultLocationSettingブーリアン選択したデフォルトチェックポイントのインスタンスを作成する際に、ウェブサイトのデフォルトの位置情報設定を使用する必要があるかどうかを指定します。
デフォルトでは、値は次のように設定されています。 falseこれは、現在のリクエストの設定がインスタンス作成に使用されることを示しています。
例-"useDefaultLocationSetting": false
useDefaultAlertSettingブーリアン選択したチェックポイント用に作成されたインスタンスに、ウェブサイトのデフォルトのアラート設定を適用する必要があるかどうかを指定してください。
デフォルトでは、値は次のように設定されています。 falseこれは、現在のリクエストの設定がインスタンスに適用されることを示しています。
例-"useDefaultAlertSetting": false
testLocationJSONオブジェクト 設定されたチェックが監視される場所。内部ウェブチェックの場合、設定済み collectorIds デバイスを監視する。
JSONオブジェクトには、以下のパラメータを指定する必要があります。
  • all-に設定 false 提供する場合 collectorIds.
  • collectorIds—リストを提供する collectorIds.
  • smgIds—Uptime内部ウェブデバイスを追加する場合、 smgIds 空欄にする必要があります。
コレクターは以下のように指定する必要があります。 “{\”collectorIds\”:[12,67]}”
デフォルトでは、値は次のように設定されています。 “{\”all\”:true}”
例-"testLocation": { "all": false, "collectorIds": [ 12248 ], "smgIds": [] }
properties主要値のリストウェブチェックに関連付けられたプロパティ。プロパティは以下の形式で入力する必要があります。[{name1, value1}, {name2, value2}]
例-"properties": [{ "name": "testname", "value": "testvalue" }]
templateJSONオブジェクトウェブサイトを作成するためのテンプレート。
デフォルトでは、値は次のように設定されています。 null.
例-"template": null
stepsJSONオブジェクト 1つ以上の工程から構成される物体。
  • type—サービスステップタイプ。Uptime内部Webチェックデバイスの場合、値は次のように設定されます。 script.
    例-"type": "script"
  • enable—この手順を使用するために有効にする必要があるか無効にする必要があるかを指定します。
    デフォルトでは、このステップは使用可能になっています(つまり、 true).
    例-"enable": true
  • useDefaultRoot—ルートURLに「url」を付加する必要があるかどうかを指定します。
    例えば、ドメイン(またはルートURL)は www.google.com そして「url」は「maps」です。 useDefaultRoot に設定されています trueそして実行中は「www.google.com/maps 
    デフォルトでは、値は次のように設定されています。 false.
    例-"useDefaultRoot": true
  • urlステップの完全なURLを指定してください。URLにはドメインとパスが含まれている必要があります。
    例-"url": "www.google.com" or "/maps"
  • HTTPVersion—ウェブサービスへのリクエストで使用されたHTTPバージョン。
    サポートされているバージョンは 1.0 (NAIST) と 1.1.
    デフォルトでは、値は次のように設定されています。 1.1
    例-"HTTPVersion": "1.1"
  • HTTPMethod—Webサービスへのリクエストで使用されるHTTPメソッド。サポートされているメソッドは次のとおりです。 GET, HEAD, POST.
    デフォルトでは、値は次のように設定されています。 GET.
    例-"HTTPMethod": "GET"
  • name—手順の名前。
    例-"name": "__step0"
  • followRedirection—設定されたURLのHTTPリダイレクト後にチェックを実行する必要があるかどうかを示します。
    • に設定した場合 true そして、URLがリダイレクト(例えば、3xxステータスコード)で応答した場合、チェックはリダイレクト先のURLに進みます。
    • に設定した場合 falseチェックは元のURLのみを評価し、リダイレクトは追跡しません。

    デフォルトでは、値は次のように設定されています。 true。 例-"followRedirection": true
  • fullpageLoad—WebサービスへのHTTPリクエストが、依存するすべてのリソースを含むページ全体の読み込みが完了するまで待機する必要があるかどうかを指定します。これにより、すべてのページコンポーネントが正常に読み込まれたかどうかを確認できます。
    • に設定した場合 trueHTTPリクエストは、ページが完全に読み込まれるまで待機します。
    • に設定した場合 falseチェックは最初の応答(通常は基本HTML)のみを待ち、すべてのページコンポーネントの読み込みを待ちません。

    • デフォルトでは、値は次のように設定されています。 false.
      例-"fullpageLoad": false
  • requireAuth—ウェブサービスへのHTTPリクエストにユーザー認証が必要かどうかを示します。
    デフォルトでは、値は次のように設定されています。 false ユーザー認証が不要であることを示しています。
    例-"requireAuth": true
  • auth-もし requireAuth=true次に、ユーザー認証の詳細を入力します。JSONオブジェクトには、以下のパラメータを指定する必要があります。
    • type—認証タイプを指定します。サポートされている認証タイプは次のとおりです。 basic (NAIST) と ntlmデフォルトでは、値は basic.
    • userName—設定済みのチェックにアクセスするための登録済みユーザー名。
    • password—設定済みのチェックにアクセスするためのパスワード認証情報。
    • domain- もし type=ntlm次に、ドメインを指定します。

    例-“auth”:{“type”:”common”,”userName”:”test”,”password”:”example”}
  • HTTPHeaders—ウェブサービスへのHTTPリクエストに含まれるヘッダー。
    デフォルトでは、ヘッダーには空の文字列が含まれています。
    例-"HTTPHeaders": "Content-Type: application/json"
  • reqType—サポートされているリクエストタイプは config(NAIST) と script.
    • If "reqType": "config"外部ウェブチェックと同様の機能です。詳細については、以下を参照してください。 。
    • If reqType: "script" (内部ウェブチェックのみ対応) reqScriptリクエストを処理するために使用されるGroovyスクリプトが含まれています。
      ポストデータ処理(postDataEditType) ) POSTデータリクエストに以下の詳細を追加してください。
      • に設定した場合 nullHTTPBodyには、生の要求ペイロード(自由形式のテキスト)が含まれます。
      • に設定した場合 jsonHTTPBodyは有効なJSON形式である必要があります。
      • に設定した場合 xmlHTTPBodyは有効なXML形式である必要があります。
      • に設定した場合 x-www-form-urlencodedHTTPBodyはキーと値の形式に従う必要があります。例—name=website1
  • respType—サポートされている応答タイプは config(NAIST) と script.
    If respType: "script" (内部ウェブチェックのみ対応) respScriptレスポンスの処理と検証に使用されるGroovyスクリプトが含まれています。
    例-"respType": "script"
  • matchType—応答内のキーワード検索に使用する解釈方法の種類を指定してください。サポートされている方法は以下のとおりです。
    • plain—プレーンテキスト内のキーワードを検索します。
    • namevalue—キーワードをキーと値のペア形式で検索します。
    • xpath—XMLまたはHTML形式でキーワードを検索します。
    • json—キーワードをJSON形式で検索します。
    • wildcardグローバル式を使用してキーワードを検索します。

    デフォルトでは、値は次のように設定されています。 plain.
    例-"matchType": "plain"
  • keyword—ウェブサービスへのHTTPリクエストに対するレスポンスに必ず含まれていなければならない文字列キーワード。
    デフォルトでは、 keyword 空の文字列が含まれています。
    例-"keyword": ""
  • invertMatchキーワードがレスポンスに見つかった場合、または見つからなかった場合に、チェックを合格させる必要があるかどうかを指定します。
    • に設定した場合 true指定されたキーワードがレスポンスに見つからない場合にのみ、チェックが合格します。
    • に設定した場合 false指定されたキーワードがレスポンスに見つかった場合にのみ、チェックが合格します。

    デフォルトでは、値は次のように設定されています。false.
    例-"invertMatch": "false"
  • statusCode—ウェブサービスへのHTTPリクエストに対する、想定される応答ステータスコード。複数のステータスコードはカンマで区切られます。
    デフォルトでは、 statusCode 空の文字列が含まれています。
    例-"statusCode": "200"
  • path—経路は以下に基づいて異なります matchType 指定したとおりです。XML パス、JSON パス、またはキーを指定できます。 matchtypeis xpath, jsonまたは namevalueここでは、HTTPレスポンス内でキーワードが検索されます。
    例-"path": ""
domainStringウェブサイトのドメインまたはベースURL。
例-"domain": "www.google.com"
ignoreSSLブーリアン各ウェブチェックにおいて、SSLを無視するか適用するかを指定してください。
デフォルトでは、値は次のように設定されています。 false.
例-"ignoreSSL": true
pageLoadAlertTimeInMS整数アラートがトリガーされるまでに、ウェブページが各ステップで読み込むことができる最大時間(ミリ秒単位)。
デフォルトでは、値は次のように設定されています。 30000.
例-"pageLoadAlertTimeInMS": 30000
schemaStringURLに関連付けられたスキーマまたはプロトコル。サポートされている値は http (NAIST) と https.
デフォルトでは、値は次のように設定されています。 http.
例-"schema": "https"
alertExprString SSL証明書の警告しきい値(日数)。 triggerSSLExpirationAlert is true、その場合は値を指定する必要があります alertExpr.
例-"< 200 100 50"
  • SSL証明書の有効期限まで200日未満になると、警告アラートが発動します。
  • SSL証明書の有効期限まで100日未満になると、エラーアラートがトリガーされます。
  • SSL証明書の有効期限まで50日を切ると、重大な警告が発せられます。
例-"alertExpr": "< 30 25 15"
triggerSSLStatusAlertブーリアン SSL証明書の現在の状態に基づいて、アラートを有効または無効にすることができます。
  • に設定した場合 trueSSL証明書が有効期限切れ、失効、または信頼されていないなどの理由で無効になった場合、アラートがトリガーされます。これにより、SSL構成のセキュリティと有効性が確保されます。
  • に設定した場合 falseSSL証明書のステータスを示すアラートは発生しません。
デフォルトでは、値は次のように設定されます。 false.
例-"triggerSSLStatusAlert": false
triggerSSLExpirationAlertブーリアン SSL証明書の有効期限が近づいていることを知らせるアラートを有効または無効にすることができます。
  • に設定した場合 true設定されたしきい値に基づいて、SSL証明書の有効期限が切れる前にアラートがトリガーされます。これにより、ユーザーは証明書を事前に更新し、ダウンタイムやセキュリティ警告を未然に防ぐことができます。
  • に設定した場合 falseSSL証明書の有効期限が近づいていることを知らせるアラートは無効になっています。
デフォルトでは、値は次のように設定されます。 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リクエストで使用されるパラメータについて説明しています。

タイプ 詳細説明
typeString Uptimeデバイスの種類を指定してください。
サポートされている値は次のとおりです。
  • uptimewebcheck—稼働状況ウェブチェックデバイスを示します。
  • uptimepingcheck—稼働状況確認用pingチェックデバイスを示します。
  • 空白または空の値の場合、通常のデバイスであることを示します。
例-"type": "uptimewebcheck"
deviceType整数Uptime外部Webチェックデバイスの場合、デバイスタイプを次のように設定します。 18.
デフォルトでは、値は次のように設定されています。 0.
例-"deviceType":18
nameString追加したいUptime外部Webチェックデバイスの名前。
例-"name": "Test-Web-Check-Ext-V3-Ext-New-5"
descriptionStringUptime外部ウェブチェックデバイスの説明。
例-"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つまたは複数のサイトモニターに関連付けることができます。
  • に設定した場合 true単一のサイトモニターがアラート条件を満たした場合にアラートがトリガーされます。
  • に設定した場合 falseアラートは発生しません。
デフォルトでは、値は次のように設定されています。 false.
例-"individualSmAlertEnable": true
individualAlertLevelString個々のインスタンスに設定されたアラートレベルが individualSmAlertEnable=true
サポートされている値は次のとおりです warn, error, critical.
デフォルトでは、アラートレベルは次のように設定されています。 warn.
例-"individualAlertLevel": "error"
overallAlertLevelStringウェブチェック全体のインスタンスに適用されるアラートレベル。
サポートされている値は次のとおりです warn, error, critical.
デフォルトでは、アラートレベルは次のように設定されています。 warn.
例-"overallAlertLevel": "warn"
pollingInterval整数定期的にサービスをチェックする間隔(分単位)を示します。サポートされるポーリング間隔は1~10分です。
デフォルトでは、ポーリング間隔は次のように設定されています。 5 分。
例-"pollingInterval": 2
transition整数アラートがトリガーされるまでに失敗する必要のあるチェックの数。
サポートされている値は次のとおりです 110, 30, 60.
デフォルトでは、チェックの数は次のように設定されています。 1 これは、誤った生データが最初に発生した直後にアラートがトリガーされることを示しています。
例-"transition": 1
globalSmAlertCond整数アラートをトリガーするために、テストに失敗した最小箇所数を示します。
サポートされている値は次のとおりです。
  • 0全ての場所
  • 1—場所の半分
  • 2複数の場所
  • 3—あらゆる場所
デフォルトでは、値は次のように設定されています。 0.
例-"globalSmAlertCond": 0
useDefaultLocationSettingブーリアン選択したデフォルトチェックポイントのインスタンスを作成する際に、ウェブサイトのデフォルトの位置情報設定を使用する必要があるかどうかを指定します。
デフォルトでは、値は次のように設定されています。 falseこれは、現在のリクエストの設定がインスタンス作成に使用されることを示しています。
例-"useDefaultLocationSetting": false
useDefaultAlertSettingブーリアン選択したチェックポイント用に作成されたインスタンスに、ウェブサイトのデフォルトのアラート設定を適用する必要があるかどうかを指定します。
デフォルトでは、値は次のように設定されています。 falseこれは、現在のリクエストの設定がインスタンスに適用されることを示しています。
例-"useDefaultAlertSetting": false
testLocationJSONオブジェクト設定されたチェックが監視される場所。外部ウェブチェックの場合、設定済み smgIds デバイスを監視する。
JSONオブジェクトには、以下のパラメータを指定する必要があります。
  • all-に設定 true 提供する場合 smgIds.
  • collectorIds—Uptime外部ウェブデバイスを追加する場合、 collectorIds 空欄にする必要があります。
  • smgIds—リストを提供する smgIds
サイトモニターの設置場所は以下のとおりです。
  • 2—米国 – ワシントンD.C.
  • 3—米国オレゴン州
  • 4—ヨーロッパ – ダブリン
  • 5—アジア – シンガポール
  • 6—オーストラリア – シドニー
場所を1つまたは複数指定できます。
例-“{\”smgIds\”:[2,3]}”
お願い: 内部文字列をエンコードする必要があります。
デフォルトでは、値は次のように設定されています。 “{\”all\”:true}”
例-"testLocation": { "all": true, "collectorIds": [ ], "smgIds": [2,3,4] }
properties主要値のリストウェブチェックに関連付けられたプロパティ。プロパティは以下の形式で入力する必要があります。[{name1, value1}, {name2, value2}]
例-"properties": [{ "name": "testname", "value": "testvalue" }]
templateJSONオブジェクトウェブサイトを作成するためのテンプレート。
デフォルトでは、値は次のように設定されています。 null.
例-"template": null
stepsJSONオブジェクト 1つ以上の工程から構成される物体。
  • type—サービスステップタイプ。Uptime外部Webチェックデバイスの場合、値は次のように設定されます。 config.
    例-"type": "config"
  • enable—この手順を使用するために有効にする必要があるか無効にする必要があるかを指定します。
    デフォルトでは、このステップは使用可能になっています(つまり、 true).
    例-"enable": true
  • useDefaultRoot—ルートURLに「url」を付加する必要があるかどうかを指定します。
    例えば、ドメイン(またはルートURL)は www.google.com そして「url」は「maps」です。 useDefaultRoot に設定されています trueそして実行中は「www.google.com/maps 
    デフォルトでは、値は次のように設定されています。 false.
    例-"useDefaultRoot": true
  • urlステップの完全なURLを指定してください。URLにはドメインとパスが含まれている必要があります。
    例-"url": "www.google.com" or "/maps"
  • HTTPVersion—ウェブサービスへのリクエストで使用されたHTTPバージョン。
    サポートされているバージョンは 1.0 (NAIST) と 1.1.
    デフォルトでは、値は次のように設定されています。 1.1
    例-"HTTPVersion": "1.1"
  • HTTPMethod—Webサービスへのリクエストで使用されるHTTPメソッド。サポートされているメソッドは次のとおりです。 GET, HEAD, POST.
    デフォルトでは、値は次のように設定されています。 GET.
    例-"HTTPMethod": "GET"
  • name—手順の名前。
    例-"name": "__step0"
  • followRedirection—設定されたURLのHTTPリダイレクト後にチェックを実行する必要があるかどうかを示します。
    • に設定した場合 true そして、URLがリダイレクト(例えば、3xxステータスコード)で応答した場合、チェックはリダイレクト先のURLに進みます。
    • に設定した場合 falseチェックは元のURLのみを評価し、リダイレクトは追跡しません。

    デフォルトでは、値は次のように設定されています。 true。 例-"followRedirection": true
  • fullpageLoad—WebサービスへのHTTPリクエストが、依存するすべてのリソースを含むページ全体の読み込みが完了するまで待機する必要があるかどうかを指定します。これにより、すべてのページコンポーネントが正常に読み込まれたかどうかを確認できます。
    • に設定した場合 trueHTTPリクエストは、ページが完全に読み込まれるまで待機します。
    • に設定した場合 falseチェックは最初の応答(通常は基本HTML)のみを待ち、すべてのページコンポーネントの読み込みを待ちません。

    • デフォルトでは、値は次のように設定されています。 false.
      例-"fullpageLoad": false
  • requireAuth—ウェブサービスへのHTTPリクエストにユーザー認証が必要かどうかを示します。
    デフォルトでは、値は次のように設定されています。 false ユーザー認証が不要であることを示しています。
    例-"requireAuth": true
  • auth-もし requireAuth=true次に、ユーザー認証の詳細を入力します。JSONオブジェクトには、以下のパラメータを指定する必要があります。
    • type—認証タイプを指定します。サポートされている認証タイプは次のとおりです。 basic (NAIST) と ntlmデフォルトでは、値は basic.
    • userName—設定済みのチェックにアクセスするための登録済みユーザー名。
    • password—設定済みのチェックにアクセスするためのパスワード認証情報。
    • domain- もし type=ntlm次に、ドメインを指定します。

    例-“auth”:{“type”:”common”,”userName”:”test”,”password”:”example”}
  • HTTPHeaders—ウェブサービスへのHTTPリクエストに含まれるヘッダー。
    デフォルトでは、ヘッダーには空の文字列が含まれています。
    例-"HTTPHeaders": "Content-Type: application/json"
  • reqType-もし "reqType": "config" ポストデータ処理用 postDataEditType以下の詳細をPOSTデータリクエストに追加してください。
    • に設定した場合 nullHTTPBodyには、生の要求ペイロード(自由形式のテキスト)が含まれます。
    • に設定した場合 jsonHTTPBodyは有効なJSON形式である必要があります。
    • に設定した場合 xmlHTTPBodyは有効なXML形式である必要があります。
    • に設定した場合 x-www-form-urlencodedHTTPBodyはキーと値の形式に従う必要があります。例—name=website1
    • 例-"reqType": "config"
  • respType—ステップの応答タイプを指定します。
    例-"respType": "config"
  • matchType—応答内のキーワード検索に使用する解釈方法の種類を指定してください。サポートされている方法は以下のとおりです。
    • plain—プレーンテキスト内のキーワードを検索します。
    • namevalue—キーワードをキーと値のペア形式で検索します。
    • xpath—XMLまたはHTML形式でキーワードを検索します。
    • json—キーワードをJSON形式で検索します。
    • wildcard—glob式を使用してキーワードを検索します。

    デフォルトでは、値は次のように設定されています。 plain.
    例-"matchType": "plain"
  • keyword—ウェブサービスへのHTTPリクエストに対するレスポンスに必ず含まれていなければならない文字列キーワード。
    デフォルトでは、 keyword 空の文字列が含まれています。
    例-"keyword": ""
  • invertMatchキーワードがレスポンスに見つかった場合、または見つからなかった場合に、チェックを合格させる必要があるかどうかを指定します。
    • に設定した場合 true指定されたキーワードがレスポンスに見つからない場合にのみ、チェックが合格します。
    • に設定した場合 false指定されたキーワードがレスポンスに見つかった場合にのみ、チェックが合格します。

    デフォルトでは、値は次のように設定されています。false.
    例-"invertMatch": "false"
  • statusCode—ウェブサービスへのHTTPリクエストに対する、想定される応答ステータスコード。複数のステータスコードはカンマで区切られます。
    デフォルトでは、 statusCode 空の文字列が含まれています。
    例-"statusCode": "200"
  • path—経路は以下に基づいて異なります matchType 指定したとおりです。XML パス、JSON パス、またはキーを指定できます。 matchtypeis xpath, jsonまたは namevalueここでは、HTTPレスポンス内でキーワードが検索されます。
    例-"path": ""
domainStringウェブサイトのドメインまたはベースURL。
例-"domain": "www.google.com"
ignoreSSLブーリアン各ウェブチェックにおいて、SSLを無視するか適用するかを指定してください。
デフォルトでは、値は次のように設定されています。 false.
例-"ignoreSSL": true
pageLoadAlertTimeInMS整数アラートがトリガーされるまでに、ウェブページが各ステップで読み込むことができる最大時間(ミリ秒単位)。
デフォルトでは、値は次のように設定されています。 30000.
例-"pageLoadAlertTimeInMS": 30000
schemaStringURLに関連付けられたスキーマまたはプロトコル。サポートされている値は http (NAIST) と https.
デフォルトでは、値は次のように設定されています。 http.
例-"schema": "https"
alertExprStringSSL証明書の警告しきい値(日数)。 triggerSSLExpirationAlert is true、その場合は値を指定する必要があります alertExpr.
例-"< 150 100 50"
  • SSL証明書の有効期限まで150日未満になると、警告アラートが発動します。
  • SSL証明書の有効期限まで100日未満になると、エラーアラートがトリガーされます。
  • SSL証明書の有効期限まで50日を切ると、重大な警告が発せられます。
例-"alertExpr": "< 35 25 15"
triggerSSLStatusAlertブーリアン SSL証明書の現在の状態に基づいて、アラートを有効または無効にすることができます。
  • に設定した場合 trueSSL証明書が有効期限切れ、失効、または信頼されていないなどの理由で無効になった場合、アラートがトリガーされます。これにより、SSL構成のセキュリティと有効性が確保されます。
  • に設定した場合 falseSSL証明書のステータスを示すアラートは発生しません。
デフォルトでは、値は次のように設定されます。 false.
例-"triggerSSLStatusAlert": false
triggerSSLExpirationAlertブーリアン SSL証明書の有効期限が近づいていることを知らせるアラートを有効または無効にすることができます。
  • に設定した場合 true設定されたしきい値に基づいて、SSL証明書の有効期限が切れる前にアラートがトリガーされます。これにより、ユーザーは証明書を事前に更新し、ダウンタイムやセキュリティ警告を未然に防ぐことができます。
  • に設定した場合 falseSSL証明書の有効期限が近づいていることを知らせるアラートは無効になっています。
デフォルトでは、値は次のように設定されます。 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)

14日間フルアクセス LogicMonitor プラットフォーム