侧边栏壁纸
博主头像
Wood Chen博主等级

独唱独酬,独行独坐还独卧

  • 累计撰写 233 篇文章
  • 累计创建 166 个标签
  • 累计收到 9 条评论

目 录CONTENT

文章目录

vigil状态监控项目,怎么进行管理

wood
2023-06-11 / 0 评论 / 0 点赞 / 19 阅读 / 7526 字

AI摘要

本文介绍了一个用于 Vigil 状态管理的单页面应用程序的仓库地址,并提供了使用方法和示例页面。此外,还提供了 Vigil Reporting HTTP API 和 Manager HTTP API 的详细说明,包括列表发布公告、插入新公告、撤回公告、列出探测器警报、解决探测器警报的忽略规则和更新忽略规则等内容。

我写了一个单页面用于管理

仓库地址为:https://github.com/woodchen-ink/vigil_status_manager

使用方法

manager.html​页面放在与你status.example.com​同一个服务下,修改第109行为你自己的网址。然后打开这个网页即可。
image

示例页面

你需要先输入你的manager_token​,然后才能进行其他操作。
image


官方是有文档的,但是很不方便调用:

原文档为:https://github.com/valeriansaliou/vigil/blob/master/PROTOCOL.md#vigil-manager-http-api

Vigil Protocol

Vigil Reporter HTTP API

1️⃣ Report a replica

Endpoint URL:

HTTP POST https://status.example.com/reporter///

Where:

  • node_id​: The parent node of the reporting replica
  • probe_id​: The parent probe of the node

Request headers:

  • Add an Authorization​ header with a Basic​ authentication where the password is your configured reporter_token​.
  • Set the Content-Type​ to application/json; charset=utf-8​, and ensure you submit the request data as UTF-8.

Request data:

Adjust the request data to your replica context and send it as HTTP POST​:

{
  "replica": "",
  "interval": 30,

  "load": {
    "cpu": 0.30,
    "ram": 0.80
  }
}

Where:

  • replica​: The replica unique identifier (eg. the server LAN IP)
  • interval​: The push interval (in seconds)
  • load.cpu​: The general CPU load, from 0.00​ to 1.00​ (can be more than 1.00​ if the CPU is overloaded)
  • load.ram​: The general RAM load, from 0.00​ to 1.00

2️⃣ Flush a replica

Endpoint URL:

HTTP DELETE https://status.example.com/reporter////

Where:

  • node_id​: The parent node of the reporting replica
  • probe_id​: The parent probe of the node
  • replica_id​: The replica unique identifier (eg. the server LAN IP)

Request headers:

  • Add an Authorization​ header with a Basic​ authentication where the password is your configured reporter_token​.

Vigil Manager HTTP API

1️⃣ List published announcements

Endpoint URL:

HTTP GET https://status.example.com/manager/announcements/

Request headers:

  • Add an Authorization​ header with a Basic​ authentication where the password is your configured manager_token​.

2️⃣ Insert a new announcement

Endpoint URL:

HTTP POST https://status.example.com/manager/announcement/

Request headers:

  • Add an Authorization​ header with a Basic​ authentication where the password is your configured manager_token​.
  • Set the Content-Type​ to application/json; charset=utf-8​, and ensure you submit the request data as UTF-8.

Request data:

Adjust the request data to your announcement and send it as HTTP POST​:

{
  "title": "",
  "text": "<text>"
}</code></pre><p>Where:</p><ul><li>​<code>title</code>​: The title for the announcement</li><li>​<code>text</code>​: The description text for the announcement (can be multi-line)</li></ul><h4>3️⃣ Retract a published announcement</h4><p><strong>Endpoint URL:</strong></p><p>​<code>HTTP DELETE https://status.example.com/manager/announcement/<announcement_id>/</code>​</p><p>Where:</p><ul><li>​<code>announcement_id</code>​: The announcement identifier to be removed</li></ul><p><strong>Request headers:</strong></p><ul><li>Add an <code>Authorization</code>​ header with a <code>Basic</code>​ authentication where the password is your configured <code>manager_token</code>​.</li></ul><h4>4️⃣ List prober alerts</h4><p><strong>Endpoint URL:</strong></p><p>​<code>HTTP GET https://status.example.com/manager/prober/alerts/</code>​</p><p><strong>Request headers:</strong></p><ul><li>Add an <code>Authorization</code>​ header with a <code>Basic</code>​ authentication where the password is your configured <code>manager_token</code>​.</li></ul><h4>5️⃣ Resolve ignore rules for prober alerts</h4><p><strong>Endpoint URL:</strong></p><p>​<code>HTTP GET https://status.example.com/manager/prober/alerts/ignored/</code>​</p><p><strong>Request headers:</strong></p><ul><li>Add an <code>Authorization</code>​ header with a <code>Basic</code>​ authentication where the password is your configured <code>manager_token</code>​.</li></ul><h4>6️⃣ Update ignore rules for prober alerts</h4><p><strong>Endpoint URL:</strong></p><p>​<code>HTTP PUT https://status.example.com/manager/prober/alerts/ignored/</code>​</p><p><strong>Request headers:</strong></p><ul><li>Add an <code>Authorization</code>​ header with a <code>Basic</code>​ authentication where the password is your configured <code>manager_token</code>​.</li><li>Set the <code>Content-Type</code>​ to <code>application/json; charset=utf-8</code>​, and ensure you submit the request data as UTF-8.</li></ul><p><strong>Request data:</strong></p><p>Adjust the request data to your announcement and send it as <code>HTTP PUT</code>​:</p><pre><code class="lang-json">{
  "reminders_seconds": 600
}</code></pre><p>Where:</p><ul><li>​<code>reminders_seconds</code>​: The number of seconds during which downtime reminders should not be sent anymore (skipped)</li></ul><hr><p>‍</p>
0

评论区