
Updated monitor resource documentation with new response output. Added links to standard monitor parameters that can be modified.
286 lines
8.3 KiB
Markdown
286 lines
8.3 KiB
Markdown
# Monitor Resource
|
|
|
|
A monitor resource represents a monitor inside MaxScale that monitors one or
|
|
more servers.
|
|
|
|
## Resource Operations
|
|
|
|
### Get a monitor
|
|
|
|
Get a single monitor. The _:name_ in the URI must be a valid monitor name with
|
|
all whitespace replaced with hyphens. The monitor names are case-sensitive.
|
|
|
|
```
|
|
GET /monitors/:name
|
|
```
|
|
|
|
#### Response
|
|
|
|
`Status: 200 OK`
|
|
|
|
```javascript
|
|
{
|
|
"links": {
|
|
"self": "http://localhost:8989/v1/monitors/MySQL-Monitor"
|
|
},
|
|
"data": {
|
|
"id": "MySQL-Monitor",
|
|
"type": "monitors",
|
|
"relationships": {
|
|
"servers": {
|
|
"links": {
|
|
"self": "http://localhost:8989/v1/servers/"
|
|
},
|
|
"data": [
|
|
{
|
|
"id": "server1",
|
|
"type": "servers"
|
|
},
|
|
{
|
|
"id": "server2",
|
|
"type": "servers"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"attributes": {
|
|
"module": "mysqlmon",
|
|
"state": "Running",
|
|
"parameters": {
|
|
"user": "maxuser",
|
|
"password": "maxpwd",
|
|
"monitor_interval": 10000,
|
|
"backend_connect_timeout": 3,
|
|
"backend_read_timeout": 1,
|
|
"backend_write_timeout": 2,
|
|
"backend_connect_attempts": 1,
|
|
"detect_replication_lag": false,
|
|
"detect_stale_master": true,
|
|
"detect_stale_slave": true,
|
|
"mysql51_replication": false,
|
|
"multimaster": false,
|
|
"detect_standalone_master": false,
|
|
"failcount": 5,
|
|
"allow_cluster_recovery": true,
|
|
"journal_max_age": 28800
|
|
},
|
|
"monitor_diagnostics": {
|
|
"monitor_id": 0,
|
|
"detect_stale_master": true,
|
|
"detect_stale_slave": true,
|
|
"detect_replication_lag": false,
|
|
"multimaster": false,
|
|
"detect_standalone_master": false,
|
|
"failcount": 5,
|
|
"allow_cluster_recovery": true,
|
|
"mysql51_replication": false,
|
|
"journal_max_age": 28800,
|
|
"server_info": [
|
|
{
|
|
"name": "server1",
|
|
"server_id": 0,
|
|
"master_id": 0,
|
|
"read_only": false,
|
|
"slave_configured": false,
|
|
"slave_io_running": false,
|
|
"slave_sql_running": false,
|
|
"master_binlog_file": "",
|
|
"master_binlog_position": 0
|
|
},
|
|
{
|
|
"name": "server2",
|
|
"server_id": 0,
|
|
"master_id": 0,
|
|
"read_only": false,
|
|
"slave_configured": false,
|
|
"slave_io_running": false,
|
|
"slave_sql_running": false,
|
|
"master_binlog_file": "",
|
|
"master_binlog_position": 0
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"links": {
|
|
"self": "http://localhost:8989/v1/monitors/MySQL-Monitor"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
#### Supported Request Parameter
|
|
|
|
- `pretty`
|
|
|
|
### Get all monitors
|
|
|
|
Get all monitors.
|
|
|
|
```
|
|
GET /monitors
|
|
```
|
|
|
|
#### Response
|
|
|
|
`Status: 200 OK`
|
|
|
|
```javascript
|
|
{
|
|
"links": {
|
|
"self": "http://localhost:8989/v1/monitors/"
|
|
},
|
|
"data": [
|
|
{
|
|
"id": "MySQL-Monitor",
|
|
"type": "monitors",
|
|
"relationships": {
|
|
"servers": {
|
|
"links": {
|
|
"self": "http://localhost:8989/v1/servers/"
|
|
},
|
|
"data": [
|
|
{
|
|
"id": "server1",
|
|
"type": "servers"
|
|
},
|
|
{
|
|
"id": "server2",
|
|
"type": "servers"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"attributes": {
|
|
"module": "mysqlmon",
|
|
"state": "Running",
|
|
"parameters": {
|
|
"user": "maxuser",
|
|
"password": "maxpwd",
|
|
"monitor_interval": 10000,
|
|
"backend_connect_timeout": 3,
|
|
"backend_read_timeout": 1,
|
|
"backend_write_timeout": 2,
|
|
"backend_connect_attempts": 1,
|
|
"detect_replication_lag": false,
|
|
"detect_stale_master": true,
|
|
"detect_stale_slave": true,
|
|
"mysql51_replication": false,
|
|
"multimaster": false,
|
|
"detect_standalone_master": false,
|
|
"failcount": 5,
|
|
"allow_cluster_recovery": true,
|
|
"journal_max_age": 28800
|
|
},
|
|
"monitor_diagnostics": {
|
|
"monitor_id": 0,
|
|
"detect_stale_master": true,
|
|
"detect_stale_slave": true,
|
|
"detect_replication_lag": false,
|
|
"multimaster": false,
|
|
"detect_standalone_master": false,
|
|
"failcount": 5,
|
|
"allow_cluster_recovery": true,
|
|
"mysql51_replication": false,
|
|
"journal_max_age": 28800,
|
|
"server_info": [
|
|
{
|
|
"name": "server1",
|
|
"server_id": 0,
|
|
"master_id": 0,
|
|
"read_only": false,
|
|
"slave_configured": false,
|
|
"slave_io_running": false,
|
|
"slave_sql_running": false,
|
|
"master_binlog_file": "",
|
|
"master_binlog_position": 0
|
|
},
|
|
{
|
|
"name": "server2",
|
|
"server_id": 0,
|
|
"master_id": 0,
|
|
"read_only": false,
|
|
"slave_configured": false,
|
|
"slave_io_running": false,
|
|
"slave_sql_running": false,
|
|
"master_binlog_file": "",
|
|
"master_binlog_position": 0
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"links": {
|
|
"self": "http://localhost:8989/v1/monitors/MySQL-Monitor"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
#### Supported Request Parameter
|
|
|
|
- `pretty`
|
|
|
|
### Stop a monitor
|
|
|
|
Stops a started monitor.
|
|
|
|
```
|
|
PUT /monitor/:name/stop
|
|
```
|
|
|
|
#### Response
|
|
|
|
Monitor is stopped.
|
|
|
|
`Status: 204 No Content`
|
|
|
|
### Start a monitor
|
|
|
|
Starts a stopped monitor.
|
|
|
|
```
|
|
PUT /monitor/:name/start
|
|
```
|
|
|
|
#### Response
|
|
|
|
Monitor is started.
|
|
|
|
`Status: 204 No Content`
|
|
|
|
### Update a monitor
|
|
|
|
The :name in the URI must map to a monitor name with all whitespace replaced with
|
|
hyphens. The request body must be a valid JSON document representing the modified monitor.
|
|
|
|
```
|
|
PUT /monitor/:name
|
|
```
|
|
|
|
### Modifiable Fields
|
|
|
|
The following standard server parameter can be modified.
|
|
- [user](../Monitors/Monitor-Common.md#user)
|
|
- [password](../Monitors/Monitor-Common.md#password)
|
|
- [monitor_interval](../Monitors/Monitor-Common.md#monitor_interval)
|
|
- [backend_connect_timeout](../Monitors/Monitor-Common.md#backend_connect_timeout)
|
|
- [backend_write_timeout](../Monitors/Monitor-Common.md#backend_write_timeout)
|
|
- [backend_read_timeout](../Monitors/Monitor-Common.md#backend_read_timeout)
|
|
- [backend_connect_attempts](../Monitors/Monitor-Common.md#backend_connect_attempts)
|
|
|
|
Refer to the documentation on these parameters for valid values.
|
|
|
|
In addition to these standard parameters, the monitor specific parameters can also be
|
|
modified. Refer to the monitor module documentation for details on these parameters.
|
|
|
|
#### Response
|
|
|
|
Monitor is modified.
|
|
|
|
`Status: 204 No Content`
|
|
|
|
Invalid request body.
|
|
|
|
`Status: 403 Forbidden`
|
|
|