You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by Alois Reitbauer <al...@dynatrace.com> on 2009/03/06 10:43:50 UTC

Contributing and integrating into JMeter

 

I am contacting you hoping you can help me to get in touch with the 

right people for contributing to JMeter. I am working for dynaTrace 

and we are providing a Performance Monitoring and Diagnosis solution. 

We are already integrating with a number of load testing tools and 

want to extend this to JMeter. I am contacting you as I require some 

information regarding how to extend JMeter. The major points are:

 

How can I influence script generation programmatically? I want to add 

an additional header for each web request sent, containing additional 

context information.

 

Can I access the page context during recording so I can use this 

information for script generation. I would like to extract page titles 

to use them as time names.

 

How can I develop custom reporting extensions i.e. a custom load test 

report which links to our data.

 

How can I add custom task which would allow me starting and stopping 

session recording for a JMeter test.

 

 

Any help is highly appreciated.

 

Additionally I am wondering where to host such an extension plug-in. 

We would like to make this open source and freely available. 

Additionally we want to give user the possibility to extend it. Is 

there a way to host as part of JMeter.

 

 

_________________________
Alois Reitbauer, Technology Strategist
dynaTrace software GmbH
Freistaedter Str. 313, A-4040 Linz
T            +43 (732) 908208.38
M            +43 (664) 8536534
F            +43 (732) 210100.08       
E     alois.reitbauer@dynatrace.com
Blog blog.dynatrace.com <ma...@dynatrace.com> 
Web www.dynatrace.com

>> Monitor. Diagnose. Resolve. >> 
Java/.NET business transaction performance across the application
lifecycle.

This e-mail message, including any attachments, is confidential and may
contain legally privileged information. This message is intended solely
for the use of the addressee. Use by others is prohibited. Disclosure,
copying and distribution of this information to third parties is not
permitted. If you have received this message in error, please notify us
immediately and delete it from your system. The integrity and security
of this message cannot be guaranteed and it may be subject to data
corruption, interception and unauthorized amendment, for which we accept
no liability.

 


Re: Contributing and integrating into JMeter

Posted by sebb <se...@gmail.com>.
On 06/03/2009, Alois Reitbauer <al...@dynatrace.com> wrote:
>
>
>  I am contacting you hoping you can help me to get in touch with the
>  right people for contributing to JMeter.

This is the correct mailing list for JMeter development.

>  I am working for dynaTrace
>  and we are providing a Performance Monitoring and Diagnosis solution.
>
>  We are already integrating with a number of load testing tools and
>  want to extend this to JMeter. I am contacting you as I require some
>  information regarding how to extend JMeter. The major points are:
>
>
>  How can I influence script generation programmatically? I want to add
>  an additional header for each web request sent, containing additional
>  context information.

Not sure the question makes any sense, as there is no API for
generating scripts.

However, scripts are XML (text) files, so it is easy enough to add
extra items to them, and I suppose you could extent the JMeter Proxy
recorder to generate the additional headers.

>  Can I access the page context during recording so I can use this
>  information for script generation. I would like to extract page titles
>  to use them as time names.

What do you mean by page context?

The Proxy recorder generates a test sample for each request it
processes, so there is access to that. Obviously there won't be any
page titles in the requests.

The Proxy recorder passes back the response to the browser. It does
not process the content - except when attempting https-spoofing.

However, you could check for titles in the response.

>  How can I develop custom reporting extensions i.e. a custom load test
>  report which links to our data.

There are documents describing how to write JMeter addons - have you
read those and looked at the examples?

>  How can I add custom task which would allow me starting and stopping
>  session recording for a JMeter test.

Not sure that makes sense, as JMeter does not do "session recording".

>  Any help is highly appreciated.

As well as the web-site, there is some info on the Wiki and of course
there is the Javadoc and source.

>  Additionally I am wondering where to host such an extension plug-in.
>  We would like to make this open source and freely available.

If the add-ons relate to your commercial product(s), then I suggest
you host them yourselves.

General purpose JMeter add-ons have been published on JMeter Wiki,
SourceForge, and elsewehere.

>  Additionally we want to give user the possibility to extend it. Is
>  there a way to host as part of JMeter.

That may or may not be appropriate, depending on what the code does
and what 3rd party products are needed.

It also depends on what the maintenance burden is likely to be.

---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org


Re: Contributing and integrating into JMeter

Posted by Philippe Mouawad <p....@ubik-ingenierie.com>.
Hello,
This post is old but I think it deserves an updated answer.

Since JMeter 2.7, a new interface called
org.apache.jmeter.protocol.http.proxy.SamplerCreator  is available to
customize sampler creation.

JMeter will search for implementations of this interface and use them based
on their content-type.

So you could use this to allow DynaTrace integration which would be really
an interesting feature.

Regards
Philippe M.
@philmdot




-----
Philippe M.
http://www.ubik-ingenierie.com
--
View this message in context: http://jmeter.512774.n5.nabble.com/Contributing-and-integrating-into-JMeter-tp545568p5719381.html
Sent from the JMeter - Dev mailing list archive at Nabble.com.

Re: Contributing and integrating into JMeter

Posted by sebb <se...@gmail.com>.
2009/3/9 Alois Reitbauer <al...@dynatrace.com>:
> Thank you for the response.
>
> Regarding script generation:
>
> Currently I am modifying the script's XML directly. I was just wondering
> whether there is a more elegant way to do that. Additionally looking at
> the XML I am bit confused about the structure. The HTTP Sampler and the
> HeaderManager (or better the hashtree containing it) are at the same
> hierarchy level. Processing it using a "regular" XML library might not
> preserve the order of the elements which then would mess up the scripts.
>

JMeter uses XStream.

>
> I also wanted to get rid of this manual step to perform. Using the proxy
> recorder seems to be a good approach. If I understood you correctly I
> could access all request/response content there (what I was referring to
> as context) and also add my additional header to the script. The header
> would contain a key of timer name - as it is named in most load testing
> tools - to identify the request in a more human friendly way than just
> the URL. By default the timer name would be used - that's why I need
> access to it.

Each sampler has a name/label.

> Is there a standard way to hook into the Proxy Recorder or would I have
> to develop my own one by subclassing. I am looking for the easiest and
> also less maintenance intensive way to do that.

The Proxy Recorder does not have any hooks built in.

However, if you can identify where it would be useful to have a hook,
feel free to submit an enhancement request via Bugzilla.

> Add-Ons:
>
> I had a look on how to write add-ons however this was only related to
> adding components to the UI. Possibly I just did not find the right
> place.

All add-ons have to have a UI - there's no other way to add them to
the test plan.

> Test Start/Stop Hooks:
>
> My question on session recording might have been a bit misleading. I
> meant that our tool automatically records diagnostics data during test
> execution. This means I would require some hook when a test run starts
> and ends, where I could invoke custom code.

Have a look at the TestListener (or ThreadListener) interface.

> ---------------------------------------------------------------------
> To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org


RE: Contributing and integrating into JMeter

Posted by Alois Reitbauer <al...@dynatrace.com>.
Thank you for the response.

Regarding script generation:

Currently I am modifying the script's XML directly. I was just wondering
whether there is a more elegant way to do that. Additionally looking at
the XML I am bit confused about the structure. The HTTP Sampler and the
HeaderManager (or better the hashtree containing it) are at the same
hierarchy level. Processing it using a "regular" XML library might not
preserve the order of the elements which then would mess up the scripts.


I also wanted to get rid of this manual step to perform. Using the proxy
recorder seems to be a good approach. If I understood you correctly I
could access all request/response content there (what I was referring to
as context) and also add my additional header to the script. The header
would contain a key of timer name - as it is named in most load testing
tools - to identify the request in a more human friendly way than just
the URL. By default the timer name would be used - that's why I need
access to it. 

Is there a standard way to hook into the Proxy Recorder or would I have
to develop my own one by subclassing. I am looking for the easiest and
also less maintenance intensive way to do that. 

Add-Ons:

I had a look on how to write add-ons however this was only related to
adding components to the UI. Possibly I just did not find the right
place. 

Test Start/Stop Hooks:

My question on session recording might have been a bit misleading. I
meant that our tool automatically records diagnostics data during test
execution. This means I would require some hook when a test run starts
and ends, where I could invoke custom code.


---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org