HTTPS
网站和API监控
一个页面或端点,从四大洲获取。
立即尝试
一次检查,从一个地点立即进行,不保存任何数据。监控会从我们运行的每个地点检查,并在两个其他大陆确认故障后才通知任何人,而单次检查无法显示这些信息。
它的用途
每个人都从这个检查开始,也是大多数产品停留的地方。我们请求URL,根据你的设置跟随或拒绝重定向,并读取状态码。
仅靠状态码是一个薄弱的保证。一个网站可能返回200,但实际上是一个错误页面、登录界面、上周二的缓存副本或未能渲染的空壳。因此,检查还可以要求包含特定短语、重定向到指定位置、JSON字段包含特定值,以及响应在你设置的时间内到达。这些是状态码无法检测的故障。
和这里的每个检查一样,它从Amsterdam, New York, Sydney and Singapore运行,并且故障会在其他两个大陆确认后才会通知任何人。如何运作。
你可以设置什么
以下内容在你添加时的表单中,每个套餐都包含。
- 方法
- GET、HEAD、POST、PUT、PATCH或DELETE。HEAD是默认的礼貌选项,用于只需确认页面存在。
- 预期状态
- 哪些状态码算作正常。对于应该拒绝你的端点,401是正确的,这样我们就不会将你的认证工作报告为故障。
- 关键词
- 必须存在或必须缺失的短语。捕捉实际上是错误页面的200状态码的最简单方法。
- JSON断言
- 路径及其应包含的值,用于API返回200但正文显示其他内容的情况。
- 重定向
- 跟随重定向链,或将重定向视为答案。通过预期位置,这可以捕捉到网站悄悄重定向到不应该去的地方。
- 缓慢即失败
- 响应时间超过设定值时,检查会被视为降级而非正常运行,以及连续多少次后我们会报告。
- 认证
- Basic或Bearer。加密存储,由控制平面解密,并随任务交给探测器,而不是将所有密钥交给租用的机器。
- 头部和正文
- 请求需要的任何内容。每行一个头部,对于需要正文的方法提供正文。
- 超时
- 等待多长时间后判定为失败。
- 确认
- 需要多少个其他大洲的确认后才会触发警报。零是可选的,但很少是你想要的。
问题
502或503是什么意思,你会对此发出警报吗?
502是前端服务器告诉你后端服务器给了一个无法使用的答案,503是服务器表示它不接受请求,这是大多数框架在重启时返回的状态。默认情况下两者都会导致检查失败,因为默认期望2xx和3xx。如果某个状态码对该端点是正确的,请将其加入预期状态列表,这样就不会被视为故障。
你会验证SSL/TLS证书链吗?
是的。检查会像浏览器一样连接到公共信任库,因此缺少中间证书、自签名证书、主机名不匹配或证书过期会导致检查因TLS错误而失败,而不是返回状态码。它不会计算剩余天数,这属于SSL/TLS证书监控的职责。对于你已知的内部主机,可以为每个监控关闭验证。
我可以监控API端点而不是页面吗?
这就是请求选项的用途,也是为什么没有单独的API监控类型。选择POST、PUT、PATCH或DELETE,添加headers和body,用basic或bearer凭据进行认证,接受正确的状态码,并对返回的JSON中的路径进行断言。
超时和响应缓慢有什么区别?
超时是指检查在允许的秒数内未收到答案,并作为没有状态码的失败报告,除了直接被拒绝的连接。慢是指答案到达但耗时过长:设置一个响应时间阈值,超过该时间检查会被视为性能下降,并设置连续多少次后才通知相关人员。
你会跟随重定向吗?
除非你明确设置,否则不会这样,这经常让人感到意外,值得解释。一个开始返回302到停车页面的网站是有问题的,而一个检查器如果悄悄跟随并找到200会报告为健康。当重定向是重点时,请开启跟随并指定你期望的最终位置。
检查会运行JavaScript或渲染页面吗?
不会,我们明确说明这一点,而不是暗示其他情况。它获取服务器发送的文档并读取,因此关键字检查必须匹配HTML中的内容,而不是框架后续渲染的内容。对于在浏览器中渲染的页面,请对状态码、响应时间以及响应中真实存在的短语进行断言。
响应时间是我的访客实际体验的吗?
这是我们的探测器从请求到响应所等待的时间,没有冷缓存也没有浏览器在前端。这使它成为检测服务器变慢的优秀触发器,但不是模拟手机用户的好模型。真实用户监控和Core Web Vitals回答了另一个问题,而这个检查并不假装回答那个问题。
为什么不直接用cron作业里的curl?
对于一台机器上的一个URL,cron作业确实可以完成大部分工作,任何告诉你其他情况的人都在推销某种东西。它无法提供一个不会悄悄宕机的运行环境:一个网络丢失的设备不会报告任何内容,看起来就像一切正常。它也无法区分你和网站之间的链接断裂与网站本身故障,这就是为什么需要从其他两个大陆再次检查,并且仍然需要你构建唤醒某人的部分。
这与基于浏览器的合成检查有何不同?
合成检查驱动一个真实的浏览器,因此它可以看到我们无法看到的内容:由于脚本抛出错误而渲染为空白的页面、停止工作的按钮、从未加载的字体。这个检查发出请求并读取答案,这意味着它无法看到这些内容。它提供的是一种足够便宜的检查,可以每30秒从三个大陆运行一次,覆盖你所有的URL,而不是每小时运行几次的少量路径。它们回答不同的问题,许多人需要两者。