EDB Postgres Enterprise Manager REST APIs v2.0: Custom Probe v10.2
get__probe_
Code samples
# You can also use wget curl -X GET https://PEM-SERVER-IP/api/v2/probe/ \ -H 'Accept: application/json' \ -H 'X-Auth-Token: string'
import requests headers = { 'Accept': 'application/json', 'X-Auth-Token': 'string' } r = requests.get('https://PEM-SERVER-IP/api/v2/probe/', headers = headers) print(r.json())
const headers = { 'Accept':'application/json', 'X-Auth-Token':'string' }; fetch('https://PEM-SERVER-IP/api/v2/probe/', { method: 'GET', headers: headers }) .then(function(res) { return res.json(); }).then(function(body) { console.log(body); });
GET /probe/
Get all the custom/system probes.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
X-Auth-Token | header | string | true | Token of authorization |
Example responses
200 Response
[ { "probe_id": 0, "probe_name": "string", "enabled": true, "target_type": 0, "internal_name": "string", "is_system_probe": true, "any_server_version": true, "collection_method": "w", "interval": 0, "lifetime": 0, "discard_history": true, "platform": "string", "probe_code": "string", "probe_columns": [ { "pc_id": 0, "pc_name": "string", "pc_data_type": "bigint", "pc_internal_name": "string", "pc_unit": "string", "pc_col_type": "m", "pc_position": 0, "pc_graphable": true, "pc_calc_pit": true, "pc_pit_default": true } ], "alternate_code": [ { "server_version_id": 0, "server_probe_code": "string" } ] } ]
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Successful response | Inline |
Response Schema
Status Code 200
Name | Type | Required | Restrictions | Description | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
anonymous | [CustomProbes] | false | none | none | ||||||||||||||||||||||||||
» probe_id | integer | false | none | Identifier for a probe. | ||||||||||||||||||||||||||
» probe_name | string | false | none | Name of the probe. | ||||||||||||||||||||||||||
» enabled | boolean | false | none | Defines whether the probe is enabled/disabled by default. | ||||||||||||||||||||||||||
» target_type | integer | false | none | Defines the type of the object on which the probe is applicable to.
| ||||||||||||||||||||||||||
» internal_name | string | false | none | Defines the internal name of the probe. PEM system creates internal tables for storing the probe statistics in 'pemdata', and 'pemhistory' schema, and name of those table will be same as internal name. | ||||||||||||||||||||||||||
» is_system_probe | boolean | false | none | Defines whether this probe is user defined, or not. Value for this flag will always be false for a user defined probe. | ||||||||||||||||||||||||||
» any_server_version | boolean | false | none | Defines whether this probe is applicable to any version of Postgres variant. For more details, please follow the documenation. | ||||||||||||||||||||||||||
» collection_method | string | false | none | Defines the method of statistics collection. PEM supports three methods for custom made probes. i.e. SQL, WMI, Batch/Shell script.
| ||||||||||||||||||||||||||
» interval | integer | false | none | Defines how frequently the probe will collect the statistics (in seconds). | ||||||||||||||||||||||||||
» lifetime | integer | false | none | Defines the history data retention time (in days). It does not have any effect, if 'discard_history' is set to true. | ||||||||||||||||||||||||||
» discard_history | boolean | false | none | Defines whether to discard the history data. It will not store the history of the data for this probe, when 'discard_history' is set to false. | ||||||||||||||||||||||||||
» platform | string | false | none | Defines on which platform this probe can run on. It is only applicable to an agent level probe. | ||||||||||||||||||||||||||
» probe_code | string | false | none | A SQL/Batch script/Shell script/WMI script to collect the statistics as per definition of the code. | ||||||||||||||||||||||||||
» probe_columns | [object] | false | none | none | ||||||||||||||||||||||||||
»» pc_id | integer | false | none | Identifier of the column | ||||||||||||||||||||||||||
»» pc_name | string | false | none | Name of the column | ||||||||||||||||||||||||||
»» pc_data_type | string | false | none | Data type of the column. Supported datatypes are:
| ||||||||||||||||||||||||||
»» pc_internal_name | string | false | none | Returns the internal name of the column. | ||||||||||||||||||||||||||
»» pc_unit | string | false | none | Returns the unit of the column. | ||||||||||||||||||||||||||
»» pc_col_type | string | false | none | Returns the columns is part of the primary key of the internal table, or not. 'k' stands for a key column, and 'm' stands for a member/normal column. | ||||||||||||||||||||||||||
»» pc_position | integer | false | none | Returns the position of the column in the internal table. | ||||||||||||||||||||||||||
»» pc_graphable | boolean | false | none | Returns whether the data of the column is graphable on a chart, or not. | ||||||||||||||||||||||||||
»» pc_calc_pit | boolean | false | none | Returns whether server calculates the point-in-time for the metric data for this column. | ||||||||||||||||||||||||||
»» pc_pit_default | boolean | false | none | Returns the metric is stored by point-in-time by default. Please refer the 'Custom Probes' section in the documentation for detailed information. | ||||||||||||||||||||||||||
» alternate_code | [AlternateServerProbeCode] | false | none | none | ||||||||||||||||||||||||||
»» server_version_id | integer | false | none | Server version id for the support monitored server
| ||||||||||||||||||||||||||
»» server_probe_code | string | false | none | SQL query to run on the specified server version |
Enumerated Values
Property | Value |
---|---|
collection_method | w |
collection_method | b |
collection_method | s |
pc_data_type | bigint |
pc_data_type | char |
pc_data_type | decimal |
pc_data_type | double precision |
pc_data_type | integer |
pc_data_type | numeric |
pc_data_type | real |
pc_data_type | text |
pc_data_type | text[] |
pc_data_type | timestamp |
pc_data_type | timestamptz |
pc_col_type | m |
pc_col_type | k |
Info
This operation does not require authentication
post__probe_
Code samples
# You can also use wget curl -X POST https://PEM-SERVER-IP/api/v2/probe/ \ -H 'Content-Type: application/json' \ -H 'X-Auth-Token: string'
import requests headers = { 'Content-Type': 'application/json', 'X-Auth-Token': 'string' } r = requests.post('https://PEM-SERVER-IP/api/v2/probe/', headers = headers) print(r.json())
const inputBody = '{ "probe_name": "string", "collection_method": "w", "enabled": true, "target_type": 0, "any_server_version": true, "interval": 0, "lifetime": 0, "discard_history": true, "platform": "string", "probe_code": "string", "probe_columns": [ { "pc_name": "string", "pc_data_type": "bigint", "pc_unit": "string", "pc_col_type": "m", "pc_graphable": true, "pc_calc_pit": true, "pc_pit_default": true } ], "alternate_code": [ { "server_version_id": 0, "server_probe_code": "string" } ] }'; const headers = { 'Content-Type':'application/json', 'X-Auth-Token':'string' }; fetch('https://PEM-SERVER-IP/api/v2/probe/', { method: 'POST', body: inputBody, headers: headers }) .then(function(res) { return res.json(); }).then(function(body) { console.log(body); });
POST /probe/
Create new custom probe
Body parameter
{ "probe_name": "string", "collection_method": "w", "enabled": true, "target_type": 0, "any_server_version": true, "interval": 0, "lifetime": 0, "discard_history": true, "platform": "string", "probe_code": "string", "probe_columns": [ { "pc_name": "string", "pc_data_type": "bigint", "pc_unit": "string", "pc_col_type": "m", "pc_graphable": true, "pc_calc_pit": true, "pc_pit_default": true } ], "alternate_code": [ { "server_version_id": 0, "server_probe_code": "string" } ] }
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
X-Auth-Token | header | string | true | Token of authorization |
body | body | CustomProbePostData | true | none |
Example responses
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Status 200 | None |
Response Schema
Info
This operation does not require authentication
get__probe_{probe_id}
Code samples
# You can also use wget curl -X GET https://PEM-SERVER-IP/api/v2/probe/{probe_id} \ -H 'Accept: application/json' \ -H 'X-Auth-Token: string'
import requests headers = { 'Accept': 'application/json', 'X-Auth-Token': 'string' } r = requests.get('https://PEM-SERVER-IP/api/v2/probe/{probe_id}', headers = headers) print(r.json())
const headers = { 'Accept':'application/json', 'X-Auth-Token':'string' }; fetch('https://PEM-SERVER-IP/api/v2/probe/{probe_id}', { method: 'GET', headers: headers }) .then(function(res) { return res.json(); }).then(function(body) { console.log(body); });
GET /probe/{probe_id}
Get probe information for specified probe id.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
probe_id | path | integer | true | Probe ID for which probe information will be returned. |
X-Auth-Token | header | string | true | Token of authorization |
Example responses
200 Response
{ "probe_id": 0, "probe_name": "string", "enabled": true, "target_type": 0, "internal_name": "string", "is_system_probe": true, "any_server_version": true, "collection_method": "w", "interval": 0, "lifetime": 0, "discard_history": true, "platform": "string", "probe_code": "string", "probe_columns": [ { "pc_id": 0, "pc_name": "string", "pc_data_type": "bigint", "pc_internal_name": "string", "pc_unit": "string", "pc_col_type": "m", "pc_position": 0, "pc_graphable": true, "pc_calc_pit": true, "pc_pit_default": true } ], "alternate_code": [ { "server_version_id": 0, "server_probe_code": "string" } ] }
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Successful response | CustomProbes |
Info
This operation does not require authentication
put__probe_{probe_id}
Code samples
# You can also use wget curl -X PUT https://PEM-SERVER-IP/api/v2/probe/{probe_id} \ -H 'Content-Type: application/json' \ -H 'X-Auth-Token: string'
import requests headers = { 'Content-Type': 'application/json', 'X-Auth-Token': 'string' } r = requests.put('https://PEM-SERVER-IP/api/v2/probe/{probe_id}', headers = headers) print(r.json())
const inputBody = '{ "interval_min": 0, "interval_sec": 0, "lifetime": 0, "enabled": true, "probe_code": "string", "probe_columns": { "changed": { "pc_id": 0, "pc_unit": "string", "pc_graphable": true } }, "alternate_code": { "changed": [ { "server_version_id": 0, "server_probe_code": "string" } ], "deleted": [ { "server_version_id": 0 } ], "added": [ { "server_version_id": 0, "server_probe_code": "string" } ] } }'; const headers = { 'Content-Type':'application/json', 'X-Auth-Token':'string' }; fetch('https://PEM-SERVER-IP/api/v2/probe/{probe_id}', { method: 'PUT', body: inputBody, headers: headers }) .then(function(res) { return res.json(); }).then(function(body) { console.log(body); });
PUT /probe/{probe_id}
Update custom/system probe information for specified probe id.
Body parameter