Laravel实用工具介绍 – Debugbar

本文详细介绍了如何在Laravel项目中安装和配置DebugBar,包括如何通过.env文件开启DEBUGBAR_ENABLED选项,以及如何在config/debugbar.php中进行详细的配置设置。DebugBar能够收集并显示PHP运行时的各种信息,如数据库查询、异常、日志等,帮助开发者更有效地进行调试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、官网地址

https://github.com/barryvdh/laravel-debugbar

二、安装

composer require barryvdh/laravel-debugbar

三、配置文件路径

  1. 在.env中
    # DEBUG模式开关
    APP_DEBUG=true
    # DEBUGBAR 开关
    DEBUGBAR_ENABLED=false

     

  2. config/debugbar.php
    <?php
    
    return [
    
    	/*
    	 |--------------------------------------------------------------------------
    	 | Debugbar Settings
    	 |--------------------------------------------------------------------------
    	 |
    	 | Debugbar is enabled by default, when debug is set to true in app.php.
    	 | You can override the value by setting enable to true or false instead of null.
    	 |
    	 */
    
    	'enabled' => env('DEBUGBAR_ENABLED', null),
    
    	/*
    	 |--------------------------------------------------------------------------
    	 | Storage settings
    	 |--------------------------------------------------------------------------
    	 |
    	 | DebugBar stores data for session/ajax requests.
    	 | You can disable this, so the debugbar stores data in headers/session,
    	 | but this can cause problems with large data collectors.
    	 | By default, file storage (in the storage folder) is used. Redis and PDO
    	 | can also be used. For PDO, run the package migrations first.
    	 |
    	 */
    	'storage' => [
    		'enabled' => true,
    		'driver' => 'file',
    		// redis, file, pdo, custom
    		'path' => storage_path('debugbar'),
    		// For file driver
    		'connection' => null,
    		// Leave null for default connection (Redis/PDO)
    		'provider' => ''
    		// Instance of StorageInterface for custom driver
    	],
    
    	/*
    	 |--------------------------------------------------------------------------
    	 | Vendors
    	 |--------------------------------------------------------------------------
    	 |
    	 | Vendor files are included by default, but can be set to false.
    	 | This can also be set to 'js' or 'css', to only include javascript or css vendor files.
    	 | Vendor files are for css: font-awesome (including fonts) and highlight.js (css files)
    	 | and for js: jquery and and highlight.js
    	 | So if you want syntax highlighting, set it to true.
    	 | jQuery is set to not conflict with existing jQuery scripts.
    	 |
    	 */
    
    	'include_vendors' => true,
    
    	/*
    	 |--------------------------------------------------------------------------
    	 | Capture Ajax Requests
    	 |--------------------------------------------------------------------------
    	 |
    	 | The Debugbar can capture Ajax requests and display them. If you don't want this (ie. because of errors),
    	 | you can use this option to disable sending the data through the headers.
    	 |
    	 | Optionally, you can also send ServerTiming headers on ajax requests for the Chrome DevTools.
    	 */
    
    	'capture_ajax' => true,
    	'add_ajax_timing' => false,
    
    	/*
    	 |--------------------------------------------------------------------------
    	 | Custom Error Handler for Deprecated warnings
    	 |--------------------------------------------------------------------------
    	 |
    	 | When enabled, the Debugbar shows deprecated warnings for Symfony components
    	 | in the Messages tab.
    	 |
    	 */
    	'error_handler' => false,
    
    	/*
    	 |--------------------------------------------------------------------------
    	 | Clockwork integration
    	 |--------------------------------------------------------------------------
    	 |
    	 | The Debugbar can emulate the Clockwork headers, so you can use the Chrome
    	 | Extension, without the server-side code. It uses Debugbar collectors instead.
    	 |
    	 */
    	'clockwork' => false,
    
    	/*
    	 |--------------------------------------------------------------------------
    	 | DataCollectors
    	 |--------------------------------------------------------------------------
    	 |
    	 | Enable/disable DataCollectors
    	 |
    	 */
    
    	'collectors' => [
    		'phpinfo' => true,
    		// Php version
    		'messages' => true,
    		// Messages
    		'time' => true,
    		// Time Datalogger
    		'memory' => true,
    		// Memory usage
    		'exceptions' => true,
    		// Exception displayer
    		'log' => true,
    		// Logs from Monolog (merged in messages if enabled)
    		'db' => true,
    		// Show database (PDO) queries and bindings
    		'views' => true,
    		// Views with their data
    		'route' => true,
    		// Current route information
    		'auth' => true,
    		// Display Laravel authentication status
    		'gate' => true,
    		// Display Laravel Gate checks
    		'session' => true,
    		// Display session data
    		'symfony_request' => true,
    		// Only one can be enabled..
    		'mail' => true,
    		// Catch mail messages
    		'laravel' => false,
    		// Laravel version and environment
    		'events' => false,
    		// All events fired
    		'default_request' => false,
    		// Regular or special Symfony request logger
    		'logs' => false,
    		// Add the latest log messages
    		'files' => false,
    		// Show the included files
    		'config' => false,
    		// Display config settings
    	],
    
    	/*
    	 |--------------------------------------------------------------------------
    	 | Extra options
    	 |--------------------------------------------------------------------------
    	 |
    	 | Configure some DataCollectors
    	 |
    	 */
    
    	'options' => [
    		'auth' => [
    			'show_name' => true,
    			// Also show the users name/email in the debugbar
    		],
    		'db' => [
    			'with_params' => true,
    			// Render SQL with the parameters substituted
    			'backtrace' => true,
    			// Use a backtrace to find the origin of the query in your files.
    			'timeline' => false,
    			// Add the queries to the timeline
    			'explain' => [                 // Show EXPLAIN output on queries
    				'enabled' => false,
    				'types' => ['SELECT'],
    				// ['SELECT', 'INSERT', 'UPDATE', 'DELETE']; for MySQL 5.6.3+
    			],
    			'hints' => true,
    			// Show hints for common mistakes
    		],
    		'mail' => [
    			'full_log' => false
    		],
    		'views' => [
    			'data' => false,
    			//Note: Can slow down the application, because the data can be quite large..
    		],
    		'route' => [
    			'label' => true
    			// show complete route on bar
    		],
    		'logs' => [
    			'file' => null
    		],
    	],
    
    	/*
    	 |--------------------------------------------------------------------------
    	 | Inject Debugbar in Response
    	 |--------------------------------------------------------------------------
    	 |
    	 | Usually, the debugbar is added just before </body>, by listening to the
    	 | Response after the App is done. If you disable this, you have to add them
    	 | in your template yourself. See http://phpdebugbar.com/docs/rendering.html
    	 |
    	 */
    
    	'inject' => true,
    
    	/*
    	 |--------------------------------------------------------------------------
    	 | DebugBar route prefix
    	 |--------------------------------------------------------------------------
    	 |
    	 | Sometimes you want to set route prefix to be used by DebugBar to load
    	 | its resources from. Usually the need comes from misconfigured web server or
    	 | from trying to overcome bugs like this: http://trac.nginx.org/nginx/ticket/97
    	 |
    	 */
    	'route_prefix' => '_debugbar',
    
    	/*
    	 |--------------------------------------------------------------------------
    	 | DebugBar route domain
    	 |--------------------------------------------------------------------------
    	 |
    	 | By default DebugBar route served from the same domain that request served.
    	 | To override default domain, specify it as a non-empty value.
    	 */
    	'route_domain' => null,
    ];
    

     

四、使用方式

  1. 页面调用
  2. 接口调用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值