Docs 菜单
Docs 主页
/
MongoDB Ops Manager
/ / / /

更新一个全局警报配置

在此页面上

  • 所需角色
  • 请求
  • 请求路径参数
  • 请求查询参数
  • 请求正文参数
  • 响应
  • 请求示例
  • 响应示例
  • 响应标头
  • 响应体

更新由 GLOBAL-ALERT-CONFIG-ID标识的一个全局警报配置。

您可以使用以下任何分配的角色成功调用此端点:

  • Global Owner

  • Global Monitoring Admin

基本 URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0

PUT /globalAlertConfigs/{GLOBAL-ALERT-CONFIG-ID}
名称
类型
必要性
说明
{GLOBAL-ALERT-CONFIG-ID}
字符串
必需
要更新的全局警报配置的唯一标识符。
名称
类型
必要性
说明
默认
pretty
布尔
Optional
指示响应正文是否应采用 Prettyprint 的标志 格式。
false
envelope
布尔
Optional

指示是否将响应包装在信封中的标志。

某些 API 客户端无法访问 HTTP 响应标头或状态代码。要解决这个问题,可在查询中设置 envelope=true

对于返回一个结果的端点,响应体包括:

名称
说明
状态
HTTP 响应代码
envelope
预期响应正文
false
正文参数
类型
必要性
说明
enabled
布尔
Optional
用于指定是否启用警报配置的开关。
eventTypeName
字符串
必需

此警报配置Atlas Triggers警报的事件类型。

要查看生成警报的事件类型,请参阅警报类型。

有关 Ops Manager 审核日志中包含的事件的完整列表,请参阅Audit 事件。

forAllGroups
布尔
必需

用于指定全局警报配置是否应用于所有组的开关。 还会影响是否可以使用tags数组将配置定位到特定群组。

如果为true ,则配置适用于所有群组。 您可以通过tags数组将警报配置定位到特定群组。

如果为false ,则配置仅适用于groupIds数组中指定的群组。 您必须在groupIds数组中至少指定一个项目。 您不能将tags数组用于此警报配置。

groupIds
字符串数组
Optional
此警报配置适用的群组的 ID。 此字段仅在forAllGroups设置为false时适用。
matchers
对象数组
可选的

将对象与此全局警报配置进行匹配时要应用的规则。 MongoDB Ops Manager仅检查符合所有这些警报条件规则的实体。

仅当eventTypeName指定主机、副本集或分片集群的事件时,才能使用matchers数组进行筛选。

matchers
.fieldName
字符串
可选的

目标对象中要匹配的字段的名称。

  • 主机警报支持这些字段:

    • HOSTNAME

    • PORT

    • HOSTNAME_AND_PORT

    • REPLICA_SET_NAME

    • TYPE_NAME

  • 副本集警报支持这些字段:

    • REPLICA_SET_NAME

    • SHARD_NAME

    • CLUSTER_NAME

  • 分片集群警报支持以下字段:

    • CLUSTER_NAME

    • SHARD_NAME

所有其他类型的警报不支持匹配器。

matchers
.operator
字符串
可选的

用于测试字段值的操作符。 接受的值为:

  • EQUALS

  • NOT_EQUALS

  • CONTAINS

  • NOT_CONTAINS

  • STARTS_WITH

  • ENDS_WITH

  • REGEX

matchers
.value
字符串
可选的

要使用指定操作符进行测试的值。

如果将matchers.fieldName设置为TYPE_NAME ,则可以匹配以下值:

  • PRIMARY

  • SECONDARY

  • STANDALONE

  • CONFIG

  • MONGOS

metricThreshold
对象
可选的
导致此警报配置trigger警报的阈值。 仅当eventTypeName设置为OUTSIDE_METRIC_THRESHOLD时才需要。
metricThreshold
.metricName
字符串
可选的
要检查的指标名称。 支持与globalAlerts资源的metricName字段相同的值。 有关可能值的列表,请参阅全局警报的测量类型。
metricThreshold
.mode
字符串
可选的
此项设置为AVERAGE ,并将当前指标值计算为平均值。
metricThreshold
.operator
字符串
可选的

根据metricThreshold.threshold检查当前指标值时要应用的操作符。 可能的值为:

  • GREATER_THAN

  • LESS_THAN

metricThreshold
.threshold
数字
可选的
阈值,超出此警报配置Atlas Triggers警报。
metricThreshold
.units
字符串
可选的

metricThreshold.threshold的单位。 单位取决于指标类型。

接受的值为:

  • RAW

  • BITS

  • BYTES

  • KILOBITS

  • KILOBYTES

  • MEGABITS

  • MEGABYTES

  • GIGABITS

  • GIGABYTES

  • TERABYTES

  • PETABYTES

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

示例,测量内存消耗的指标可以使用BYTES ,而测量时间的指标则可以使用HOURS

notifications
对象数组
必需
MongoDB Ops Manager在检测到此警报配置描述的警报时发送的通知。
notifications
.apiToken
字符串
可选的
Slack API 令牌或 Bot 令牌。 仅接受SLACK通知。 如果令牌后来变得无效, MongoDB Ops Manager会向项目所有者发送电子邮件并删除令牌。
notifications
.channelName
字符串
可选的
Slack 通道名称。 仅接受SLACK通知。
notifications
.delayMin
数字
可选的
检测到警报条件后MongoDB Ops Manager发出第一个通知之前的等待分钟数。
notifications
.emailAddress
可选的
Optional
向其发送通知的电子邮件地址。 仅接受EMAIL通知。
notifications
.emailEnabled
布尔
可选的
指定MongoDB Ops Manager是否发送电子邮件通知。 仅接受GROUPUSER通知。
notifications
.intervalMin
数字
可选的
此警报配置Atlas Triggers的未确认、未解决的警报的连续通知之间的等待分钟数。
notifications
.webhookSecret
字符串
可选的

用于向接受和转发通知的 Webhook 进行身份验证的值。 您只能在同时具备以下条件的请求中显式声明密钥:

  • notifications.typeNameWEBHOOK

  • 显式声明的 notifications.webhookURL

您只能使用管理控制台webhookSecret配置为默认webhookURL

要显式声明webhookURL而不声明webhookSecret ,请忽略此字段。

notifications
.webhookUrl
字符串
Optional
触发此通知的 Webhook 的URL 。 如果您没有显式声明webhookUrl ,您的请求将使用在Admin Console中设立的默认webhookUrl
notifications
.microsoftTeamsWebhookUrl
字符串
可选的
Microsoft Teams 通道传入的 Webhook URL。 仅接受MICROSOFT_TEAMS通知。
notifications
.notificationToken
字符串
可选的
HipChat API 令牌。 仅接受HIP_CHAT通知。 如果令牌后来变得无效, MongoDB Ops Manager会向项目所有者发送电子邮件并删除令牌。
notifications
.roomName
字符串
可选的
HipChat 房间名称。 仅接受HIP_CHAT通知。
notifications
.serviceKey
字符串
可选的

PagerDuty 集成密钥。 仅接受PAGER_DUTY通知。 如果密钥后来变得无效, MongoDB Ops Manager会向项目所有者发送电子邮件并删除密钥。

PagerDuty Decommissioned 他们在 110 月的 REST API v2018 密钥。如果您有 av1 密钥,则可以继续在MongoDB Ops Manager中使用该密钥。 所有新的 PagerDuty 密钥均使用其REST API v2 ,但MongoDB Ops Manager 不支持其 v2 密钥。如果您没有 REST API v1 密钥,请使用 PagerDuty Events API v1 相反。

notifications
.smsEnabled
布尔
可选的
指定MongoDB Ops Manager是否发送短信通知。 仅接受GROUPUSER通知。
notifications
.snmpAddress
字符串
可选的

要向其发送 SNMP 陷阱的主机名和端口。 此时, MongoDB Ops Manager只能向标准 SNMP 端口 (162) 发送 SNMP 陷阱。 仅接受SNMP通知。

重要

MongoDB Ops Manager 6.0.0 弃用SNMP警报。 MongoDB Ops Manager 7.0.0 将不包含SNMP警报。 要学习;了解有关其他警报选项的更多信息,请参阅第三方服务集成。

注意

MongoDB Ops Manager使用 SNMP v2c。

notifications
.typeName
字符串
必需

此警报配置Atlas Triggers的警报通知类型。 接受的值为:

  • ADMIN

  • GROUP

  • USER

  • SNMP

    重要

    MongoDB Ops Manager 6.0.0 弃用SNMP警报。 MongoDB Ops Manager 7.0.0 将不包含SNMP警报。 要学习;了解有关其他警报选项的更多信息,请参阅第三方服务集成。

  • EMAIL

  • SMS (仅当为MongoDB Ops Manager Twilio 集成 配置了 时才可用。)

  • HIPCHAT

  • SLACK

  • PAGER_DUTY

notifications
.username
字符串
可选的
要向其发送通知的MongoDB Ops Manager用户的名称。 仅针对USER通知出现。
threshold
对象
可选的

导致此警报配置trigger警报的阈值。 仅当eventTypeName设置为以下值之一时才需要:

  • TOO_FEW_HEALTHY_MEMBERS

  • TOO_MANY_UNHEALTHY_MEMBERS

threshold
.operator
字符串
可选的

根据threshold.threshold检查当前指标值时要应用的操作符。 接受的值为:

  • GREATER_THAN

  • LESS_THAN

threshold
.threshold
数字
可选的
阈值,超出此警报配置Atlas Triggers警报。
tags
字符串数组
Optional
与此警报配置关联的标签。
typeName
字符串
Optional
此字段已弃用,将被忽略。
名称
类型
说明
created
字符串
ISO8601 格式的时间戳 创建警报配置时的日期和时间格式( UTC 格式)。
enabled
布尔
用于指定是否启用警报配置的开关。
eventTypeName
字符串

此警报配置Atlas Triggers警报的事件类型。

要查看生成警报的事件类型,请参阅警报类型。

有关 Ops Manager 审核日志中包含的事件的完整列表,请参阅Audit 事件。

forAllGroups
布尔

用于指定全局警报配置是否应用于所有组的开关。 还会影响是否可以使用tags数组将配置定位到特定群组。

如果为true ,则配置适用于所有群组。 您可以通过tags数组将警报配置定位到特定群组。

如果为false ,则配置仅适用于groupIds数组中指定的群组。 您必须在groupIds数组中至少指定一个项目。 您不能将tags数组用于此警报配置。

groupIds
字符串数组
此警报配置适用的群组的 ID。 此字段仅在forAllGroups设置为false时适用。
id
字符串
警报配置的唯一标识符。
matchers
对象数组

将对象与此全局警报配置进行匹配时要应用的规则。 MongoDB Ops Manager仅检查符合所有这些警报条件规则的实体。

仅当eventTypeName指定主机、副本集或分片集群的事件时,才能使用matchers数组进行筛选。

matchers.fieldName
字符串

目标对象中要匹配的字段的名称。

  • 主机警报支持这些字段:

    • HOSTNAME

    • PORT

    • HOSTNAME_AND_PORT

    • REPLICA_SET_NAME

    • TYPE_NAME

  • 副本集警报支持这些字段:

    • REPLICA_SET_NAME

    • SHARD_NAME

    • CLUSTER_NAME

  • 分片集群警报支持以下字段:

    • CLUSTER_NAME

    • SHARD_NAME

所有其他类型的警报不支持匹配器。

matchers.operator
字符串

用于测试字段值的操作符。 可能的值为:

  • EQUALS

  • NOT_EQUALS

  • CONTAINS

  • NOT_CONTAINS

  • STARTS_WITH

  • ENDS_WITH

  • REGEX

matchers.value
字符串

要使用指定操作符进行测试的值。

如果将matchers.fieldName设置为TYPE_NAME ,则可以匹配以下值:

  • PRIMARY

  • SECONDARY

  • STANDALONE

  • CONFIG

  • MONGOS

metricThreshold
对象
导致此警报配置trigger警报的阈值。 仅当eventTypeName设置为OUTSIDE_METRIC_THRESHOLD时才出现。
metricThreshold.metricName
字符串
要检查的指标名称。 支持与globalAlerts资源的metricName字段相同的值。 有关可能值的列表,请参阅全局警报的测量类型。
metricThreshold.mode
字符串
此项设置为AVERAGE ,并将当前指标值计算为平均值。
metricThreshold.operator
字符串

根据metricThreshold.threshold检查当前指标值时要应用的操作符。 可能的值为:

  • GREATER_THAN

  • LESS_THAN

metricThreshold.threshold
数字
阈值,超出此警报配置Atlas Triggers警报。
metricThreshold.units
字符串

metricThreshold.threshold的单位。 单位取决于指标类型。

接受的值为:

  • RAW

  • BITS

  • BYTES

  • KILOBITS

  • KILOBYTES

  • MEGABITS

  • MEGABYTES

  • GIGABITS

  • GIGABYTES

  • TERABYTES

  • PETABYTES

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

示例,测量内存消耗的指标可以使用BYTES ,而测量时间的指标则可以使用HOURS

notifications
对象数组
MongoDB Ops Manager在检测到此警报配置描述的警报时发送的通知。
notifications.apiToken
字符串

Slack API 令牌或 Bot 令牌。 仅针对SLACK通知出现。 如果令牌后来变得无效, MongoDB Ops Manager会向项目所有者发送电子邮件并删除令牌。

创建需要 API 或集成密钥的第三方集成后,当您执行以下操作时,该密钥将显示为部分经过校订的:

  • 通过用户界面查看或编辑警报。

  • 通过API查询第三方集成设置。

notifications.channelName
字符串
Slack 通道名称。 仅针对SLACK通知出现。
notifications.delayMin
数字
检测到警报条件后MongoDB Ops Manager发出第一个通知之前的等待分钟数。
notifications.emailAddress
字符串
向其发送通知的电子邮件地址。 仅针对EMAIL通知出现。
notifications.emailEnabled
布尔
指定MongoDB Ops Manager是否发送电子邮件通知。 仅针对GROUPUSER通知出现。
notifications.intervalMin
数字
此警报配置Atlas Triggers的未确认、未解决的警报的连续通知之间的等待分钟数。
notifications.[n]
.webhookSecret
字符串

用于向接受和转发通知的 Webhook 进行身份验证的值。

如果您将notifications.[n].typeName设置为WEBHOOK并且满足以下任一条件,则 Ops Manager 会返回此值:

  • 您将notification.[n].webhookSecret设置为非空字符串

  • 您在管理控制台上设立了默认webhookSecret

创建 Webhook 通知后,当您查看或编辑警报时, URL将被部分编辑,并且密钥将被完全编辑。

notifications.[n]
.webhookUrl
字符串

Atlas Triggers此通知的 Webhook 的URL

如果您将notifications.[n].typeName设置为WEBHOOK并且满足以下任一条件,则 Ops Manager 会返回此值:

  • 您将notification.[n].webhookURL设置为非空字符串

  • 您可以在“管理控制台”页面上设立默认webhookUrl

创建 Webhook 通知后,当您查看或编辑警报时, URL将被部分编辑,并且密钥将被完全编辑。

notifications.microsoftTeamsWebhookUrl
字符串

Microsoft Teams 通道传入的 Webhook URL。 仅针对MICROSOFT_TEAMS通知出现。

当您查看或编辑 Webhook 通知的警报时,URL 会显示为部分遮蔽,而密钥显示为完全遮蔽。

notifications.notificationToken
字符串

HipChat API 令牌。 仅针对HIP_CHAT通知出现。 如果令牌后来变得无效, MongoDB Ops Manager会向项目所有者发送电子邮件并删除令牌。

创建需要 API 或集成密钥的第三方集成后,当您执行以下操作时,该密钥将显示为部分经过校订的:

  • 通过用户界面查看或编辑警报。

  • 通过API查询第三方集成设置。

notifications.roomName
字符串
HipChat 房间名称。 仅针对HIP_CHAT通知出现。
notifications.serviceKey
字符串

PagerDuty 集成密钥。 仅针对PAGER_DUTY通知出现。 如果密钥后来变得无效, MongoDB Ops Manager会向项目所有者发送电子邮件并删除密钥。

创建需要 API 或集成密钥的第三方集成后,当您执行以下操作时,该密钥将显示为部分经过校订的:

  • 通过用户界面查看或编辑警报。

  • 通过API查询第三方集成设置。

notifications.smsEnabled
布尔
指定MongoDB Ops Manager是否发送短信通知。 仅针对GROUPUSER通知出现。
notifications.snmpAddress
字符串

要向其发送 SNMP 陷阱的主机名和端口。 此时, MongoDB Ops Manager只能向标准 SNMP 端口 (162) 发送 SNMP 陷阱。 仅针对SNMP通知出现。

重要

MongoDB Ops Manager 6.0.0 弃用SNMP警报。 MongoDB Ops Manager 7.0.0 将不包含SNMP警报。 要学习;了解有关其他警报选项的更多信息,请参阅第三方服务集成。

注意

MongoDB Ops Manager使用 SNMP v2c。

notifications.typeName
字符串

此警报配置Atlas Triggers的警报通知类型。 可能的值为:

  • ADMIN

  • GROUP

  • USER

  • SNMP

    重要

    MongoDB Ops Manager 6.0.0 弃用SNMP警报。 MongoDB Ops Manager 7.0.0 将不包含SNMP警报。 要学习;了解有关其他警报选项的更多信息,请参阅第三方服务集成。

  • EMAIL

  • SMS (仅当为MongoDB Ops Manager Twilio 集成 配置了 时才可用。)

  • HIPCHAT

  • SLACK

  • PAGER_DUTY

notifications.username
字符串
要向其发送通知的MongoDB Ops Manager用户的名称。 仅针对USER通知出现。
threshold
对象

导致此警报配置trigger警报的阈值。 仅当eventTypeName设为以下值之一时才出现:

  • TOO_FEW_HEALTHY_MEMBERS

  • TOO_MANY_UNHEALTHY_MEMBERS

threshold.operator
字符串

根据threshold.threshold检查当前指标值时要应用的操作符。 可能的值为:

  • GREATER_THAN

  • LESS_THAN

threshold.threshold
数字
阈值,超出此警报配置Atlas Triggers警报。
tags
字符串数组
与此警报配置关联的标签。
typeName
字符串
此字段已弃用,将被忽略。
updated
字符串
ISO8601 格式的时间戳 上次更新此警报配置时的日期和时间格式( UTC 格式)。
1curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
2 --header "Accept: application/json" \
3 --header "Content-Type: application/json" \
4 --include \
5 --request PUT "https://<OpsManagerHost>:<Port>/api/public/v1.0/globalAlertConfigs/{GLOBAL-ALERT-CONFIG-ID}" \
6 --data '{
7 "enabled": true,
8 "eventTypeName": "BACKUP_AGENT_DOWN",
9 "forAllGroups": true,
10 "groupIds": [],
11 "matchers": [],
12 "notifications": [
13 {
14 "delayMin": 0,
15 "intervalMin": 60,
16 "typeName": "ADMIN"
17 }
18 ],
19 "tags": [],
20 "typeName": "AGENT"
21 }
HTTP/1.1 401 Unauthorized
Content-Type: application/json;charset=ISO-8859-1
Date: {dateInUnixFormat}
WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false
Content-Length: {requestLengthInBytes}
Connection: keep-alive
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json
Strict-Transport-Security: max-age=300
Date: {dateInUnixFormat}
Connection: keep-alive
Content-Length: {requestLengthInBytes}
X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
1{
2 "created": "2019-10-02T12:34:04Z",
3 "enabled": true,
4 "eventTypeName": "BACKUP_AGENT_DOWN",
5 "forAllGroups": true,
6 "groupIds": [],
7 "id": "{GLOBAL-ALERT-CONFIG-ID}",
8 "links": [
9 ],
10 "matchers": [],
11 "notifications": [
12 {
13 "delayMin": 0,
14 "intervalMin": 60,
15 "typeName": "ADMIN"
16 }
17 ],
18 "tags": [],
19 "typeName": "AGENT",
20 "updated": "2019-10-02T12:34:04Z"
21}

后退

创建一个全局警报配置