项目描述
翻译我们运营多个网络服务,每当出现减速或故障时,客户都会问同样的问题:这是你们的问题还是我们的?现在的答案存在于内部聊天中,外部没有人能看到,因此我们需要一个干净的公共状态页面来解释发生了什么。核心任务是一个检查调度程序,以可配置的间隔对每个服务进行ping测试,注册响应是否正常,并存储滑动历史记录,以便访客可以一目了然地查看过去几天的情况。每个服务对应页面上的一个命名组件,组件显示清晰的状态:正常、降级或不可用,这一状态由真实的检查结果决定,而不是手动切换。
在自动检查的基础上,我们需要适当的事件管理。当出现故障时,员工会打开一个事件,设置标题和严重性级别,并在我们从“调查中”转到“已识别原因”、“监控”和“已解决”时发布简短更新。这些更新同时发送到公共页面和所有订阅者的电子邮件,因此通知很重要:访客输入地址,确认后,当新事件开启或现有事件更新或关闭时会收到电子邮件。取消订阅必须简单且一键完成。对我们来说,保持这个工具作为一个狭窄的状态和正常运行时间工具,而不是一个庞大的监控巨兽是很重要的:不收集日志,不进行追踪,不提供巨大的仪表板。
我们期望一个小型网络应用程序,可以在我们自己的基础设施上部署,带有一个供我们使用的管理面板和一个供其他人使用的快速公共页面。干净可读的代码和简短的设置指南是工作的一部分。
— 为每个服务安排正常运行时间检查,具有可配置的间隔和滑动历史记录
— 具有命名组件和清晰状态的公共页面:正常、降级、不可用
— 事件创建,带有严重性级别和通过解决方案的时间线更新
— 电子邮件订阅,带有确认、事件通知和一键取消订阅
— 简单的管理面板,自托管能力,干净的代码和简短的设置指南
在自动检查的基础上,我们需要适当的事件管理。当出现故障时,员工会打开一个事件,设置标题和严重性级别,并在我们从“调查中”转到“已识别原因”、“监控”和“已解决”时发布简短更新。这些更新同时发送到公共页面和所有订阅者的电子邮件,因此通知很重要:访客输入地址,确认后,当新事件开启或现有事件更新或关闭时会收到电子邮件。取消订阅必须简单且一键完成。对我们来说,保持这个工具作为一个狭窄的状态和正常运行时间工具,而不是一个庞大的监控巨兽是很重要的:不收集日志,不进行追踪,不提供巨大的仪表板。
我们期望一个小型网络应用程序,可以在我们自己的基础设施上部署,带有一个供我们使用的管理面板和一个供其他人使用的快速公共页面。干净可读的代码和简短的设置指南是工作的一部分。
— 为每个服务安排正常运行时间检查,具有可配置的间隔和滑动历史记录
— 具有命名组件和清晰状态的公共页面:正常、降级、不可用
— 事件创建,带有严重性级别和通过解决方案的时间线更新
— 电子邮件订阅,带有确认、事件通知和一键取消订阅
— 简单的管理面板,自托管能力,干净的代码和简短的设置指南
管理 现金, 银行转账