Import¶
POST /api/v1/checker/import
Overview¶
Import one/multiple monitor configurations
Body Request Parameters¶
Parameter Name | Type | Required | Description |
---|---|---|---|
checkers | array | Y | List of rule configurations Allow empty: False |
type | string | For intelligent monitoring import, pass smartMonitor , default is regular monitor trigger Allow empty: False Allow empty string: False Optional values: ['smartMonitor', 'trigger'] |
|
skipRepeatNameCheck | boolean | Whether to skip duplicate name check, false performs duplicate name check, true skips duplicate name checkExample: False Allow empty: False |
|
skipRepeatNameCreate | boolean | true skips creation for duplicate names, creates for non-duplicate names, false creates all imported informationExample: False Allow empty: False |
|
deleteRepeatName | boolean | true deletes and imports duplicate name monitors, default is false Example: False Allow empty: False |
Additional Parameter Explanation¶
** Monitor template configuration, refer to [Monitor Export Interface]**
Related parameter explanation.
If repeat_name
exists in the content
of the returned result, it indicates duplicate names exist. Add the parameter skipRepeatNameCreate
to choose to skip or create duplicate names.
Parameter Name | Type | Required | Description |
---|---|---|---|
checker | array | Required | List of rule configurations |
skipRepeatNameCheck | boolean | Required | Whether to skip duplicate name check, if not skipped (false ): returns a list of duplicate monitor names if duplicate name check fails |
skipRepeatNameCreate | boolean | Required | Whether to skip creation for duplicate names, if not skipped (false ): creates monitors with the same name |
deleteRepeatName | boolean | Optional | Whether to delete and import duplicate name monitors, default is false |
Request Example¶
curl 'https://openapi.truewatch.com/api/v1/checker/import' \
-H 'DF-API-KEY: <DF-API-KEY>' \
-H 'Content-Type: application/json;charset=UTF-8' \
--data-raw '{"checkers":[{"extend":{"funcName":"","isNeedCreateIssue":false,"issueLevelUUID":"","needRecoverIssue":false,"querylist":[{"datasource":"dataflux","qtype":"dql","query":{"alias":"","code":"Result","dataSource":"ssh","field":"ssh_check","fieldFunc":"count","fieldType":"float","funcList":[],"groupBy":["host"],"groupByTime":"","namespace":"metric","q":"M::`ssh`:(count(`ssh_check`)) BY `host`","type":"simple"},"uuid":"aada629a-672e-46f9-9503-8fd61065c382"}],"rules":[{"conditionLogic":"and","conditions":[{"alias":"Result","operands":["90"],"operator":">="}],"status":"critical"},{"conditionLogic":"and","conditions":[{"alias":"Result","operands":["0"],"operator":">="}],"status":"error"}]},"is_disable":false,"jsonScript":{"atAccounts":[],"atNoDataAccounts":[],"channels":[],"checkerOpt":{"infoEvent":false,"rules":[{"conditionLogic":"and","conditions":[{"alias":"Result","operands":["90"],"operator":">="}],"status":"critical"},{"conditionLogic":"and","conditions":[{"alias":"Result","operands":["0"],"operator":">="}],"status":"error"}]},"disableCheckEndTime":false,"every":"1m","groupBy":["host"],"interval":300,"message":">Level: {status} \n>Host: {host} \n>Content: Host SSH status {{ Result | to_fixed(2) }}% \n>Recommendation: Check host SSH service status","noDataMessage":"","noDataTitle":"","recoverNeedPeriodCount":2,"targets":[{"alias":"Result","dql":"M::`ssh`:(count(`ssh_check`)) BY `host`","qtype":"dql"}],"title":"Host {{ host }} SSH service exception","type":"simpleCheck"},"monitorName":"default","secret":"","tagInfo":[],"type":"trigger"}]}' \
--compressed
Response¶
{
"code": 200,
"content": {
"rule": [
{
"createAt": 1642581539.6646779,
"creator": "wsak_xxxxx",
"crontabInfo": {
"crontab": "*/1 * * * *",
"id": "cron-ABxzYMCHK2kj"
},
"deleteAt": -1,
"extend": {
"funcName": "",
"noDataInterval": null,
"querylist": [
{
"datasource": "dataflux",
"qtype": "dql",
"query": {
"alias": "",
"code": "Result",
"dataSource": "aliyun_acs_rds_dashboard",
"field": "MySQL_SlowQueries_Average",
"fieldFunc": "last",
"fieldType": "float",
"funcList": [],
"groupBy": [
"instanceId"
],
"groupByTime": "",
"namespace": "metric",
"q": "M::`aliyun_acs_rds_dashboard`:(LAST(`MySQL_SlowQueries_Average`)) BY `instanceId`",
"type": "simple"
},
"uuid": "b7f8af85-0b3b-452c-b4d9-4f2cd175a4d4"
}
],
"recoverNeedPeriodCount": 1,
"rules": [
{
"conditionLogic": "and",
"conditions": [
{
"alias": "Result",
"operands": [
"10"
],
"operator": ">="
}
],
"status": "critical"
},
{
"conditionLogic": "and",
"conditions": [
{
"alias": "Result",
"operands": [
"5",
"10"
],
"operator": "between"
}
],
"status": "error"
},
{
"conditionLogic": "and",
"conditions": [
{
"alias": "Result",
"operands": [],
"operator": ">="
}
],
"status": "warning"
}
]
},
"id": null,
"jsonScript": {
"checkerOpt": {
"rules": [
{
"conditionLogic": "and",
"conditions": [
{
"alias": "Result",
"operands": [
"10"
],
"operator": ">="
}
],
"status": "critical"
},
{
"conditionLogic": "and",
"conditions": [
{
"alias": "Result",
"operands": [
"5",
"10"
],
"operator": "between"
}
],
"status": "error"
}
]
},
"every": "1m",
"groupBy": [
"instanceId"
],
"interval": 300,
"message": ">Level: {df_status} \n>Instance: {instanceId} \n>Content: RDS Mysql slow queries per second is {{ Result }}% \n>Recommendation: Log in to Alibaba Cloud console to check if RDS has any exceptions",
"name": "Alibaba Cloud RDS Mysql slow queries per second is too high",
"noDataInterval": 0,
"recoverNeedPeriodCount": 1,
"targets": [
{
"alias": "Result",
"dql": "M::`aliyun_acs_rds_dashboard`:(LAST(`MySQL_SlowQueries_Average`)) BY `instanceId`"
}
],
"title": "Alibaba Cloud RDS Mysql instance ID {instanceId} slow queries per second is too high",
"type": "simpleCheck"
},
"monitorUUID": "monitor_xxxx32",
"status": 0,
"type": "trigger",
"updateAt": 1642581539.6647239,
"updator": "",
"uuid": "rul_xxxx32",
"workspaceUUID": "wksp_xxxx32"
}
]
},
"errorCode": "",
"message": "",
"success": true,
"traceId": "TRACE-8A8119CE-4EFA-4278-B3EF-33F29EDB38CE"
}