如何在 Laravel 中设置和配置 Telescope
使用 Telescope 为您的 Laravel 调试加速
监控和调试对于维护稳健的 Laravel 应用程序至关重要,无论您是在构建动态 Web 应用还是管理复杂的后端系统。Laravel Telescope 作为一款优雅的可观测性工具,能够深入洞察请求、查询、异常等内容,帮助开发者轻松优化性能。当部署在 ava.hosting 的 高性能 VPS 或 dedicated servers 上时,Telescope 会成为确保您的应用平稳运行的强大助手。例如,如果您的电商应用出现缓慢查询,Telescope 可以在几秒内定位低效的数据库调用。本指南将带您完成安装、配置以及利用 Telescope 来提升您的 Laravel 应用性能。
前提条件
在开始之前,请确保您具备以下条件:
一个 Laravel 应用程序(建议版本 6.x 或更高)。
PHP 7.3 或更高版本。
已在您的 ava.hosting 服务器或本地机器上安装 Composer。
步骤 1:安装 Laravel Telescope
要安装 Laravel Telescope,请通过 Composer 运行以下命令:
composer require laravel/telescope
安装完成后,使用以下命令发布 Telescope service provider 和资源:
php artisan telescope:install
最后,迁移所需的数据库表:
php artisan migrate
步骤 2:配置 Telescope
安装完成后,Telescope 会提供一个位于
config/telescope.php的配置文件。您可以根据需要自定义设置。
授权
默认情况下,Telescope 仅可在
local环境中访问。如果您想允许在其他环境中访问,请修改
AppProvidersTelescopeServiceProvider中的
gate方法:
use LaravelTelescopeTelescope; use LaravelTelescopeTelescopeApplicationServiceProvider; class TelescopeServiceProvider extends TelescopeApplicationServiceProvider { protected function gate() { Gate::define('viewTelescope', function ($user) { return in_array($user->email, [ 'admin@example.com', ]); }); } }
数据保留
默认情况下,Telescope 会保留日志 24 小时。您可以在
config/telescope.php文件中进行调整:
'retain_hours' => 48,
路由配置
Telescope 的 dashboard 可通过
/telescope访问。如果您想自定义此路径,请更新您的
config/telescope.php文件:
'path' => 'monitoring',
现在,Telescope 将可通过
/monitoring访问,而不是
/telescope。
步骤 3:使用 Telescope
配置完成后,启动您的 Laravel 应用并访问
yourdomain.com/telescope(或您自定义的路径)。您将看到:
- Requests:监控传入请求及其响应时间。
- Exceptions:列出所有错误和堆栈跟踪。
- Queries:显示已执行的 SQL 查询。
- Jobs:监控队列中的任务及其状态。
- Events:记录 Laravel 事件。
步骤 4:将 Telescope 部署到生产环境
虽然 Telescope 在开发中很有用,但由于性能开销,不建议在生产环境中使用。不过,如果您需要在生产环境中部署它,可以使用
TELESCOPE_ENABLED环境变量:
TELESCOPE_ENABLED=true
此外,请安排一个命令定期清理日志,以防止数据库过度增长:
php artisan telescope:prune --hours=24
您可以通过在
app/Console/Kernel.php中添加计划任务来实现自动化:
$schedule->command('telescope:prune --hours=24')->daily();
结论
Laravel Telescope 改变了调试和监控方式,为您在 ava.hosting 强大的 VPS 或 dedicated servers 上的应用性能提供了无与伦比的可见性。从在 Web 应用中定位缓慢查询,到跟踪队列系统中的任务失败,Telescope 让开发者能够高效优化。例如,您可以使用 Telescope 调试电商网站上缓慢的结账流程,或监控 SaaS 平台的 API 请求。通过遵循这些步骤并利用 ava.hosting 可靠的基础设施,您可以借助 Telescope 的洞察轻松构建更快、更可靠的 Laravel 应用程序。


