コンテンツにスキップ

変更



POST /api/v1/checker/{rule_uuid}/modify

概要

rule_uuid に基づいて、指定されたモニター情報を変更します。

ルートパラメータ

パラメータ名 タイプ 必須 説明
rule_uuid string はい チェック項目の ID

Body リクエストパラメータ

パラメータ名 タイプ 必須 説明
queryType string なし extend.querylist が未指定の場合に使用・検証される DQL フロントエンド表示モード。simple は Studio が解析して簡易モードのフィールドを注入することを示し、dql は DQL テキストモードを示します。デフォルトは dql。extend.querylist を明示的に指定した場合はそのまま優先され、queryType の注入セマンティクスは無視されます。simple 変換に失敗した場合は自動的に dql にフォールバックし、jsonScript.targets 内で実際に実行される DQL は変更されません。
空を許可: いいえ
例: simple
extend json なし 追加情報
空を許可: はい
status integer なし モニターのステータスフィールド。0 は有効、2 は無効、デフォルトは有効(2025-02-19 のイテレーションで追加)
空を許可: いいえ
選択可能な値: [0, 2]
alertPolicyUUIDs array なし アラートポリシー UUID
空を許可: いいえ
dashboardUUID string なし 関連付けるダッシュボード ID
空を許可: いいえ
tags array なし フィルタリングに使用するタグ名
空を許可: いいえ
例: ['xx', 'yy']
secret string なし Webhook アドレスの中間セグメントの一意識別子 secret
空を許可: いいえ
例: secret_xxxxx
jsonScript json なし ルール設定
空を許可: いいえ
jsonScript.targetWorkspaceUUID string なし ターゲットワークスペース。クロススペースクエリ。しきい値検出タイプのみサポート(2025-08-13 のイテレーションで追加)
空を許可: いいえ
空文字列を許可: いいえ
jsonScript.type string はい チェック方法のタイプ
例: simpleCheck
空を許可: いいえ
jsonScript.windowDql string なし window dql
空を許可: いいえ
jsonScript.title string はい イベントのタイトルを生成
例: モニター: {{monitor_name}} チェッカー: {{monitor_checker_name}} トリガー値: {{M1}}
空を許可: いいえ
空文字列を許可: はい
最大長: 256
jsonScript.message string なし イベントの内容
例: status: {{status}}, title:{{title}}
空を許可: いいえ
空文字列を許可: はい
jsonScript.recoverTitle string なし 復旧イベントのタイトルテンプレートを出力
例: モニター: {{monitor_name}} チェッカー: {{monitor_checker_name}} トリガー値: {{M1}}
空を許可: いいえ
空文字列を許可: はい
jsonScript.recoverMessage string なし 復旧イベントの情報テンプレートを出力
例: status: {{status}}, title:{{title}}
空を許可: いいえ
空文字列を許可: はい
jsonScript.noDataTitle string なし データなしイベントのタイトルテンプレートを出力
例: モニター: {{monitor_name}} チェッカー: {{monitor_checker_name}} トリガー値: {{M1}}
空を許可: いいえ
空文字列を許可: はい
jsonScript.noDataMessage string なし データなしイベントの情報テンプレートを出力
例: status: {{status}}, title:{{title}}
空を許可: いいえ
空文字列を許可: はい
jsonScript.openNotificationMessage boolean なし イベント通知内容を有効にするかどうか。デフォルトは無効(イベント内容を通知内容として使用)
例: False
空を許可: いいえ
jsonScript.notificationMessage string なし イベント通知内容
例: モニター: {{monitor_name}} チェッカー: {{monitor_checker_name}} トリガー値: {{M1}}
空を許可: いいえ
空文字列を許可: はい
jsonScript.openNoDataNotificationMessage boolean なし データ断絶イベントの通知内容を有効にするかどうか。デフォルトは無効(データ断絶イベントの内容を通知内容として使用)
例: False
空を許可: いいえ
jsonScript.noDataNotificationMessage string なし データ断絶イベントの通知内容
例: status: {{status}}, title:{{title}}
空を許可: いいえ
空文字列を許可: はい
jsonScript.noDataRecoverTitle string なし データなし復旧アップロードイベントのタイトルテンプレートを出力
例: モニター: {{monitor_name}} チェッカー: {{monitor_checker_name}} トリガー値: {{M1}}
空を許可: いいえ
空文字列を許可: はい
jsonScript.noDataRecoverMessage string なし データなし復旧アップロードイベントの情報テンプレートを出力
例: status: {{status}}, title:{{title}}
空を許可: いいえ
空文字列を許可: はい
jsonScript.every string なし チェック頻度
例: 1m
空を許可: いいえ
jsonScript.customCrontab string なし カスタム検出頻度
例: 0 */12 * * *
空を許可: いいえ
jsonScript.delaySeconds integer なし 通常モニターのデータ待機ウィンドウ(秒)。0 は待機なし。インテリジェントモニタリングではこの設定はサポートされません。
例: 60
空を許可: いいえ
選択可能な値: [0, 60, 120, 180, 300, 600, 900, 1800]
jsonScript.interval integer なし クエリ間隔。1 回のクエリの時間範囲の差。
例: 60
空を許可: いいえ
jsonScript.range integer なし 高度な検出、急変検出の range パラメータ。単位は秒。
例: 3600
空を許可: いいえ
jsonScript.range_2 integer なし 高度な検出、急変検出の range_2 パラメータ。単位は秒。特殊な説明:(-1 は前週比、0 は periodBefore フィールドを使用)
例: 600
空を許可: いいえ
jsonScript.periodBefore integer なし 高度な検出、急変検出の(昨日/1時間前)パラメータ。単位は秒。
例: 600
空を許可: いいえ
jsonScript.recoverNeedPeriodCount integer なし 異常が発生してから復旧イベントを生成するまでのチェック周期数を指定します。検出頻度がカスタム customCrontab の場合は、このフィールドは時間の長さ(秒)を表します。それ以外の場合は、検出頻度の回数を表します。
例: 60
空を許可: いいえ
jsonScript.noDataInterval integer なし この時間内にデータがない場合、データなしイベントを生成します。
例: 60
空を許可: いいえ
jsonScript.noDataAction string なし データなしの処理操作
空を許可: いいえ
選択可能な値: ['none', 'checkAs0', 'noDataEvent', 'fatalEvent', 'criticalEvent', 'errorEvent', 'warningEvent', 'okEvent', 'noData', 'recover']
jsonScript.checkFuncs array なし チェック関数情報のリスト
例: [{'funcId': 'xxx', 'kwargs': {}}]
空を許可: いいえ
jsonScript.groupBy array なし トリガー次元
例: ['病院']
空を許可: いいえ
jsonScript.targets array なし チェックターゲット
例: [{'dql': 'M::士兵信息:(AVG(潜力值)) [::auto] by 性别', 'alias': 'M1'}]
空を許可: いいえ
jsonScript.checkerOpt json なし チェック条件の設定
空を許可: いいえ
jsonScript.checkerOpt.disableLargeScaleEventProtect boolean なし 大規模イベント保護を無効にするかどうか。デフォルトは false。
例: True
jsonScript.checkerOpt.script string なし プログラマブルモニタリングのスクリプト内容
空を許可: いいえ
空文字列を許可: はい
jsonScript.checkerOpt.rules array なし トリガー条件のリスト
例: [{'status': 'warning', 'conditions': [{'operands': [60], 'operator': '>', 'alias': 'M1'}], 'conditionLogic': 'and', 'matchTimes': 10}]
空を許可: いいえ
jsonScript.checkerOpt.openOkConditions boolean なし 段階的復旧を有効にする。デフォルトは無効(false)。
例: True
jsonScript.checkerOpt.openMatchTimes boolean なし 連続トリガー判定を有効にする。デフォルトは無効(false)。
例: True
jsonScript.checkerOpt.infoEvent boolean なし 継続正常時に info イベントを生成するかどうか。デフォルトは false。
例: True
jsonScript.checkerOpt.infoEventCondition json なし 情報イベント生成条件。しきい値モニターのみサポート。空オブジェクトは条件なしで生成することを示します。
例: {'alias': 'M1', 'operator': '>=', 'operands': [60]}
空を許可: いいえ
jsonScript.checkerOpt.infoEventCondition.alias string なし 判定対象のエイリアス
jsonScript.checkerOpt.infoEventCondition.operator string なし 判定演算子
jsonScript.checkerOpt.infoEventCondition.operands array なし 判定オペランドのリスト
jsonScript.checkerOpt.diffMode string なし 高度な検出の急変検出における差モード。列挙値: value, percent。
例: value
選択可能な値: ['value', 'percent']
jsonScript.checkerOpt.direction string なし 高度な検出の急変検出、区間検出におけるトリガー条件の方向。
例: up
選択可能な値: ['up', 'down', 'both']
jsonScript.checkerOpt.eps float なし 距離パラメータ。範囲: 0 ~ 3.0。
例: 0.5
jsonScript.checkerOpt.threshold json なし 急変検出のトリガー前提条件の設定。
空を許可: いいえ
jsonScript.checkerOpt.threshold.status boolean はい 急変検出のトリガー前提条件を有効にするかどうか。
例: True
jsonScript.checkerOpt.threshold.operator string はい 急変検出のトリガー前提条件の演算子。
例:
jsonScript.checkerOpt.threshold.value float はい 急変検出のトリガー前提条件の検出値。
例: 90
空を許可: はい
jsonScript.checkerOpt.combineExpr string なし 組み合わせ監視の組み合わせ方。
例: A && B
空文字列を許可: いいえ
jsonScript.checkerOpt.ignoreNodata boolean なし 組み合わせ監視でデータなしの結果を無視するかどうか(true は無視することを意味します)。
例: True
jsonScript.checkerOpt.confidenceInterval integer なし 区間検出 V2 で追加されたパラメータ。信頼区間の範囲は 1~100。
例: 10
jsonScript.channels array なし チャンネル UUID のリスト
例: ['名前1', '名前2']
空を許可: いいえ
jsonScript.atAccounts array なし 通常検出で @ されるアカウント UUID のリスト
例: ['xx1', 'xx2']
空を許可: いいえ
jsonScript.atNoDataAccounts array なし データなしの場合に @ されるアカウント UUID のリスト
例: ['xx1', 'xx2']
空を許可: いいえ
jsonScript.subUri string なし OuterEventChecker の Webhook アドレスサフィックス。新規作成時は必須。一意である必要はありません。
例: datakit/push
空を許可: いいえ
jsonScript.isChangeEvent boolean なし OuterEventChecker を変更イベントとして処理するかどうか。デフォルトは false。既存ルールで欠落している場合は false として処理されます。
例: False
空を許可: いいえ
jsonScript.disableCheckEndTime boolean なし 終了時間制限を無効にするかどうか。
例: True
空を許可: いいえ
jsonScript.eventChartEnable boolean なし イベントチャートを有効にするかどうか。デフォルトは無効。注意: メインストレージエンジン logging が doris の場合のみ有効になります。
例: False
空を許可: いいえ
jsonScript.eventCharts array なし イベントチャートのリスト
例: True
空を許可: いいえ
jsonScript.eventCharts[*] None なし
jsonScript.eventCharts[*].dql string なし イベントチャートのクエリ文
例: M::cpu:(avg(load5s)) BY host
空を許可: いいえ
openPermissionSet boolean なし カスタム権限設定を有効にする(デフォルト false: 無効)。有効にすると、このルールの操作権限は permissionSet に従います。
空を許可: いいえ
permissionSet array なし 操作権限の設定。設定可能な値: (所有者を除く)ロール、メンバー UUID、チーム UUID。
例: ['wsAdmin', 'acnt_xxxx', 'group_yyyy']
空を許可: いいえ

パラメータ補足説明

リクエスト例

curl 'https://openapi.guance.com/api/v1/checker/rul_xxxxxx/modify' \
-H 'DF-API-KEY: <DF-API-KEY>' \
-H 'Content-Type: application/json;charset=UTF-8' \
--data-raw '{"queryType":"simple","extend":{"querylist":[{"datasource":"dataflux","qtype":"dql","query":{"code":"Result","type":"simple","namespace":"metric","dataSource":"ssh","field":"ssh_check","fieldType":"float","alias":"","fieldFunc":"count","groupByTime":"","groupBy":["host"],"q":"M::`ssh`:(count(`ssh_check`)) BY `host`","funcList":[]},"uuid":"aada629a-672e-46f9-9503-8fd61065c382"}],"funcName":"","rules":[{"conditionLogic":"and","conditions":[{"alias":"Result","operands":["90"],"operator":">="}],"status":"critical"},{"conditionLogic":"and","conditions":[{"alias":"Result","operands":["0"],"operator":">="}],"status":"error"}],"issueLevelUUID":"system_level_3","isNeedCreateIssue":false,"needRecoverIssue":false},"jsonScript":{"title":"Host {{ host }} SSH Service Exception","message":">Level:{{status}}  \n>Host:{{host}}  \n>Content:Host SSH Status {{ Result |  to_fixed(2) }}%  \n>Suggestion:Check Host SSH Service Status","noDataTitle":"","noDataMessage":"","type":"simpleCheck","every":"1m","groupBy":["host"],"interval":300,"targets":[{"dql":"M::`ssh`:(count(`ssh_check`)) BY `host`","alias":"Result","qtype":"dql"}],"checkerOpt":{"rules":[{"conditionLogic":"and","conditions":[{"alias":"Result","operands":["90"],"operator":">="}],"status":"critical"},{"conditionLogic":"and","conditions":[{"alias":"Result","operands":["0"],"operator":">="}],"status":"error"}],"infoEvent":false},"recoverNeedPeriodCount":2,"channels":[],"atAccounts":[],"atNoDataAccounts":[],"disableCheckEndTime":false},"alertPolicyUUIDs":["altpl_xxxx32"],"tags":["Local Test Combination Detection"]}' \
--compressed 

レスポンス

{
    "code": 200,
    "content": {
        "createAt": 1710827935,
        "createdWay": "manual",
        "creator": "acnt_xxxx32",
        "crontabInfo": {
            "crontab": "*/1 * * * *",
            "id": "cron-pwiThsuE9gtQ"
        },
        "declaration": {
            "b": [
                "asfawfgajfasfafgafwba",
                "asfgahjfaf"
            ],
            "business": "aaa",
            "organization": "64fe7b4062f74d0007b46676"
        },
        "deleteAt": -1,
        "extend": {
            "funcName": "",
            "isNeedCreateIssue": false,
            "issueLevelUUID": "system_level_3",
            "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"
                }
            ]
        },
        "id": 1118,
        "isLocked": 0,
        "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>Suggestion:Check Host SSH Service Status",
            "name": "Host {{ host }} SSH Service Exception",
            "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"
        },
        "monitorUUID": "monitor_xxxx32",
        "refKey": "",
        "secret": "",
        "status": 0,
        "tagInfo": [
            {
                "id": "tag_xxxx32",
                "name": "Local Test Combination Detection"
            }
        ],
        "type": "trigger",
        "updateAt": 1710831784,
        "updator": "wsak_xxxxx",
        "uuid": "rul_xxxx32",
        "workspaceUUID": "wksp_xxxx32"
    },
    "errorCode": "",
    "message": "",
    "success": true,
    "traceId": "TRACE-FF2C1DA3-1EE2-4802-A857-D37BCFB0C562"
} 

フィードバック

このページは役に立ちましたか?