Hello together,

as recommended, I tried to implement the ProfilerDB Interface for XDebug.

I could not test anything, because I need to know, how the class XDProfilerDB 
will be called – sorry I’m new to PDT 😊

Next should be to invoke the profiler class right after profiling session by 
providing a org.eclipse.php.internal.debug.core.xdebug.cachegrind.Tree which is 
created by org.eclipse.php.internal.debug.core.xdebug.cachegrind.Parser using a 
cachegrind file. The latter Task is already done in 
https://git.eclipse.org/r/#/c/98595/2/plugins/org.eclipse.php.phpunit/src/org/eclipse/php/phpunit/ui/launch/PHPUnitXDLauncher.java
 line 254.

Could you please point me to place, where I can start invocation of 
XDProfilerDB?

Best regards

Maik

Gesendet von Mail für Windows 10

Von: Bartlomiej Laczkowski
Gesendet: Dienstag, 6. Juni 2017 22:17
An: PDT Developers; greu...@nkey.de
Betreff: Re: Profiler for Xdebug

Hello Maik,

As Michal already said, it is very nice that you would like to contribute such 
a great feature :)! I am moving this discussion to PDT development mailing 
group as I think that other team members may also add value to this topic.

As a first step I would like to describe briefly what I think we can do to add 
another profiler based on Xdebug. First of all, the currently available 
profiler is based on Zend Debugger and all supporting code was moved from Zend 
Studio and added as a separate feature for PDT. As you have probably already 
noticed, there is no common API in PDT core plug-ins for profiling support. 
Everything is packed in new feature for Zend Profiler. As I am not too familiar 
yet with internals for Xdebug profiling in general (and differences with Zend 
Debugger profiler data) I can not say what would be needed to create a common 
API that would work for both profilers. Anyway as you already started some 
analysis I guess that you will be able to tell me what is missing or would have 
to be refactored to handle Xdebug profiler data.

As an entry point I suggest to take a look at 
org.eclipse.php.profile.core.engine and org.eclipse.php.profile.core.data 
packages and related classes/interfaces (especially ProfilerDB interface which 
I think may be reworked to serve both profilers as an entry point for profiling 
result data). If you would be able to provide Xdebug implementation for this 
interface then everything else should be a little bit straight forward. But as 
I already said it would be nice if you can investigate/suggest what need to be 
changed to create common API that would serve both profilers. If you find it 
possible to provide such implementation we can think about extracting some 
common part of API for both profilers and moving it directly to PDT core 
plug-ins.

Greetings,
Bartlomiej Laczkowski

On 6/4/2017 9:10 PM, Michal Niewrzal wrote:
Hi Maik,
It would be greate to have profiling features for xdebug! It's nice to see that 
you are trying to accomplish that :)

I added Bartlomiej to the list because he has better knowledge about profiler 
API. We will try to give you info and feedback.

Regards,
Michał Niewrzał | ZEND STUDIO
Rogue Wave Software, Inc.
Accelerating Great Code
www.roguewave.com / michal.niewr...@roguewave.com

Od: Maik Greubel <greu...@nkey.de>
Wysłane: 4 czerwca 2017 10:00:20
Do: Michal Niewrzal
Temat: Change https://git.eclipse.org/r/#/c/98587/ 
 
Hello Michal,
 
I would like to add profiling features for xdebug and wrote a Parser, which is 
able to scan cachegrind files.
 
Now I want to know, how the parsed data can be provided to profiling 
perspective elements. I just need a glue how this task can be performed. 
Because you already did this for Zend Debugger, I would like to ask you for 
assistance.
 
With best regards
 
Maik Greubel
 
Gesendet von Mail für Windows 10
 


_______________________________________________
pdt-dev mailing list
pdt-dev@eclipse.org
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://dev.eclipse.org/mailman/listinfo/pdt-dev

Reply via email to