This is a similar problem to XDebug profiling in PHP - can't get output but mine is on windows and I have the full path specified (which solved his problem)
I am not getting any output even though I have enabled the profiler. Below is a copy of xdebug setup (I have indented all the options that have been uncommented.) - Please note that xdebug is working fine as Ii have been getting the standard xdebug errors. If it make any difference I am using xampp, cakephp, php 5.3
Any help would be greatly appreciated.
[XDebug] zend_extension = "C:\xampp\php\ext\php_xdebug.dll" ;xdebug.auto_trace = 0 ;xdebug.collect_includes = 1 ;xdebug.collect_params = 0 ;xdebug.collect_return = 0 ;xdebug.collect_vars = "Off" ;xdebug.default_enable = "On" ;xdebug.dump.SERVER = REMOTE_ADDR,REQUEST_METHOD ;xdebug.dump.SERVER = REMOTE_ADDR,REQUEST_METHOD ;xdebug.dump.COOKIE = "" ;xdebug.dump.FILES = "" ;xdebug.dump.GET = "" ;xdebug.dump.POST = "" ;xdebug.dump.REQUEST = "" ;xdebug.dump.SERVER = "" ;xdebug.dump.SESSION = "" ;xdebug.dump_globals = 1 ;xdebug.dump_once = 1 ;xdebug.dump_undefined = 0 ;xdebug.extended_info = 1 ;xdebug.file_link_format = "" ;xdebug.idekey = "" ;xdebug.manual_url = "http://www.php.net" ;xdebug.max_nesting_level = 100 ;xdebug.overload_var_dump = 1 xdebug.profiler_append = 0 xdebug.profiler_enable = 1 xdebug.profiler_enable_trigger = 0 xdebug.profiler_output_dir = "C:\xampp\tmp" xdebug.profiler_output_name = "xdebug_profile.%R::%u" ;xdebug.remote_autostart = 0 xdebug.remote_enable = 0 xdebug.remote_handler = "dbgp" xdebug.remote_host = "127.0.0.1" ;xdebug.remote_log = "none" ;xdebug.remote_mode = "req" xdebug.remote_port = 9000 ;xdebug.show_exception_trace = 0 ;xdebug.show_local_vars = 0 ;xdebug.show_mem_delta = 0 ;xdebug.trace_format = 0 ;xdebug.trace_options = 0 xdebug.trace_output_dir = "C:\xampp\tmp" ;xdebug.trace_output_name = "trace.%c" ;xdebug.var_display_max_children = 128 ;xdebug.var_display_max_data = 512 ;xdebug.var_display_max_depth = 3
You can also selectively enable the profiler by setting xdebug. start_with_request#trigger to trigger . You can then enable the profiler by using an environment value, a GET/POST parameter, or COOKIE variable of the name XDEBUG_TRIGGER .
You can find it in the extension window and install it. After installation, you must reload the VSCode window. Now, again run phpinfo(); method in any PHP file to check if Xdebug is enabled or not. Now click on the debug console tab and click on add configuration.
PHP Code Performance Profiling A profiler is a tool that measures how some code consumes resources at run-time. It enables to find performance bottlenecks and understand the code's behavior. Blackfire Profiler for PHP enables to profile applications during development, test, staging, and production environments.
I think it's to do with the "xdebug.profiler_output_name" setting
I copied your config, but changed the value of "xdebug.profiler_output_name" like below
xdebug.profiler_output_name = "cachegrind.out.%t-%s"
And it worked OK, but with your existing value of "xdebug.profiler_output_name" it didn't
I think it's to do with it not allowing colons in the output file name
Hope this helps/solves your problem!
Edit: Just for reference, here are the full settings that work
[XDebug] zend_extension = "C:\xampp\php\ext\php_xdebug.dll" xdebug.profiler_append = 0 xdebug.profiler_enable = 1 xdebug.profiler_enable_trigger = 0 xdebug.profiler_output_dir = "C:\xampp\tmp" xdebug.profiler_output_name = "cachegrind.out.%t-%s" xdebug.remote_enable = 0 xdebug.remote_handler = "dbgp" xdebug.remote_host = "127.0.0.1" xdebug.trace_output_dir = "C:\xampp\tmp"
Edit 2:
Since the answer is getting a lot of hits, just thought I'd explain why. In the config file in the question, the output_name
contains a :
character, which is an allowed character in a filename on Linux, but not Windows.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With