向除 New Relic 以外的服务发布 Domino 统计信息

Domino 预配置为向 New Relic 发布 Domino 统计信息,但如果要向其他服务(如 Hosted Graphite)发布,可通过多种 notes.ini 设置来实现。

过程

在 Domino 服务器上使用以下 notes.ini 设置,以将其统计信息发布到除 New Relic 以外的服务。此服务必须能通过 HTTP POST 请求接受时间序列数据。
1. 用于向其他服务发布的 Notes.ini 设置
设置 描述 是否必需? 受支持的替换字符串1
STATPUB_ENABLE=1 启用 Domino 统计信息发布。 必需 不适用
STATPUB_URI=<string> 度量服务器的 URI 必需 $Timestamp$
STATPUB_METRIC_FORMAT=<string> 计数器度量值使用的格式。 必需

$Name$(必需)$Value$(必需)$Timestamp$ $Newline$

STATPUB_DELTA_METRIC_FORMAT=<string> 比率度量值使用的格式。 必需

$Name$(必需)$Value$(必需)$Timestamp$ $Newline$

STATPUB_HEADERS=<string> 与请求一起发送的 HTTP 头。 可选

$Timestamp$ $Newline$(头之间使用)

STATPUB_DATA_HEAD=<string> 放入有效内容中度量数据之前的数据。 可选

$Timestamp$ $Newline$

STATPUB_DATA_TAIL=<string> 放入有效内容中度量数据之后的数据。 可选

$Timestamp$ $Newline$

STATPUB_METRIC_DELIMITER=<string> 用于分隔度量值的定界符。如果未指定,则使用逗号 (,)。 可选

$Newline$

1替换字符串说明:

$Name$ 替换 Domino 统计名称 $Value$ 替换 Domino 统计值 $Timestamp$ 替换当前 Domino 时间戳记值(相对于 Unix 时间戳时间的秒数) $Newline$ 替换换行符

示例

向 Hosted Graphite 发布统计信息

本例演示向 Hosted Graphite 报告统计信息的简单配置。Hosted Graphite 最低要求如下:
  • 将 API 密钥指定为 URI 的一部分
  • 将一项或多项度量值的数据有效内容指定为名称和值对,中间用空格分隔,每行一个度量值。
服务器 notes.ini 文件中的设置示例:
;Enable Domino to publish metrics to Hosted Graphite
STATPUB_ENABLE=1
STATPUB_URI=http://d4692fb0-464f-5adc-8db3-d663c3bc341a@www.hostedgraphite.com/api/v1/sink
STATPUB_METRIC_FORMAT=Domino.mailserver01.$Name$ $Value$
STATPUB_DELTA_METRIC_FORMAT=Domino.mailserver01.Rate.$Name$ $Value$
STATPUB_METRIC_DELIMITER=$Newline$
以下示例显示 Mail.Delivered 统计数据有效内容中包含的两个度量值。第一个表示自 Domino 服务器启动后投递了 33065 封邮件,第二个表示最近一分钟投递了 1017 封邮件。
Domino.mailserver01.Mail.Delivered 33065
Domino.mailserver01.Rate.Mail.Delivered 1017

STATPUB_METRIC_DELIMITER=$Newline$ 将每个度量值置于单独的行中。

向 New Relic 发布统计信息

以下示例说明 Domino 用于向 New Relic 进行发布的配置,您可对其作相应修改用于另一个服务。其旨在说明一个包含 HTTP 头以及在统计信息前后包含其他数据的更复杂的配置。
注: 如果使用 New Relic,Domino 服务器内置关于 API 要求的信息,在 notes.ini 文件中设置 NEWRELIC_LICENSE_KEY 值时,会自动按照需要格式化数据。
注: 以下示例显示出于可读性而跨两行的一些设置。在实际 notes.ini 文件中,每个设置都应占一行。
;Enable Domino to publish to New Relic
STATPUB_ENABLE=1
STATPUB_URI=http://platform-api.newrelic.com/platform/v1/metrics
STATPUB_HEADERS=X-License-Key: f83f53480dbcb06c0a07f62bc96aed05d0739f07$Newline$Content-Type: 
     application/json$Newline$Accept: application/json$Newline$
STATPUB_DATA_HEAD={"agent":{"host":"mailserver01.renovations.com","version":"1.0.0"},"components":
     [{"name":"Mailserver01/Renovations","guid":"com.renovations.MyDominoStats","duration":60,"metrics":{
STATPUB_DATA_TAIL=}}]}
STATPUB_METRIC_FORMAT="Component/$Name$":$Value$
STATPUB_DELTA_METRIC_FORMAT="Component/Delta/$Name$":$Value$
在此示例中:
  • New Relic 账户许可证密钥包含在三个 HTTP 头(每行一个)之一中。
  • New Relic 插件 API 要求使用 JSON 格式发送度量值数据。因此,STATPUB_DATA_HEAD 参数用于指定必需的开头 JSON 语法以及元数据,包括发布服务器的主机名和实例名(Domino 服务器名)。STATPUB_DATA_TAIL 参数定义用以结束数据有效内容的 JSON 语法所需的字符。
  • STATPUB_METRIC_FORMAT STATPUB_DELTA_METRIC_FORMAT 定义用于作为有效内容部分发送的单独度量值的格式。
  • 由于未使用 STATPUB_METRIC_DELIMITER 设置,因此在度量值之间使用缺省定界符逗号 (,)。