Blondeau Vincent wrote:

 

 

De : moose-dev-bounces@iam.unibe.ch [mailto:moose-dev-bounces@iam.unibe.ch] De la part de Tudor Girba
Envoyé : vendredi 25 avril 2014 06:19
À : Moose-related development
Objet : [Moose-dev] Re: Dynamic analysis

 

Hi,

Hi,

 

Dynamix is indeed just a model. I used it with a couple of hand made profilers for some funny situations but not by instrumenting Java with Agents.

 

What are the funny situations in which you have used this ? Because I am trying to find features to Moose what the others software can’t do.

 

I also think that the Agent solution is the most robust way to go.

I think I will take this solution. I found the sources of Java wiretap (https://www.iam.unibe.ch/scg/svn_repos/Students/fierz/profiler/) and it seems to use an agent.

 

Would you be interested in having this solution open-source?

 

For now the solution will be not open source, but I will discuss this with my hierarchy.

"The Magic Cauldron" by Eric S. Raymond can be an interesting read for business type - particularly "The Inverse Commons" part [1] where it says:
* "Part of the answer lies in the fact that using software does not decrease its value. Indeed, widespread use of open-source software tends to increase its value, as users fold in their own fixes and features (code patches). In this inverse commons, the grass grows taller when it's grazed upon."
* "
Sitting on the patch gains nothing. Indeed, it incurs a future cost--the effort involved in re-merging the patch into the source base in each new release. So the payoff from this choice is actually negative (and multiplied by the rapid release tempo characteristic of open-source projects).  Alternatively, the contributor gains by passing maintainance overhead of the patch to the source-code owners and the rest of the project group. He also gains because others will improve on his work in the future. Finally, because he won't have to maintain the patch himself, he will be able to afford more time on other and large customizations to suit his needs. "
[1]
http://oreilly.com/catalog/cathbazpaper/chapter/ch05.html#AUTOID-1554
cheers -ben

 

However, if you only need the execution of SQL statements, you might also consider retrieving this information from log files. For example, if you have an application server, you can typically use a log4j configuration to output the SQL executions. Then you can parse the log file and create a report for that. You might not even need Dynamix.

 

Ok. But the execution of SQL statements is just an example. And if I use log4j I have to modify the source code and I can’t do it, can’t I ?

 

Cheers,

Vincent

 

Doru

 

 

On Thu, Apr 24, 2014 at 6:19 PM, Blondeau Vincent <vincent.blondeau@worldline.com> wrote:

Currently I am doing an internship in Atos (a French multinational IT services corporation). They have many software projects (mainly in Java) and they want to audit them.
The goal of my internship is to evaluate how Moose can be used to do this audit (performance, architecture, etc...) and be automatized to execute checking rules.

A part of the audit is to see how a program interact with a database by counting the requests that are done.
I thinks that part can't be deducted easily from the static model, so I thought to use Dynamix.

I have already the static model of the program imported by VerveineJ in Moose and I want to instantiate the Dynamix part.

So I search how I can do this. I can't modify the source code but I can add an agent on the JVM to see the calls made. That is why Java Wiretap seemed interesting.



Vincent

-----Message d'origine-----
De : moose-dev-bounces@iam.unibe.ch [mailto:moose-dev-bounces@iam.unibe.ch] De la part de Alexandre Bergel

Envoyé : jeudi 24 avril 2014 17:44

À : Moose-related development
Objet : [Moose-dev] Re: Dynamic analysis

Can you tell us a bit what are the dynamic analysis you would like to do?
Most of the time, a simple aspectJ aspect is good enough to gather the data. You then need to dump your data into a .mse file.
The MSE file has to be fit with the Pharo model you have. And since you probably want to have the structure of the code, you probably need a second .mse file, obtained from VerveineJ.

I am interested in that work.

Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.



On Apr 24, 2014, at 12:34 PM, Blondeau Vincent <vincent.blondeau@worldline.com> wrote:

>
> -----Message d'origine-----
> De : moose-dev-bounces@iam.unibe.ch [mailto:moose-dev-bounces@iam.unibe.ch] De la part de Alexandre Bergel
> Envoyé : jeudi 24 avril 2014 16:58
> À : Moose-related development
> Objet : [Moose-dev] Re: Dynamic analysis
>
> In Java?
>
> Yes
>
> I think there was an implementation made by Adrian Kuhn, called Fame.
> I am not sure what the status of this work is. But, at the last resort, you can always create it yourself, manually. MSE is designed to be easily generated.
>
> Ok. With Fame, I can generate, by writing Java, any MSE, can't I ?
>
> By the way, I found the code of an Eclipse plugin written by Julien Fierz that creates the MSE model containing the Dynamix entites. It's named Java Wiretap (http://www.moosetechnology.org/tools/retired/jwiretap).
> What is the status of this project ? Is it open source ?
> On the moose website it is tagged as retired...
>
> Thanks,
> Vincent
>
> Alexandre
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
> On Apr 24, 2014, at 11:49 AM, Blondeau Vincent <vincent.blondeau@worldline.com> wrote:
>
>> Ok but how can I create the MSE file ? Is tools existing ?
>>
>> Vincent
>>
>> -----Message d'origine-----
>> De : moose-dev-bounces@iam.unibe.ch [mailto:moose-dev-bounces@iam.unibe.ch] De la part de Alexandre Bergel
>> Envoyé : jeudi 24 avril 2014 16:38
>> À : Moose-related development
>> Objet : [Moose-dev] Re: Dynamic analysis
>>
>> I guess you can simply use a MSE file to import your model into moose.
>>
>> Alexandre
>> --
>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>> Alexandre Bergel  http://www.bergel.eu
>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>
>>
>>
>> On Apr 24, 2014, at 11:08 AM, Blondeau Vincent <vincent.blondeau@worldline.com> wrote:
>>
>>> Hi everyone,
>>>
>>> I would like to do an dynamic analysis on a java software to count, for example, the number of SQL calls.
>>>
>>> I see that in Moose there is a package that I can use for this, Dynamix-Core, but only model is defined and there is no importer.
>>>
>>> Is there an available importer to use this feature ?
>>>
>>> Cheers,
>>>
>>> Vincent
>>>
>>>
>>>