Ubuntu下如何监控Laravel运行状态
导读:Ubuntu下监控Laravel运行状态的实用方案 一 核心监控层次与工具 应用日志:Laravel 默认日志位于 /storage/logs/laravel.log,使用命令 tail -f /storage/logs/laravel....
Ubuntu下监控Laravel运行状态的实用方案
一 核心监控层次与工具
- 应用日志:Laravel 默认日志位于 /storage/logs/laravel.log,使用命令 tail -f /storage/logs/laravel.log 实时查看错误与请求记录。
- 队列与任务:使用 Laravel Horizon 监控 Redis 队列 的吞吐量、失败任务、运行时分布等;使用 Supervisor 管理队列进程,异常自动重启。
- 应用性能与错误:接入 New Relic、Datadog、Sentry 获取 APM、错误追踪与告警。
- 服务器资源:用 top、htop、vmstat、iostat 观察 CPU、内存、磁盘、IO 等系统指标。
- 外部可用性:用 UptimeRobot 做 HTTP 存活探测 与宕机通知。
二 快速上手步骤
- 实时查看日志
- 命令:tail -f /storage/logs/laravel.log
- 用途:第一时间发现异常堆栈、SQL 报错、请求异常等。
- 进程守护与队列监控
- 安装 Supervisor(Ubuntu):sudo apt-get install supervisor
- 配置示例(/etc/supervisor/conf.d/laravel-worker.conf):
[program:laravel-worker] process_name=%(program_name)s_%(process_num)02d command=php /var/www/your-app/artisan queue:work --tries=3 --sleep=3 autostart=true autorestart=true user=www-data numprocs=4 redirect_stderr=true stdout_logfile=/var/log/supervisor/laravel-worker.log - 使配置生效:sudo supervisorctl reread & & sudo supervisorctl update & & sudo supervisorctl start laravel-worker:*
- 队列可视化:安装并启动 Laravel Horizon(开发/预发环境便于排查,生产按需开放)。
- 性能与错误追踪
- 接入 New Relic / Datadog / Sentry,收集事务、慢请求、异常与调用链,配置阈值告警。
三 进阶与可视化监控
- 自托管指标栈:Prometheus + Grafana
- 采集:服务器用 node_exporter,数据库用 mysqld_exporter;Laravel 侧可用 promphp/prometheus_client_php 暴露自定义指标。
- 可视化:Grafana 构建看板,Prometheus 做告警规则。
- 开箱即用的服务器健康检查:Spatie Laravel Server Monitor
- 检查项:磁盘空间、证书过期、服务存活等;通知支持 Slack/邮件/Telegram。
- 实时应用内监控:Laravel Pulse(Laravel 10.25+)
- 维度:用户活跃、慢请求与异常、队列吞吐 等,轻量且实时。
- 即时系统面板:NetData
- 特点:1 秒级刷新,覆盖 CPU/RAM/Disk IO/MySQL/PHP-FPM 等,访问 http://your-server:19999。
四 生产环境实践清单
- 日志与权限:确保 /storage/logs 与 Supervisor 日志 对运行用户(如 www-data)可写,避免因权限导致进程异常或无法写入。
- 访问控制:Laravel Telescope / Horizon 仅在内网或加鉴权后开放,防止敏感数据泄露。
- 告警策略:为 队列失败数、异常率、响应时延、磁盘/CPU 设置分级告警(如 Warning/Critical),并接入 邮件/企业微信/钉钉/Slack。
- 变更生效:代码或队列逻辑变更后,重启队列进程(如 supervisorctl restart laravel-worker:*)以确保新逻辑生效。
- 合规与成本控制:SaaS APM(如 Datadog / New Relic)按主机/数据量计费,合理设置采样率与保留期;自托管栈注意 存储与计算资源 规划。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu下如何监控Laravel运行状态
本文地址: https://pptw.com/jishu/751152.html
