必须运行 vendor:publish 才能使用 Laravel Pulse 仪表盘,否则配置、迁移和视图均缺失,导致 404、空白页或无法调整参数。

直接装就能用,但漏掉 vendor:publish 就看不到仪表盘,也调不了采样频率、保留天数这些关键参数。
composer require laravel/pulse 之后必须运行 vendor:publish
很多人执行完 composer require laravel/pulse 就去跑 php artisan migrate,结果访问 /pulse 报 404 或空白页。原因很直接:Pulse 的配置文件、迁移文件、前端视图默认不会自动发布,全靠你手动触发。
-
php artisan vendor:publish --provider="Laravel\Pulse\PulseServiceProvider"是最简方式,它会同时发布配置、迁移、资源三类文件 - 如果只想发配置(比如先看默认值),用
php artisan vendor:publish --tag=pulse-config - 如果只缺仪表盘视图(想自定义卡片布局),用
php artisan vendor:publish --tag=pulse-dashboard - 不发布就改
config/pulse.php?没这文件,改不了
php artisan migrate 失败常见于数据库连接未配或权限不足
报错如 SQLSTATE[HY000] [1045] Access denied for user 或 Base table or view not found,不是 Pulse 本身问题,而是 Laravel 主数据库连接没通,或者当前用户没建表权限。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 确认
.env里DB_CONNECTION、DB_HOST、DB_DATABASE、DB_USERNAME、DB_PASSWORD全部填对且能连通 - Pulse 默认复用主库;如想隔离,需在
config/pulse.php里设'database' => 'pulse',并在config/database.php中额外定义一个名为pulse的连接 - 迁移文件路径是
database/migrations/2023_06_07_000001_create_pulse_tables.php,执行后会建pulse_entries、pulse_values等表
php artisan pulse:work 启动后没数据?检查采集器是否启用
命令跑成功了,日志显示 “Starting pulse:work”,但仪表盘全是空的——大概率是默认采集器被禁用了,或者应用没触发任何可采集事件(比如没发 HTTP 请求、没查 DB、没抛异常)。
- 检查
config/pulse.php中'recorders'数组,确保至少启用了Requests、SlowQueries、Exceptions这几个常用记录器 -
'ingest' => 'database'表示走数据库写入;若设成'redis'却没配好 Redis 连接,数据会静默丢弃 - 本地开发时,用
curl http://localhost:8000/或浏览器打开首页几次,再等 10–20 秒,数据才会刷进表里并显示在仪表盘
真正容易被忽略的是授权控制:生产环境默认关掉 /pulse 路由,哪怕你把 APP_ENV=production 改成 local 也不行,必须在 AppServiceProvider::boot() 里显式定义 viewPulse Gate,否则 403 拦得非常安静。

















