Pakiety monitorowania i reguły map
API pakietów monitorowania i reguł map pozwala uzyskać i ustawić różne właściwości pakietów monitorowania i zasad dotyczących map. Ponadto może zostać użyte do uzyskania listy węzłów, które używają pakietu monitorowania lub reguły i modyfikować taką listę, dodając i usuwając węzły.
Wszystkie poniższe żądania można zastosować zarówno dla pakietów monitorowania jak i reguł map
get-monitoring-pack-properties
Uzyskaj właściwości pakietu monitorowania
Uzyskaj właściwości pakietu monitorowania na podstawie filtru
GET/api/rest/2/policies/<policy>?properties=<filter>
Lista dodatkowych właściwości pakietu monitorowania
cURL
curl --url "http://localhost/api/rest/2/policies/CPU?api_key=<your-api-key>&properties=name,status"
Node.js
const http = require('http'); http.get('http://localhost/api/rest/2/policies/CPU?api_key=<your-api-key>&properties=name,status', (res) => { res.setEncoding('utf8'); res.on('error', (error) => { console.log(error) }); res.on('data', (chunk) => { console.log(chunk) }) });
PowerShell
Invoke-RestMethod -Uri "http://localhost/api/rest/2/policies/CPU?api_key=<your-api-key>&properties=name,status"
Python
import requests requests.get('http://localhost/api/rest/2/policies/CPU?api_key=<your-api-key>&properties=name,status')
Parametry
| Nazwa | Opis |
|---|---|
| policy | ID reguły, nazwa lub ścieżka |
| filter | Lista właściwości. Zwraca wszystkie właściwości, w razie pominięcia, wartość wynosi "all" lub "*" |
Kody statusu
| Kod statusu | Nazwa |
|---|---|
| 200 | OK |
| 401 | Brak dostępu |
| 404 | Nie znaleziono reguły |
Wynik
{ "id": 1050, "name": "CPU", "status": "unknown", "stats": { "nodes": { "total": 0, "ok": 0, "unknown": 0, "warning": 0, "error": 0, "alerts": { "active": 0, "las24Hours": { "unacknowledged": 0, "total": 0, "critical": 0, "warning": 0 } } }, "maps": { "total": 2, "ok": 0, "unknown": 0, "warning": 2, "error": 0 } }, "path": "/Monitoring Packs/Operating Systems/Windows/CPU", "isDynamic": true, "isFolder": true, "readOnly": false }
get-monitoring-pack-property
Uzyskaj właściwość pakietu monitorowania
Uzyskaj pojedynczą właściwość pakietu monitorowania
GET/api/rest/2/policies/<policy>/<property>
Lista dodatkowych właściwości pakietu monitorowania
cURL
curl --url "http://localhost/api/rest/2/policies/CPU/id?api_key=<your-api-key>"
Node.js
const http = require('http'); http.get('http://localhost/api/rest/2/policies/CPU/id?api_key=<your-api-key>', (res) => { res.setEncoding('utf8'); res.on('error', (error) => { console.log(error) }); res.on('data', (chunk) => { console.log(chunk) }) });
PowerShell
Invoke-RestMethod -Uri "http://localhost/api/rest/2/policies/CPU/id?api_key=<your-api-key>"
Python
import requests requests.get('http://localhost/api/rest/2/policies/CPU/id?api_key=<your-api-key>')
Parametry
| Nazwa | Opis |
|---|---|
| policy | ID reguły, nazwa lub ścieżka |
| property | Nazwa właściwości do uzyskania |
Kody statusu
| Kod statusu | Nazwa |
|---|---|
| 200 | OK |
| 401 | Brak dostępu |
| 404 | Nie znaleziono reguły |
Wynik
{ "id": 78 }
set-monitoring-pack-property
Ustaw właściwość pakietu monitorowania
Ustaw właściwość pakietu monitorowania
PUT/api/rest/2/policies/<policy>/<property>
cURL
curl --request PUT --url "https://localhost/api/rest/2/policies/1050?api_key=<your-api-key>" --header "Content-Type: application/json" --data "{\"name\": \"New Name\"}"
Node.js
const http = require('http'), options = { method: 'PUT', hostname: 'localhost', path: '/api/rest/2/policies/1050', headers: { 'Content-Type': 'application/json', "x-api-key": '<your-api-key>' } }, viewData = { "name": "New Name" }; const req = http.request(options, (res) => { res.setEncoding('utf8');
res.on('error', (error) => { console.log(error) }); res.on('data', (chunk) => { console.log(chunk) }) }); req.write(JSON.stringify(viewData)); req.end();
PowerShell
$url = "http://localhost/api/rest/2/policies/1050" $viewData = @{ name='New Name' } $body = (ConvertTo-Json $viewData) $hdrs = @{} $hdrs.Add("X-API-KEY","<your-api-key>") $hdrs.Add("Content-Type","application/json") Invoke-RestMethod -Uri $url -Method Put -Body $body -Headers $hdrs
Python
import requests url = 'http://localhost/api/rest/2/policies/1050' data = { "name": "New Name" } headers = { 'Content-Type': 'application/json', 'x-api-key': '<your-api-key>' } requests.put(url=url, data=data, headers=headers)
Parametry
| Nazwa | Opis |
|---|---|
| view | ID reguły, nazwa lub ścieżka |
| property | Nazwa właściwości reguły do ustawienia |
Kody statusu
| Kod statusu | Nazwa |
|---|---|
| 200 | OK |
| 401 | Brak dostępu |
| 404 | Nie znaleziono reguły |
Wynik
{ "status":"ok" }
enable-monitoring-pack
Włącz pakiet monitorowania
Włącz alarmowanie i gromadzenie danych pakietu monitorowania
PUT/api/rest/2/policies/<view>/enable
cURL
curl --request PUT --url "https://localhost/api/rest/2/policies/1050/enable?api_key=<your-api-key>"
Node.js
const http = require('http'), options = { method: 'PUT', hostname: 'localhost', path: '/api/rest/2/policies/1050/enable', headers: { 'Content-Type': 'application/json', "x-api-key": '<your-api-key>' } }; const req = http.request(options, (res) => { res.setEncoding('utf8'); res.on('error', (error) => { console.log(error) }); res.on('data', (chunk) => { console.log(chunk) }) }); req.end();
PowerShell
$url = "http://localhost/api/rest/2/policies/1050/enable" $hdrs = @{} $hdrs.Add("X-API-KEY","<your-api-key>") $hdrs.Add("Content-Type","application/json") Invoke-RestMethod -Uri $url -Method Put -Headers $hdrs
Python
import requests url = 'http://localhost/api/rest/2/policies/1050/enable' headers = { 'Content-Type': 'application/json', 'x-api-key': '<your-api-key>' } requests.put(url=url, headers=headers)
Parametry
| Nazwa | Opis |
|---|---|
| view | ID widoku, nazwa lub ścieżka |
Kody statusu
| Kod statusu | Nazwa |
|---|---|
| 200 | OK |
| 401 | Brak dostępu |
| 404 | Nie znaleziono reguły |
Wynik
{ "status":"ok" }
disable-monitoring-pack
Wyłącz pakiet monitorowania
Wyłącz alarmowanie i gromadzenie danych pakietu alarmowania
PUT/api/rest/2/policies/<policy>/disable
cURL
curl --request PUT --url "https://localhost/api/rest/2/views/1050/disable?api_key=<your-api-key>"
Node.js
const http = require('http'), options = { method: 'PUT', hostname: 'localhost', path: '/api/rest/2/views/1050/disable', headers: { 'Content-Type': 'application/json', "x-api-key": '<your-api-key>' } }; const req = http.request(options, (res) => { res.setEncoding('utf8'); res.on('error', (error) => { console.log(error) }); res.on('data', (chunk) => { console.log(chunk) }) }); req.end();
PowerShell
$url = "http://localhost/api/rest/2/views/1050/disable" $hdrs = @{} $hdrs.Add("X-API-KEY","<your-api-key>") $hdrs.Add("Content-Type","application/json") Invoke-RestMethod -Uri $url -Method Put -Headers $hdrs
Python
import requests url = 'http://localhost/api/rest/2/views/1050/disable' headers = { 'Content-Type': 'application/json', 'x-api-key': '<your-api-key>' } requests.put(url=url, headers=headers)
Parametry
| Nazwa | Opis |
|---|---|
| policy | ID reguły, nazwa lub ścieżka |
Kody statusu
| Kod statusu | Nazwa |
|---|---|
| 200 | OK |
| 401 | Brak dostępu |
| 404 | Nie znaleziono reguły |
Wynik
{ "status":"ok" }
get-list-of-nodes-of-the-monitoring-pack
Uzyskaj listę węzłów pakietu monitorowania
Uzyskaj wszystkie węzły należące do pakietu monitorowania
GET/api/rest/2/policies/<policy>/nodes
cURL
curl --url "http://localhost/api/rest/2/policies/CPU/nodes?api_key=<your-api-key>"
Node.js
const http = require('http'); http.get('http://localhost/api/rest/2/policies/CPU/nodes?api_key=<your-api-key>', (res) => { res.setEncoding('utf8'); res.on('error', (error) => { console.log(error) }); res.on('data', (chunk) => { console.log(chunk) }) });
PowerShell
Invoke-RestMethod -Uri "http://localhost/api/rest/2/policies/CPU/nodes?api_key=<your-api-key>"
Python
import requests requests.get('http://localhost/api/rest/2/policies/CPU/nodes?api_key=<your-api-key>')
Parametry
| Nazwa | Opis |
|---|---|
| policy | Nazwa, ID lub ścieżka do zasady |
Kody statusu
| Kod statusu | Nazwa |
|---|---|
| 200 | OK |
| 401 | Brak dostępu |
| 404 | Nie znaleziono reguły |
Wynik
[ {"id":1019,"name":"foo","networkAddress":"192.168.1.89","dnsName":"foo.test.com"}, {"id":1019,"name":"bar","networkAddress":"192.168.1.10","dnsName":"bar.test.com"} ]
add-node-to-the-monitoring-pack
Dodaj węzeł do pakietu monitorowania
Dodaj węzeł do pakietu monitorowania (dotyczy tylko nieautomatycznych pakietów monitorowania)
POST/api/rest/2/policies/<view>/nodes/<node>
cURL
curl --request POST --url "https://localhost/api/rest/2/policies/CPU/nodes/192.168.1.10?api_key=<your-api-key>"
Node.js
const http = require('http'), querystring = require('querystring'), options = { method: 'POST', hostname: 'localhost', path: '/api/rest/2/policies/CPU/nodes/192.168.1.10' , headers: { "x-api-key": '<your-api-key>' } }; const req = http.request(options, (res) => { res.setEncoding('utf8'); res.on('error', (error) => { console.log(error) }); res.on('data', (chunk) => { console.log(chunk) }) }); req.end();
PowerShell
$url = "http://localhost/api/rest/2/policies/CPU/nodes/192.168.1.10" $hdrs = @{} $hdrs.Add("X-API-KEY","<your-api-key>") $hdrs.Add("Content-Type","application/json") Invoke-RestMethod -Uri $url -Method Post -Headers $hdrs
Python
import requests url = 'http://localhost/api/rest/2/policies/CPU/nodes/192.168.1.10' headers = { 'Content-Type': 'application/json', 'x-api-key': '<your-api-key>' } response = requests.post(url=url, headers=headers)
Parametry
| Nazwa | Opis |
|---|---|
| view | Nazwa, ID lub ścieżka do reguły |
| node | ID, nazwa lub adres IP węzła do dodania |
Kody statusu
| Kod statusu | Nazwa |
|---|---|
| 200 | OK |
| 401 | Brak dostępu |
| 404 | Nie znaleziono reguły lub węzła |
Wynik
{ "status":"ok" }
remove-node-from-the-monitoring-pack
Usuń węzeł z pakietu monitorowania
Usuń węzeł z pakietu monitorowania (dotyczy tylko nieautomatycznych pakietów monitorowania)
DELETE/api/rest/2/policies/<policy>/nodes/<node>
cURL
curl --request DELETE --url "https://localhost/api/rest/2/policies/CPU/nodes/192.168.1.10?api_key=<your-api-key>"
Node.js
const http = require('http'), querystring = require('querystring'), options = { method: 'DELETE', hostname: 'localhost', path: '/api/rest/2/policies/CPU/nodes/192.168.1.10' , headers: { "x-api-key": '<your-api-key>' } }; const req = http.request(options, (res) => { res.setEncoding('utf8'); res.on('error', (error) => { console.log(error) }); res.on('data', (chunk) => { console.log(chunk) }) }); req.end();
PowerShell
$url = "http://localhost/api/rest/2/policies/CPU/nodes/192.168.1.10" $hdrs = @{} $hdrs.Add("X-API-KEY","<your-api-key>") $hdrs.Add("Content-Type","application/json") Invoke-RestMethod -Uri $url -Method Delete -Headers $hdrs
Python
import requests url = 'http://localhost/api/rest/2/policies/CPU/nodes/192.168.1.10' headers = { 'Content-Type': 'application/json', 'x-api-key': '<your-api-key>' } response = requests.delete(url=url, headers=headers)
Parametry
| Name | Description |
|---|---|
| policy | Nazwa, ID lub ścieżka do reguły |
| node | ID, nazwa lub adres IP węzła do usunięcia |
Kody statusu
| Kod statusu | Nazwa |
|---|---|
| 200 | OK |
| 401 | Brak dostępu |
| 404 | Nie znaleziono reguły lub węzła |
Wynik
{ "status":"ok" }