WordPress网站监控:宕机提醒与性能追踪
详细介绍WordPress网站监控方案,包括宕机报警、性能追踪、错误日志分析等,确保网站稳定运行。
前言
你的网站挂了你知道吗?如果不做监控,可能网站已经宕机几个小时了你还浑然不知。我以前就遇到过网站SSL证书过期导致全站无法访问,偏偏那天我没看网站,第二天才发现。从那以后我就给所有网站配了监控。
为什么需要网站监控
| 监控内容 | 为什么重要 |
|---|---|
| 在线状态 | 网站挂了第一时间知道 |
| 响应时间 | 发现速度变慢的趋势 |
| SSL证书 | 证书过期前提醒续期 |
| 域名到期 | 避免域名过期被抢注 |
| 错误率 | 发现程序异常和Bug |
| 服务器资源 | CPU和内存使用率过高预警 |
宕机监控方案
UptimeRobot(推荐免费方案)
UptimeRobot是最流行的免费监控服务:
免费方案功能:
- 50个监控目标
- 5分钟检测间隔
- 邮件/Webhook通知
- 状态页面
- 2个月的历史数据
配置步骤:
- 注册 uptimerobot.com 账号
- 点击”Add New Monitor”
- Monitor Type选择”HTTP(s)”
- 输入你的网站URL
- 设置通知方式(邮件、Telegram等)
- 保存
Better Uptime
Better Uptime提供更丰富的功能:
| 功能 | UptimeRobot免费版 | Better Uptime免费版 |
|---|---|---|
| 监控数 | 50个 | 10个 |
| 检测间隔 | 5分钟 | 3分钟 |
| 多节点检测 | 不支持 | 支持 |
| 状态页面 | 基础 | 精美 |
| 事件管理 | 不支持 | 支持 |
| 电话通知 | 不支持 | 支持 |
Hetrix Tools
Hetrix Tools免费版提供15个监控目标,支持从全球多个节点同时检测,误报率更低。
性能监控
Google PageSpeed Insights API
定期用PageSpeed API检测网站性能变化:
# 使用API获取性能评分
curl "https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url=https://yourdomain.com&strategy=mobile"
可以写一个定时脚本每天检测,将结果存入数据库,追踪性能变化趋势。
Google Search Console
Google Search Console提供核心网页指标(Core Web Vitals)数据:
| 指标 | 说明 | 达标值 |
|---|---|---|
| LCP | 最大内容绘制 | 小于2.5秒 |
| FID/INP | 交互延迟 | 小于200毫秒 |
| CLS | 累计布局偏移 | 小于0.1 |
这些指标已经成为Google排名因素,详细的优化方法可以看速度优化教程。
New Relic(高级方案)
如果网站是商业项目,New Relic提供专业级的应用性能监控(APM):
- PHP执行时间细分
- 数据库查询性能
- 外部服务调用时间
- 错误追踪和告警
WordPress后台监控
Query Monitor插件
Query Monitor是WordPress开发必备的监控插件:
监控内容:
- 数据库查询(数量、时间、慢查询)
- PHP错误和警告
- HTTP API请求
- 钩子和动作执行
- 条件判断
- 脚本和样式加载
安装后在后台的管理栏会显示查询数和执行时间,点击可以看到详细报告。
WP Activity Log
WP Activity Log记录后台的所有操作日志:
- 谁在什么时候登录了后台
- 修改了哪些文章
- 安装或删除了哪些插件
- 用户角色变更
这对安全监控非常重要。
服务器监控
基础命令行监控
# 查看CPU和内存使用
top -bn1 | head -20
# 查看磁盘使用
df -h
# 查看网络连接数
netstat -ant | wc -l
# 查看Apache/Nginx连接数
ps aux | grep -c apache2
ps aux | grep -c nginx
宝塔面板监控
如果你用宝塔面板管理服务器,它自带了丰富的监控功能:
- CPU/内存/磁盘实时曲线
- 网络流量统计
- 网站访问日志
- 负载报警设置
Netdata(免费开源)
Netdata是一款强大的免费服务器监控工具:
# 一键安装Netdata
bash <(curl -Ss https://my-netdata.io/kickstart.sh)
安装后访问 http://服务器IP:19999 就能看到实时的服务器性能数据。
错误日志监控
WordPress错误日志
在wp-config.php中开启错误日志:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
日志位置:wp-content/debug.log
定期检查这个文件,发现PHP错误和警告及时修复。
服务器错误日志
| 服务器 | 日志位置 |
|---|---|
| Nginx | /var/log/nginx/error.log |
| Apache | /var/log/apache2/error.log |
| PHP-FPM | /var/log/php-fpm/error.log |
| MySQL | /var/log/mysql/error.log |
SSL证书监控
SSL证书过期会导致浏览器显示安全警告,严重影响网站访问。
使用UptimeRobot可以同时监控SSL证书状态:
- 在创建Monitor时勾选”SSL Certificate Monitoring”
- 设置在证书到期前30天提醒
或使用命令行检查证书到期时间:
echo | openssl s_client -servername yourdomain.com -connect yourdomain.com:443 2>/dev/null | openssl x509 -noout -dates
监控告警通知渠道
| 通知方式 | 实时性 | 推荐场景 |
|---|---|---|
| 邮件 | 中 | 非紧急告警 |
| Telegram | 高 | 即时通知 |
| Slack | 高 | 团队协作 |
| 微信/钉钉 | 高 | 国内团队 |
| 短信 | 极高 | 紧急告警 |
| 电话 | 极高 | 关键业务 |
监控方案推荐
根据网站规模选择合适的监控方案:
| 网站类型 | 推荐方案 | 月成本 |
|---|---|---|
| 个人博客 | UptimeRobot免费版 + Query Monitor | $0 |
| 小型企业站 | UptimeRobot + 宝塔面板监控 | $0 |
| 中型电商 | Better Uptime + Netdata + WP Activity Log | $0-29 |
| 大型网站 | New Relic + 专业监控方案 | $100+ |
总结
网站监控是运维的基本功。最简单的做法是注册一个UptimeRobot免费账号,监控网站的在线状态和SSL证书。再安装Query Monitor插件监控后台性能。做好备份和监控,你的WordPress网站就能稳定运行了。