摘要
日系多站点爬虫无可视化监控时,IP 封禁、抓取超时、页面改版异常只能通过日志人工排查,故障滞后严重。本文基于 Prometheus+Grafana 搭建爬虫全维度监控看板,自定义采集指标与告警规则,附带核心查询语句,bidfans 代拍爬虫集群统一接入监控体系。sum(rate(spider_request_code{site="yahoo",code="403"}[5m])) / sum(rate(spider_request_code{site="yahoo"}[5m])) avg(spider_cost_ms) by (proxy_group,site) sum(spider_task_wait) > 200
一、人工排查监控痛点
bidfans 早期爬虫仅依靠日志文件记录抓取结果,出现批量 IP 封禁、原站页面结构变更时,需要运维逐行检索日志,故障发现延迟数小时;无法直观区分雅虎、煤炉、乐天各渠道抓取成功率,代理池各组健康状态无量化数据;定时抓取任务堆积无预警,夜间无人值守时段大量商品抓取中断,影响代购货源同步。
二、爬虫自定义指标埋点设计
爬虫程序内置埋点采集十类核心指标:各站点请求状态码分布、单代理 IP 平均耗时、任务堆积数量、抓取失败类型(封禁 / 超时 / 页面解析失败)、每日商品抓取总量、任务执行耗时区间。每 15 秒推送指标至 Prometheus 时序数据库,数据永久留存 7 天用于趋势分析。
Grafana 看板划分四大模块:渠道成功率总览、代理池健康趋势、任务堆积告警面板、失败类型占比饼图,一键切换雅虎 / Mercari 站点筛选数据。
三、分级告警触发规则
配置三级告警:黄色预警(403 封禁占比超 10%、任务堆积 100 条)推送企业微信;橙色告警(封禁占比 30%、堆积 300 条)加急推送运维;红色告警(抓取成功率低于 50%)触发电话提醒。区分工作日与夜间告警阈值,夜间适度放宽标准,减少无效骚扰。
四、运维优化价值
依托监控看板,bid 运维可提前预判代理 IP 大规模封禁风险,主动切换代理分组;页面结构变更导致解析失败时,看板失败占比瞬间飙升,运维 5 分钟内定位问题,修复爬虫适配器,代购商品上新中断时长大幅缩短。
结语
基于时序数据库的爬虫可视化监控体系,量化多渠道抓取运行状态,搭配分级告警实现故障前置预警,是长期稳定运行日系代拍爬虫集群必备运维方案。