curl-loader-devel Mailing List for curl-loader - web application testing (Page 4)
Status: Alpha
Brought to you by:
coroberti
You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
|
Feb
(1) |
Mar
(7) |
Apr
(19) |
May
(25) |
Jun
(16) |
Jul
(59) |
Aug
(29) |
Sep
(18) |
Oct
(19) |
Nov
(7) |
Dec
(29) |
2008 |
Jan
(6) |
Feb
(18) |
Mar
(8) |
Apr
(27) |
May
(26) |
Jun
(5) |
Jul
(6) |
Aug
|
Sep
(9) |
Oct
(37) |
Nov
(61) |
Dec
(17) |
2009 |
Jan
(21) |
Feb
(25) |
Mar
(4) |
Apr
(2) |
May
(8) |
Jun
(15) |
Jul
(18) |
Aug
(23) |
Sep
(10) |
Oct
(16) |
Nov
(14) |
Dec
(22) |
2010 |
Jan
(23) |
Feb
(8) |
Mar
(18) |
Apr
(1) |
May
(34) |
Jun
(23) |
Jul
(11) |
Aug
(1) |
Sep
(13) |
Oct
(10) |
Nov
(2) |
Dec
(8) |
2011 |
Jan
|
Feb
(7) |
Mar
(24) |
Apr
(12) |
May
(3) |
Jun
(2) |
Jul
(2) |
Aug
|
Sep
(5) |
Oct
(20) |
Nov
(7) |
Dec
(11) |
2012 |
Jan
(12) |
Feb
(5) |
Mar
(16) |
Apr
(3) |
May
|
Jun
(5) |
Jul
(12) |
Aug
(6) |
Sep
|
Oct
|
Nov
(8) |
Dec
|
2013 |
Jan
(1) |
Feb
(3) |
Mar
(5) |
Apr
(3) |
May
(1) |
Jun
|
Jul
(1) |
Aug
(2) |
Sep
(9) |
Oct
|
Nov
(8) |
Dec
(4) |
2014 |
Jan
(4) |
Feb
|
Mar
(1) |
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
(4) |
Oct
|
Nov
(11) |
Dec
(5) |
2015 |
Jan
(1) |
Feb
|
Mar
(11) |
Apr
(3) |
May
(1) |
Jun
(1) |
Jul
(4) |
Aug
(1) |
Sep
(7) |
Oct
(4) |
Nov
(2) |
Dec
|
2016 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2022 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Eric M. <ehm...@gm...> - 2013-11-13 18:00:48
|
thanks for the quick response. I do have a route to the destination, these errors only occur after launching a second batch of 253 clients to the same destination web server. I will go back and read the documents again, i guess the below line in my configuration file (which is from one of the samples provided in the code) through me off. #TIMER_URL_COMPLETION = 500000 thanks, Eric On Wed, Nov 13, 2013 at 12:11 PM, Robert Iakobashvili <cor...@gm...>wrote: > Eric, > Nothing to deal with the timers in conf file; > please read the FAQs and README. > > You do not have route from your src-IP > to the target or there's no server running. > > ping command has an option to bind to a certain source IP-address > (I mem -I, but read man ping) and ping the destination IP or URL. > > Take care, > Robert > > On Wed, Nov 13, 2013 at 6:56 PM, Eric Mueller <ehm...@gm...> wrote: > > hello, > > > > It seems that when I change the below parameter I still receive the below > > error messages. Could you please point out what I am doing wrong here? > > > > TIMER_URL_COMPLETION = 0 > > > > TIMER_URL_COMPLETION = 10000 > > > > > > > > 19321 0 0 183 !! ERR Connection timed out after 5057 milliseconds > > 19321 0 0 184 !! ERR Connection timed out after 5057 milliseconds > > 19321 0 0 185 !! ERR Connection timed out after 5057 milliseconds > > 19321 0 0 186 !! ERR Connection timed out after 5057 milliseconds > > 19321 0 0 187 !! ERR Connection timed out after 5057 milliseconds > > 19321 0 0 188 !! ERR Connection timed out after 5057 milliseconds > > > > > > thanks, > > Eric > > > > > ------------------------------------------------------------------------------ > > DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps > > OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access > > Free app hosting. Or install the open source package on any LAMP server. > > Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native! > > > http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk > > _______________________________________________ > > curl-loader-devel mailing list > > cur...@li... > > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > > > > > > -- > Regards, > Robert Iakobashvili, Ph.D. > > Home: http://www.ghotit.com > .............................................. > Ghotit Dyslexia > Das Ist Real Writer & Reader > ............................................... > > > ------------------------------------------------------------------------------ > DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps > OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access > Free app hosting. Or install the open source package on any LAMP server. > Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native! > http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > |
From: Robert I. <cor...@gm...> - 2013-11-13 17:11:34
|
Eric, Nothing to deal with the timers in conf file; please read the FAQs and README. You do not have route from your src-IP to the target or there's no server running. ping command has an option to bind to a certain source IP-address (I mem -I, but read man ping) and ping the destination IP or URL. Take care, Robert On Wed, Nov 13, 2013 at 6:56 PM, Eric Mueller <ehm...@gm...> wrote: > hello, > > It seems that when I change the below parameter I still receive the below > error messages. Could you please point out what I am doing wrong here? > > TIMER_URL_COMPLETION = 0 > > TIMER_URL_COMPLETION = 10000 > > > > 19321 0 0 183 !! ERR Connection timed out after 5057 milliseconds > 19321 0 0 184 !! ERR Connection timed out after 5057 milliseconds > 19321 0 0 185 !! ERR Connection timed out after 5057 milliseconds > 19321 0 0 186 !! ERR Connection timed out after 5057 milliseconds > 19321 0 0 187 !! ERR Connection timed out after 5057 milliseconds > 19321 0 0 188 !! ERR Connection timed out after 5057 milliseconds > > > thanks, > Eric > > ------------------------------------------------------------------------------ > DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps > OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access > Free app hosting. Or install the open source package on any LAMP server. > Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native! > http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > -- Regards, Robert Iakobashvili, Ph.D. Home: http://www.ghotit.com .............................................. Ghotit Dyslexia Das Ist Real Writer & Reader ............................................... |
hello, It seems that when I change the below parameter I still receive the below error messages. Could you please point out what I am doing wrong here? TIMER_URL_COMPLETION = 0 TIMER_URL_COMPLETION = 10000 19321 0 0 183 !! ERR Connection timed out after 5057 milliseconds 19321 0 0 184 !! ERR Connection timed out after 5057 milliseconds 19321 0 0 185 !! ERR Connection timed out after 5057 milliseconds 19321 0 0 186 !! ERR Connection timed out after 5057 milliseconds 19321 0 0 187 !! ERR Connection timed out after 5057 milliseconds 19321 0 0 188 !! ERR Connection timed out after 5057 milliseconds thanks, Eric |
From: Robert I. <cor...@gm...> - 2013-09-16 20:52:33
|
Please, dig in the code, docs and examples. This is open-source - you have the code. Success! On Mon, Sep 16, 2013 at 11:46 PM, dt3...@ya... <dt3...@ya...> wrote: > Thank you Robert for your prompt response. Much appreciated. > > 1. Since none of the URLs that I use have anything in common (with the > exception of starting with 'http://'), I suppose I can do the following: > URL_TEMPLATE = http://%s > URL_TOKEN_FILE= <file containing the rest of URL strings one per line> > > 2. Assuming what I have stated above works, I hope you don't mind me asking > this follow up question: > Using the above scheme and assuming that CYCLES_NUM > 1, at the beginning of > 2nd CYCLE, does cur-loader continues reading the URL_TOKEN_FILE where it > left at the end of CYCLE 1 or it starts reading it from the beginning again? > > 3. Finally, I failed to understand what you meant by example added once by > Garry Fitts. > I have read the README and example url-template*conf files but did not see > anything specific that would directly addresses my question. No need to > spend your time on addressing this, if what I have stated in #1 above works. > > Regards, > DT > > > ________________________________ > From: Robert Iakobashvili <cor...@gm...> > To: curl-loader-devel <cur...@li...> > Sent: Monday, September 16, 2013 12:12 PM > Subject: Re: Question: different clients accessing/using diff URLs > > Hi, > Read about URL-template tag and example > added once by Garry Fitts. > > Robert > > On Mon, Sep 16, 2013 at 10:03 PM, dt3...@ya... > <dt3...@ya...> wrote: >> New user to curl-loader. Great tool. >> >> Question: >> Is it possible to set up a conf file whereby each client uses a >> specific/different set of URLs(=unique to that client)? >> 1. In its simplest form, I want to be able to have >> client_1 use URL1 >> client_2 ... URL2 >> ... >> client_n ... URln >> simultaneously. >> >> In this case, >> - each set of URls for a given client has only one (possibly unique) URL >> in >> it >> -n clients will be running simultaneously, >> - each client will access one URL. >> >> 2. In its most complex form, I want to be able to have >> client_1 use URL1_1 through URL1_n sequentially >> client_2 ... URL2_1 through URL2_m seq >> ... >> client_n .. URLn_1 through URLn_p seq >> simultaneously. >> >> In this case, >> - n clients will be running simultaneously, >> - each client will access its set of URL sequentially. >> >> If this is too complex to do, I'll be happy if I can do the simplest case >> (#1 mentioned above). >> >> Thanks in advance for taking time to respond to my question. >> >> Regards, >> DT >> >> >> >> ------------------------------------------------------------------------------ >> LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! >> 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, >> SharePoint >> 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack >> includes >> Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. >> >> http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk >> _______________________________________________ >> curl-loader-devel mailing list >> cur...@li... >> https://lists.sourceforge.net/lists/listinfo/curl-loader-devel >> > > > > -- > Regards, > Robert Iakobashvili, Ph.D. > > Home: http://www.ghotit.com > .............................................. > Ghotit Dyslexia > Das Ist Real Writer & Reader > ............................................... > > ------------------------------------------------------------------------------ > LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! > 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint > 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack > includes > Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. > http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > > > > ------------------------------------------------------------------------------ > LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! > 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint > 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack > includes > Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. > http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > -- Regards, Robert Iakobashvili, Ph.D. Home: http://www.ghotit.com .............................................. Ghotit Dyslexia Das Ist Real Writer & Reader ............................................... |
From: <dt3...@ya...> - 2013-09-16 20:47:03
|
Thank you Robert for your prompt response. Much appreciated. 1. Since none of the URLs that I use have anything in common (with the exception of starting with 'http://'), I suppose I can do the following: URL_TEMPLATE = http://%s URL_TOKEN_FILE= <file containing the rest of URL strings one per line> 2. Assuming what I have stated above works, I hope you don't mind me asking this follow up question: Using the above scheme and assuming that CYCLES_NUM > 1, at the beginning of 2nd CYCLE, does cur-loader continues reading the URL_TOKEN_FILE where it left at the end of CYCLE 1 or it starts reading it from the beginning again? 3. Finally, I failed to understand what you meant by example added once by Garry Fitts. I have read the README and example url-template*conf files but did not see anything specific that would directly addresses my question. No need to spend your time on addressing this, if what I have stated in #1 above works. Regards, DT ________________________________ From: Robert Iakobashvili <cor...@gm...> To: curl-loader-devel <cur...@li...> Sent: Monday, September 16, 2013 12:12 PM Subject: Re: Question: different clients accessing/using diff URLs Hi, Read about URL-template tag and example added once by Garry Fitts. Robert On Mon, Sep 16, 2013 at 10:03 PM, dt3...@ya... <dt3...@ya...> wrote: > New user to curl-loader. Great tool. > > Question: > Is it possible to set up a conf file whereby each client uses a > specific/different set of URLs(=unique to that client)? > 1. In its simplest form, I want to be able to have > client_1 use URL1 > client_2 ... URL2 > ... > client_n ... URln > simultaneously. > > In this case, > - each set of URls for a given client has only one (possibly unique) URL in > it > -n clients will be running simultaneously, > - each client will access one URL. > > 2. In its most complex form, I want to be able to have > client_1 use URL1_1 through URL1_n sequentially > client_2 ... URL2_1 through URL2_m seq > ... > client_n .. URLn_1 through URLn_p seq > simultaneously. > > In this case, > - n clients will be running simultaneously, > - each client will access its set of URL sequentially. > > If this is too complex to do, I'll be happy if I can do the simplest case > (#1 mentioned above). > > Thanks in advance for taking time to respond to my question. > > Regards, > DT > > > ------------------------------------------------------------------------------ > LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! > 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint > 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack > includes > Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. > http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > -- Regards, Robert Iakobashvili, Ph.D. Home: http://www.ghotit.com .............................................. Ghotit Dyslexia Das Ist Real Writer & Reader ............................................... ------------------------------------------------------------------------------ LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk _______________________________________________ curl-loader-devel mailing list cur...@li... https://lists.sourceforge.net/lists/listinfo/curl-loader-devel |
From: Robert I. <cor...@gm...> - 2013-09-16 19:12:49
|
Hi, Read about URL-template tag and example added once by Garry Fitts. Robert On Mon, Sep 16, 2013 at 10:03 PM, dt3...@ya... <dt3...@ya...> wrote: > New user to curl-loader. Great tool. > > Question: > Is it possible to set up a conf file whereby each client uses a > specific/different set of URLs(=unique to that client)? > 1. In its simplest form, I want to be able to have > client_1 use URL1 > client_2 ... URL2 > ... > client_n ... URln > simultaneously. > > In this case, > - each set of URls for a given client has only one (possibly unique) URL in > it > -n clients will be running simultaneously, > - each client will access one URL. > > 2. In its most complex form, I want to be able to have > client_1 use URL1_1 through URL1_n sequentially > client_2 ... URL2_1 through URL2_m seq > ... > client_n .. URLn_1 through URLn_p seq > simultaneously. > > In this case, > - n clients will be running simultaneously, > - each client will access its set of URL sequentially. > > If this is too complex to do, I'll be happy if I can do the simplest case > (#1 mentioned above). > > Thanks in advance for taking time to respond to my question. > > Regards, > DT > > > ------------------------------------------------------------------------------ > LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! > 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint > 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack > includes > Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. > http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > -- Regards, Robert Iakobashvili, Ph.D. Home: http://www.ghotit.com .............................................. Ghotit Dyslexia Das Ist Real Writer & Reader ............................................... |
From: <dt3...@ya...> - 2013-09-16 19:03:18
|
New user to curl-loader. Great tool. Question: Is it possible to set up a conf file whereby each client uses a specific/different set of URLs(=unique to that client)? 1. In its simplest form, I want to be able to have client_1 use URL1 client_2 ... URL2 ... client_n ... URln simultaneously. In this case, - each set of URls for a given client has only one (possibly unique) URL in it -n clients will be running simultaneously, - each client will access one URL. 2. In its most complex form, I want to be able to have client_1 use URL1_1 through URL1_n sequentially client_2 ... URL2_1 through URL2_m seq ... client_n .. URLn_1 through URLn_p seq simultaneously. In this case, - n clients will be running simultaneously, - each client will access its set of URL sequentially. If this is too complex to do, I'll be happy if I can do the simplest case (#1 mentioned above). Thanks in advance for taking time to respond to my question. Regards, DT |
From: G, J. <Jen...@es...> - 2013-09-05 07:25:54
|
Given below is my configuration ########### GENERAL SECTION ################################ BATCH_NAME= fetch-prob CLIENTS_NUM_MAX=500 CLIENTS_NUM_START=100 CLIENTS_RAMPUP_INC=100 INTERFACE =eth0 NETMASK = 2 IP_ADDR_MIN= 80.168.92.248 IP_ADDR_MAX= 80.168.92.248 CYCLES_NUM= 1 URLS_NUM= 2 ########### URL SECTION #################################### URL=http://www.xxxxxxx.com URL_SHORT_NAME="Home" REQUEST_TYPE=GET TIMER_URL_COMPLETION = 0 URL=http://www.xxxxx.com/live.html URL_SHORT_NAME="live" REQUEST_TYPE=GET TIMER_URL_COMPLETION = 0 And my results are , Summary stats (runs:15 secs, CAPS-average:34): H/F Req:938,1xx:0,2xx:928,3xx:0,4xx:0,5xx:0,Err:21,T-Err:0,D:574ms,D-2xx:574ms,Ti:9731503B/s,To:8915B/s H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T-Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s ================================================================================= Manual: clients:max[500],curr[21]. Inc num: [+|*]. ================================================================================= H/F Req:20,1xx:0,2xx:30,3xx:0,4xx:0,5xx:0,Err:0,T-Err:0,D:4408ms,D-2xx:4408ms,Ti:1840185B/s,To:1086B/s H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T-Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s ======================================================================================= End of the test for batch: fetch-prob ======================================================================================= Test total duration was 18 seconds and CAPS average 28: H/F Req:958,1xx:0,2xx:958,3xx:0,4xx:0,5xx:0,Err:21,T-Err:0,D:694ms,D-2xx:694ms,Ti:8416283B/s,To:7610B/s H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T-Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s My Question is 1) How do I find requests per second for each url? |
From: Fred H. <di...@gm...> - 2013-09-03 23:41:49
|
will curl-loader use share interfaces via curl_share_init()? 1. void set_share_handle(CURL* curl_handle) 2. { 3. static CURLSH* share_handle = NULL; 4. if (!share_handle) 5. { 6. share_handle = curl_share_init(); 7. curl_share_setopt(share_handle, CURLSHOPT_SHARE, CURL_LOCK_DATA_DNS); 8. } 9. curl_easy_setopt(curl_handle, CURLOPT_SHARE, share_handle); 10. curl_easy_setopt(curl_handle, CURLOPT_DNS_CACHE_TIMEOUT, 60 * 5); 11. } * * *the libcurl document says it will remove support of global dns cache:* *15.6 remove CURLOPT_DNS_USE_GLOBAL_CACHE* *Remove support for a global DNS cache. Anything global is silly, and we **already offer the share interface for the same functionality but done **"right". * 2013/9/3 Robert Iakobashvili <cor...@gm...> > Dear Shao, > I like your profiling. > > If you are not using option -t (threads) > you can opt to make a global DNS cache as in > > http://sourceforge.net/p/curl-loader/code/591/tree/trunk/curl-loader/loader.c > , > > Uncomment line 596: > > /* > If DNS resolving is necesary, global DNS cache is enough, > otherwise compile libcurl with ares (cares) library support. > Attention: DNS global cache is not thread-safe, therefore use > cares for asynchronous DNS lookups. > > curl_easy_setopt (handle, CURLOPT_DNS_USE_GLOBAL_CACHE, 1); > */ > > and remove usage of cares in the code. > Still this path will not be stable with -t on multi-core HW. > > Try your suggestion and, if it works with -t and without, > please send us your patch. > > Kind regards, > Robert > > > On Tue, Sep 3, 2013 at 12:39 PM, Shao, Shuchao <ss...@we...> wrote: > > Hi, > > > > > > > > I am using curl-loader to simulate 5000 users generating HTTP/s traffic > to a > > nginx server, find that curl-loader consumes many time on c-ares > initiation. > > Please look the attached gprof output. > > > > > > > > Via checking the libcurl source code, the function Curl_resolver_init() > do > > the c-ares initiation, and curl_easy_init() calls this function via > > Curl_open(). So we need to do the c-ares initiation every time when we > want > > to initialize a curl handler. > > > > Via checking the C-ares souce code, there are two large ‘for’ loops in > > function ares_init_options(), > > > > #define ARES_QID_TABLE_SIZE 2048 > > > > #define ARES_TIMEOUT_TABLE_SIZE 1024 > > > > for (i = 0; i < ARES_QID_TABLE_SIZE; i++) > > > > { > > > > ares__init_list_head(&(channel->queries_by_qid[i])); > > > > } > > > > for (i = 0; i < ARES_TIMEOUT_TABLE_SIZE; i++) > > > > { > > > > ares__init_list_head(&(channel->queries_by_timeout[i])); > > > > } > > > > So, even when we only send a single GET request, curl will call > > ares__init_list_head() thousands times. That’s the reason why curl-loader > > consumes so many time on c-ares initiation. > > > > > > > > My question is if we can do the c-ares initiation only once but not in > every > > curl_easy_init()? By that probably we can increase the curl-loader > > performance significantly. > > > > > > > > > > > > Some gprof output: > > > > Flat profile: > > > > > > > > Each sample counts as 0.01 seconds. > > > > % cumulative self self total > > > > time seconds seconds calls ms/call ms/call name > > > > 18.46 0.12 0.12 9186352 0.00 0.00 ares__init_list_head > > > > 12.31 0.20 0.08 1 80.00 80.00 build_url_set > > > > 10.77 0.27 0.07 81473 0.00 0.00 dprintf_formatf > > > > 9.23 0.33 0.06 3325 0.02 0.07 ares_init_options > > > > 4.62 0.36 0.03 1770 0.02 0.04 create_conn > > > > 3.08 0.38 0.02 107452 0.00 0.00 > > client_tracing_function > > > > 3.08 0.40 0.02 41568 0.00 0.00 fd_key_compare > > > > 3.08 0.42 0.02 5102 0.00 0.01 epoll_dispatch > > > > 3.08 0.44 0.02 3150 0.01 0.01 > > ares_library_initialized > > > > 3.08 0.46 0.02 2243 0.01 0.01 ares_cancel > > > > 1.54 0.47 0.01 6918787 0.00 0.00 ares__is_list_empty > > > > 1.54 0.48 0.01 450212 0.00 0.00 alloc_addbyter > > > > 1.54 0.49 0.01 227162 0.00 0.00 aresx_uztosi > > > > 1.54 0.50 0.01 107005 0.00 0.00 > > hostcache_timestamp_remove > > > > 1.54 0.51 0.01 56835 0.00 0.00 Curl_pgrsUpdate > > > > 1.54 0.52 0.01 33870 0.00 0.00 Curl_splay > > > > 1.54 0.53 0.01 16682 0.00 0.00 event_add > > > > 1.54 0.54 0.01 14075 0.00 0.00 Curl_readwrite > > > > 1.54 0.55 0.01 12624 0.00 0.00 event_active > > > > 1.54 0.56 0.01 10776 0.00 0.00 ares__get_hostent > > > > 1.54 0.57 0.01 8906 0.00 0.00 ares_expand_name > > > > 1.54 0.58 0.01 3484 0.00 0.01 init_by_resolv_conf > > > > 1.54 0.59 0.01 2062 0.00 0.00 Curl_he2ai > > > > 1.54 0.60 0.01 1663 0.01 0.02 Curl_http > > > > 1.54 0.61 0.01 823 0.01 0.01 next_load_cb_hyper > > > > 1.54 0.62 0.01 727 0.01 0.03 > > Curl_hash_clean_with_criterium > > > > 1.54 0.63 0.01 616 0.02 0.02 curl_multi_perform > > > > 1.54 0.64 0.01 > Curl_resolver_cleanup > > > > > > > > > > > > Thanks, > > > > Simon > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------------ > > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! > > Discover the easy way to master current and previous Microsoft > technologies > > and advance your career. Get an incredible 1,500+ hours of step-by-step > > tutorial videos with LearnDevNow. Subscribe today and save! > > > http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk > > _______________________________________________ > > curl-loader-devel mailing list > > cur...@li... > > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > > > > > > -- > Regards, > Robert Iakobashvili, Ph.D. > > Home: http://www.ghotit.com > .............................................. > Ghotit Dyslexia > Das Ist Real Writer & Reader > ............................................... > > > ------------------------------------------------------------------------------ > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! > Discover the easy way to master current and previous Microsoft technologies > and advance your career. Get an incredible 1,500+ hours of step-by-step > tutorial videos with LearnDevNow. Subscribe today and save! > http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > |
From: <aa...@ds...> - 2013-09-03 16:58:16
|
Hello, I'm a computer science student and i'm looking for a tool to test a web application. In particular i've to benchmark the gargage collector of the jvm loaded by tomcat. I run my tomcat server with magnolia-cms and i want to performs requests for a given time. Requests (a simple url-get) are distributed according an exponential distribution with a given rate (lambda). When a request completed with success i take the response time and i store it in a file. I've wrote a python code that can do the job (i've also post the code here: http://stackoverflow.com/q/18570619/2739328), but resulting distribution has a slower rate than lambda. I think this that create a new process is expensive because I checked the ranmod generator and it is quite good. I also wrote the same code in Java and, instead of processes, i create threads. In java things are better in terms of distribution, but sometimes i measure high response time and i can't trust these measures. So, this is my question: with curl-loader can i simulate a Poisson Process and monitor the response times? Best regards, Alberto Amadio |
From: Robert I. <cor...@gm...> - 2013-09-03 10:11:25
|
Dear Shao, I like your profiling. If you are not using option -t (threads) you can opt to make a global DNS cache as in http://sourceforge.net/p/curl-loader/code/591/tree/trunk/curl-loader/loader.c, Uncomment line 596: /* If DNS resolving is necesary, global DNS cache is enough, otherwise compile libcurl with ares (cares) library support. Attention: DNS global cache is not thread-safe, therefore use cares for asynchronous DNS lookups. curl_easy_setopt (handle, CURLOPT_DNS_USE_GLOBAL_CACHE, 1); */ and remove usage of cares in the code. Still this path will not be stable with -t on multi-core HW. Try your suggestion and, if it works with -t and without, please send us your patch. Kind regards, Robert On Tue, Sep 3, 2013 at 12:39 PM, Shao, Shuchao <ss...@we...> wrote: > Hi, > > > > I am using curl-loader to simulate 5000 users generating HTTP/s traffic to a > nginx server, find that curl-loader consumes many time on c-ares initiation. > Please look the attached gprof output. > > > > Via checking the libcurl source code, the function Curl_resolver_init() do > the c-ares initiation, and curl_easy_init() calls this function via > Curl_open(). So we need to do the c-ares initiation every time when we want > to initialize a curl handler. > > Via checking the C-ares souce code, there are two large ‘for’ loops in > function ares_init_options(), > > #define ARES_QID_TABLE_SIZE 2048 > > #define ARES_TIMEOUT_TABLE_SIZE 1024 > > for (i = 0; i < ARES_QID_TABLE_SIZE; i++) > > { > > ares__init_list_head(&(channel->queries_by_qid[i])); > > } > > for (i = 0; i < ARES_TIMEOUT_TABLE_SIZE; i++) > > { > > ares__init_list_head(&(channel->queries_by_timeout[i])); > > } > > So, even when we only send a single GET request, curl will call > ares__init_list_head() thousands times. That’s the reason why curl-loader > consumes so many time on c-ares initiation. > > > > My question is if we can do the c-ares initiation only once but not in every > curl_easy_init()? By that probably we can increase the curl-loader > performance significantly. > > > > > > Some gprof output: > > Flat profile: > > > > Each sample counts as 0.01 seconds. > > % cumulative self self total > > time seconds seconds calls ms/call ms/call name > > 18.46 0.12 0.12 9186352 0.00 0.00 ares__init_list_head > > 12.31 0.20 0.08 1 80.00 80.00 build_url_set > > 10.77 0.27 0.07 81473 0.00 0.00 dprintf_formatf > > 9.23 0.33 0.06 3325 0.02 0.07 ares_init_options > > 4.62 0.36 0.03 1770 0.02 0.04 create_conn > > 3.08 0.38 0.02 107452 0.00 0.00 > client_tracing_function > > 3.08 0.40 0.02 41568 0.00 0.00 fd_key_compare > > 3.08 0.42 0.02 5102 0.00 0.01 epoll_dispatch > > 3.08 0.44 0.02 3150 0.01 0.01 > ares_library_initialized > > 3.08 0.46 0.02 2243 0.01 0.01 ares_cancel > > 1.54 0.47 0.01 6918787 0.00 0.00 ares__is_list_empty > > 1.54 0.48 0.01 450212 0.00 0.00 alloc_addbyter > > 1.54 0.49 0.01 227162 0.00 0.00 aresx_uztosi > > 1.54 0.50 0.01 107005 0.00 0.00 > hostcache_timestamp_remove > > 1.54 0.51 0.01 56835 0.00 0.00 Curl_pgrsUpdate > > 1.54 0.52 0.01 33870 0.00 0.00 Curl_splay > > 1.54 0.53 0.01 16682 0.00 0.00 event_add > > 1.54 0.54 0.01 14075 0.00 0.00 Curl_readwrite > > 1.54 0.55 0.01 12624 0.00 0.00 event_active > > 1.54 0.56 0.01 10776 0.00 0.00 ares__get_hostent > > 1.54 0.57 0.01 8906 0.00 0.00 ares_expand_name > > 1.54 0.58 0.01 3484 0.00 0.01 init_by_resolv_conf > > 1.54 0.59 0.01 2062 0.00 0.00 Curl_he2ai > > 1.54 0.60 0.01 1663 0.01 0.02 Curl_http > > 1.54 0.61 0.01 823 0.01 0.01 next_load_cb_hyper > > 1.54 0.62 0.01 727 0.01 0.03 > Curl_hash_clean_with_criterium > > 1.54 0.63 0.01 616 0.02 0.02 curl_multi_perform > > 1.54 0.64 0.01 Curl_resolver_cleanup > > > > > > Thanks, > > Simon > > > > > > > > ------------------------------------------------------------------------------ > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! > Discover the easy way to master current and previous Microsoft technologies > and advance your career. Get an incredible 1,500+ hours of step-by-step > tutorial videos with LearnDevNow. Subscribe today and save! > http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > -- Regards, Robert Iakobashvili, Ph.D. Home: http://www.ghotit.com .............................................. Ghotit Dyslexia Das Ist Real Writer & Reader ............................................... |
From: Shao, S. <ss...@we...> - 2013-09-03 09:55:12
|
Flat profile: Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls ms/call ms/call name 18.46 0.12 0.12 9186352 0.00 0.00 ares__init_list_head 12.31 0.20 0.08 1 80.00 80.00 build_url_set 10.77 0.27 0.07 81473 0.00 0.00 dprintf_formatf 9.23 0.33 0.06 3325 0.02 0.07 ares_init_options 4.62 0.36 0.03 1770 0.02 0.04 create_conn 3.08 0.38 0.02 107452 0.00 0.00 client_tracing_function 3.08 0.40 0.02 41568 0.00 0.00 fd_key_compare 3.08 0.42 0.02 5102 0.00 0.01 epoll_dispatch 3.08 0.44 0.02 3150 0.01 0.01 ares_library_initialized 3.08 0.46 0.02 2243 0.01 0.01 ares_cancel 1.54 0.47 0.01 6918787 0.00 0.00 ares__is_list_empty 1.54 0.48 0.01 450212 0.00 0.00 alloc_addbyter 1.54 0.49 0.01 227162 0.00 0.00 aresx_uztosi 1.54 0.50 0.01 107005 0.00 0.00 hostcache_timestamp_remove 1.54 0.51 0.01 56835 0.00 0.00 Curl_pgrsUpdate 1.54 0.52 0.01 33870 0.00 0.00 Curl_splay 1.54 0.53 0.01 16682 0.00 0.00 event_add 1.54 0.54 0.01 14075 0.00 0.00 Curl_readwrite 1.54 0.55 0.01 12624 0.00 0.00 event_active 1.54 0.56 0.01 10776 0.00 0.00 ares__get_hostent 1.54 0.57 0.01 8906 0.00 0.00 ares_expand_name 1.54 0.58 0.01 3484 0.00 0.01 init_by_resolv_conf 1.54 0.59 0.01 2062 0.00 0.00 Curl_he2ai 1.54 0.60 0.01 1663 0.01 0.02 Curl_http 1.54 0.61 0.01 823 0.01 0.01 next_load_cb_hyper 1.54 0.62 0.01 727 0.01 0.03 Curl_hash_clean_with_criterium 1.54 0.63 0.01 616 0.02 0.02 curl_multi_perform 1.54 0.64 0.01 Curl_resolver_cleanup 0.77 0.65 0.01 2509558 0.00 0.00 addbyter 0.77 0.65 0.01 30662 0.00 0.00 Curl_infof 0.00 0.65 0.00 8823989 0.00 0.00 curl_strequal 0.00 0.65 0.00 880433 0.00 0.00 Curl_raw_toupper 0.00 0.65 0.00 238455 0.00 0.00 ares__read_line 0.00 0.65 0.00 147359 0.00 0.00 curlx_tvnow 0.00 0.65 0.00 121084 0.00 0.00 Curl_socket_check 0.00 0.65 0.00 111177 0.00 0.00 curlx_tvdiff 0.00 0.65 0.00 108710 0.00 0.00 get_tick_count 0.00 0.65 0.00 108267 0.00 0.00 Curl_debug 0.00 0.65 0.00 107446 0.00 0.00 scan_response 0.00 0.65 0.00 106983 0.00 0.00 Curl_raw_nequal 0.00 0.65 0.00 94114 0.00 0.00 Curl_str_key_compare 0.00 0.65 0.00 69364 0.00 0.00 curl_mvsnprintf 0.00 0.65 0.00 64791 0.00 0.00 Curl_timeleft 0.00 0.65 0.00 51082 0.00 0.00 stat_data_in_add 0.00 0.65 0.00 49979 0.00 0.00 hash_fd 0.00 0.65 0.00 48246 0.00 0.00 Curl_hash_pick 0.00 0.65 0.00 41983 0.00 0.00 first_hdrs_clear_all 0.00 0.65 0.00 40633 0.00 0.00 Curl_client_write 0.00 0.65 0.00 39234 0.00 0.00 curl_msnprintf 0.00 0.65 0.00 37439 0.00 0.01 multi_runsingle 0.00 0.65 0.00 35788 0.00 0.00 Curl_multi_canPipeline 0.00 0.65 0.00 34010 0.00 0.00 curl_easy_setopt 0.00 0.65 0.00 33676 0.00 0.00 Curl_setopt 0.00 0.65 0.00 29850 0.00 0.00 Curl_read 0.00 0.65 0.00 29767 0.00 0.00 ossl_recv 0.00 0.65 0.00 26533 0.00 0.00 Curl_raw_equal 0.00 0.65 0.00 26521 0.00 0.00 Curl_pgrsSetDownloadCounter 0.00 0.65 0.00 26356 0.00 0.00 Curl_ssl_data_pending 0.00 0.65 0.00 26326 0.00 0.00 Curl_ossl_data_pending 0.00 0.65 0.00 24637 0.00 0.00 do_nothing_write_func 0.00 0.65 0.00 20442 0.00 0.00 Curl_getinfo 0.00 0.65 0.00 20297 0.00 0.00 curl_easy_getinfo 0.00 0.65 0.00 16012 0.00 0.00 Curl_llist_insert_next 0.00 0.65 0.00 15948 0.00 0.00 first_hdrs_clear_non_2xx 0.00 0.65 0.00 15904 0.00 0.00 first_hdr_2xx 0.00 0.65 0.00 14143 0.00 0.00 Curl_speedcheck 0.00 0.65 0.00 13772 0.00 0.00 Curl_splaygetbest 0.00 0.65 0.00 13640 0.00 0.00 Curl_pgrsTime 0.00 0.65 0.00 12842 0.00 0.00 Curl_llist_remove 0.00 0.65 0.00 12529 0.00 0.00 Curl_single_getsock 0.00 0.65 0.00 12475 0.00 0.00 singlesocket 0.00 0.65 0.00 12156 0.00 0.00 min_heap_shift_up_ 0.00 0.65 0.00 11849 0.00 0.00 curlx_tvdiff_secs 0.00 0.65 0.00 11642 0.00 0.00 Curl_checkheaders 0.00 0.65 0.00 11359 0.00 0.00 event_cb_hyper 0.00 0.65 0.00 11305 0.00 0.00 curl_multi_timeout 0.00 0.65 0.00 11204 0.00 0.00 curl_multi_socket_action 0.00 0.65 0.00 11160 0.00 0.00 Curl_compareheader 0.00 0.65 0.00 11039 0.00 0.00 Curl_llist_alloc 0.00 0.65 0.00 10982 0.00 0.00 Curl_expire 0.00 0.65 0.00 10907 0.00 0.00 Curl_llist_count 0.00 0.65 0.00 10827 0.00 0.00 ares_free_hostent 0.00 0.65 0.00 10646 0.00 0.00 ares__remove_from_list 0.00 0.65 0.00 10000 0.00 0.00 ll_remember_index 0.00 0.65 0.00 9846 0.00 0.00 Curl_ossl_connect_nonblocking 0.00 0.65 0.00 9815 0.00 0.00 Curl_ssl_connect_nonblocking 0.00 0.65 0.00 9810 0.00 0.00 https_connecting 0.00 0.65 0.00 9789 0.00 0.00 ossl_connect_common 0.00 0.65 0.00 9358 0.00 0.00 ares__tvnow 0.00 0.65 0.00 9209 0.00 0.00 stat_data_out_add 0.00 0.65 0.00 9134 0.00 0.00 Curl_removeHandleFromPipeline 0.00 0.65 0.00 8929 0.00 0.00 curl_maprintf 0.00 0.65 0.00 8067 0.00 0.00 Curl_protocol_connecting 0.00 0.65 0.00 7602 0.00 0.00 Curl_easy_initHandleData 0.00 0.65 0.00 7427 0.00 0.00 socket_callback 0.00 0.65 0.00 7122 0.00 0.00 ares__init_list_node 0.00 0.65 0.00 7094 0.00 0.00 ares__insert_in_list 0.00 0.65 0.00 7034 0.00 0.00 multi_freetimeout 0.00 0.65 0.00 6685 0.00 0.00 Curl_add_buffer 0.00 0.65 0.00 6428 0.00 0.00 Curl_protocol_getsock 0.00 0.65 0.00 6390 0.00 0.00 https_getsock 0.00 0.65 0.00 6366 0.00 0.00 timer_node_comparator 0.00 0.65 0.00 5995 0.00 0.00 ares__generate_new_id 0.00 0.65 0.00 5831 0.00 0.00 ares__close_sockets 0.00 0.65 0.00 5816 0.00 0.00 ares__rc4 0.00 0.65 0.00 5650 0.00 0.00 Curl_hash_str 0.00 0.65 0.00 5449 0.00 0.00 Curl_init_userdefined 0.00 0.65 0.00 5387 0.00 0.00 ares__expand_name_for_response 0.00 0.65 0.00 5351 0.00 0.00 setstropt 0.00 0.65 0.00 5263 0.00 0.00 ares_getsock 0.00 0.65 0.00 5010 0.00 0.00 Curl_hash_add 0.00 0.65 0.00 5000 0.00 0.00 add_secondary_ip_to_device 0.00 0.65 0.00 4750 0.00 0.00 event_set 0.00 0.65 0.00 4695 0.00 0.00 epoll_add 0.00 0.65 0.00 4686 0.00 0.00 checkPendPipeline 0.00 0.65 0.00 4634 0.00 0.00 event_base_set 0.00 0.65 0.00 4478 0.00 0.01 event_del 0.00 0.65 0.00 4455 0.00 0.00 epoll_del 0.00 0.65 0.00 4429 0.00 0.00 Curl_llist_destroy 0.00 0.65 0.00 4387 0.00 0.00 _curl_easy_getinfo_err_string 0.00 0.65 0.00 4097 0.00 0.00 cl_calloc 0.00 0.65 0.00 3832 0.00 0.00 Curl_splayinsert 0.00 0.65 0.00 3706 0.00 0.00 Curl_is_connected 0.00 0.65 0.00 3620 0.00 0.06 curl_easy_init 0.00 0.65 0.00 3592 0.00 0.00 Curl_persistconninfo 0.00 0.65 0.00 3583 0.00 0.06 Curl_open 0.00 0.65 0.00 3559 0.00 0.01 Curl_resolv 0.00 0.65 0.00 3541 0.00 0.06 Curl_resolver_init 0.00 0.65 0.00 3501 0.00 0.00 Curl_verboseconnect 0.00 0.65 0.00 3494 0.00 0.00 Curl_clone_ssl_config 0.00 0.65 0.00 3478 0.00 0.00 config_lookup 0.00 0.65 0.00 3448 0.00 0.00 Curl_ssl_getsessionid 0.00 0.65 0.00 3423 0.00 0.00 ares_init 0.00 0.65 0.00 3359 0.00 0.00 asn1_output 0.00 0.65 0.00 3351 0.00 0.00 Curl_resolv_unlock 0.00 0.65 0.00 3350 0.00 0.00 Curl_add_bufferf 0.00 0.65 0.00 3347 0.00 0.00 try_config 0.00 0.65 0.00 3321 0.00 0.00 curl_mvaprintf 0.00 0.65 0.00 3315 0.00 0.00 Curl_easy_addmulti 0.00 0.65 0.00 3237 0.00 0.00 Curl_llist_move 0.00 0.65 0.00 3221 0.00 0.00 Curl_pgrsSetDownloadSize 0.00 0.65 0.00 2984 0.00 0.00 ares_process_fd 0.00 0.65 0.00 2983 0.00 0.00 curl_multi_assign 0.00 0.65 0.00 2973 0.00 0.00 Curl_poll 0.00 0.65 0.00 2958 0.00 0.01 read_udp_packets 0.00 0.65 0.00 2949 0.00 0.01 Curl_resolver_is_resolved 0.00 0.65 0.00 2911 0.00 0.01 processfds 0.00 0.65 0.00 2696 0.00 0.00 Curl_hash_delete 0.00 0.65 0.00 2680 0.00 0.00 sh_freeentry 0.00 0.65 0.00 2666 0.00 0.00 hash_element_dtor 0.00 0.65 0.00 2528 0.00 0.00 Curl_speedinit 0.00 0.65 0.00 2524 0.00 0.00 Curl_isPipeliningEnabled 0.00 0.65 0.00 2426 0.00 0.00 update_timer 0.00 0.65 0.00 2318 0.00 0.00 ares_timeout 0.00 0.65 0.00 2316 0.00 0.00 Curl_resolver_getsock 0.00 0.65 0.00 2222 0.00 0.01 Curl_resolver_cancel 0.00 0.65 0.00 2171 0.00 0.00 Curl_ssl_close 0.00 0.65 0.00 2159 0.00 0.00 Curl_ossl_close 0.00 0.65 0.00 2077 0.00 0.00 Curl_ipvalid 0.00 0.65 0.00 2075 0.00 0.01 Curl_resolver_getaddrinfo 0.00 0.65 0.00 2056 0.00 0.00 Curl_getaddrinfo 0.00 0.65 0.00 2054 0.00 0.00 Curl_cache_addr 0.00 0.65 0.00 1848 0.00 0.00 heap_push 0.00 0.65 0.00 1819 0.00 0.00 ares_search 0.00 0.65 0.00 1818 0.00 0.00 IsPipeliningPossible 0.00 0.65 0.00 1816 0.00 0.00 configure_socket 0.00 0.65 0.00 1815 0.00 0.00 update_url_from_set_or_template 0.00 0.65 0.00 1813 0.00 0.00 Curl_printable_address 0.00 0.65 0.00 1812 0.00 0.00 ares_query 0.00 0.65 0.00 1810 0.00 0.00 write_log_for_multi_creds 0.00 0.65 0.00 1809 0.00 0.00 tq_schedule_timer 0.00 0.65 0.00 1807 0.00 0.00 Curl_if_is_interface_name 0.00 0.65 0.00 1806 0.00 0.01 ares_gethostbyname 0.00 0.65 0.00 1805 0.00 0.02 ConnectionStore 0.00 0.65 0.00 1804 0.00 0.00 Curl_num_addresses 0.00 0.65 0.00 1802 0.00 0.01 qcallback 0.00 0.65 0.00 1802 0.00 0.00 query_completed_cb 0.00 0.65 0.00 1801 0.00 0.00 Curl_connected_proxy 0.00 0.65 0.00 1801 0.00 0.01 Curl_connecthost 0.00 0.65 0.00 1801 0.00 0.00 mpool_take_obj 0.00 0.65 0.00 1800 0.00 0.00 Curl_freeset 0.00 0.65 0.00 1798 0.00 0.00 curlx_nonblock 0.00 0.65 0.00 1797 0.00 0.00 setup_proxy_credentials_for_client 0.00 0.65 0.00 1796 0.00 0.01 Curl_setup_conn 0.00 0.65 0.00 1795 0.00 0.00 Curl_pgrsStartNow 0.00 0.65 0.00 1795 0.00 0.00 op_stat_call_init_count_inc 0.00 0.65 0.00 1794 0.00 0.05 Curl_connect 0.00 0.65 0.00 1793 0.00 0.00 setstropt_userpwd 0.00 0.65 0.00 1791 0.00 0.00 Curl_addrinfo_callback 0.00 0.65 0.00 1791 0.00 0.00 op_stat_update 0.00 0.65 0.00 1790 0.00 0.00 ares_send 0.00 0.65 0.00 1788 0.00 0.00 Curl_pretransfer 0.00 0.65 0.00 1785 0.00 0.00 ares_free_string 0.00 0.65 0.00 1785 0.00 0.01 search_callback 0.00 0.65 0.00 1784 0.00 0.00 Curl_resolv_timeout 0.00 0.65 0.00 1784 0.00 0.00 ares__send_query 0.00 0.65 0.00 1784 0.00 0.00 verifyconnect 0.00 0.65 0.00 1783 0.00 0.00 setup_curl_handle_init 0.00 0.65 0.00 1780 0.00 0.00 curl_easy_reset 0.00 0.65 0.00 1779 0.00 0.00 get_prob 0.00 0.65 0.00 1779 0.00 0.01 host_callback 0.00 0.65 0.00 1778 0.00 0.00 Curl_updateconninfo 0.00 0.65 0.00 1775 0.00 0.00 Curl_ssl_initsessions 0.00 0.65 0.00 1773 0.00 0.00 ares__swap_lists 0.00 0.65 0.00 1772 0.00 0.00 Curl_addHandleToPipeline 0.00 0.65 0.00 1772 0.00 0.00 current_url_completion_timeout 0.00 0.65 0.00 1771 0.00 0.00 ares_parse_a_reply 0.00 0.65 0.00 1768 0.00 0.00 ares_mkquery 0.00 0.65 0.00 1765 0.00 0.00 setup_range 0.00 0.65 0.00 1763 0.00 0.00 Curl_initinfo 0.00 0.65 0.00 1763 0.00 0.00 Curl_ossl_seed 0.00 0.65 0.00 1763 0.00 0.00 Curl_socket 0.00 0.65 0.00 1763 0.00 0.01 singleipconnect 0.00 0.65 0.00 1758 0.00 0.00 Curl_pgrsSetUploadCounter 0.00 0.65 0.00 1754 0.00 0.00 Curl_protocol_connect 0.00 0.65 0.00 1748 0.00 0.00 Curl_http_connect 0.00 0.65 0.00 1746 0.00 0.00 curl_multi_add_handle 0.00 0.65 0.00 1735 0.00 0.00 curl_multi_info_read 0.00 0.65 0.00 1732 0.00 0.00 Curl_splayremovebyaddr 0.00 0.65 0.00 1692 0.00 0.01 servercert 0.00 0.65 0.00 1684 0.00 0.00 heap_empty 0.00 0.65 0.00 1683 0.00 0.00 Curl_add_custom_headers 0.00 0.65 0.00 1682 0.00 0.00 Curl_setup_transfer 0.00 0.65 0.00 1673 0.00 0.01 Curl_base64_encode 0.00 0.65 0.00 1673 0.00 0.00 tq_empty 0.00 0.65 0.00 1671 0.00 0.00 first_hdr_req_inc 0.00 0.65 0.00 1671 0.00 0.00 stat_req_inc 0.00 0.65 0.00 1669 0.00 0.01 Curl_http_output_auth 0.00 0.65 0.00 1662 0.00 0.00 Curl_add_buffer_send 0.00 0.65 0.00 1661 0.00 0.02 Curl_do 0.00 0.65 0.00 1661 0.00 0.00 Curl_write 0.00 0.65 0.00 1660 0.00 0.00 first_hdrs_clear_non_req 0.00 0.65 0.00 1659 0.00 0.00 Curl_reset_reqproto 0.00 0.65 0.00 1657 0.00 0.00 Curl_ssl_addsessionid 0.00 0.65 0.00 1657 0.00 0.00 first_hdr_req 0.00 0.65 0.00 1655 0.00 0.00 Curl_add_buffer_init 0.00 0.65 0.00 1649 0.00 0.00 ossl_send 0.00 0.65 0.00 1648 0.00 0.00 Curl_pgrsSetUploadSize 0.00 0.65 0.00 1633 0.00 0.00 first_hdr_2xx_inc 0.00 0.65 0.00 1603 0.00 0.00 stat_appl_delay_2xx_add 0.00 0.65 0.00 1602 0.00 0.00 stat_appl_delay_add 0.00 0.65 0.00 1600 0.00 0.00 Curl_http_readwrite_headers 0.00 0.65 0.00 1593 0.00 0.00 stat_2xx_inc 0.00 0.65 0.00 1592 0.00 0.00 Curl_http_auth_act 0.00 0.65 0.00 1546 0.00 0.00 Curl_http_done 0.00 0.65 0.00 1545 0.00 0.00 Curl_retry_request 0.00 0.65 0.00 1543 0.00 0.00 Curl_pgrsDone 0.00 0.65 0.00 1541 0.00 0.00 Curl_unencode_cleanup 0.00 0.65 0.00 1539 0.00 0.00 llist_dtor 0.00 0.65 0.00 1528 0.00 0.00 Curl_posttransfer 0.00 0.65 0.00 1523 0.00 0.00 Curl_getoff_all_pipelines 0.00 0.65 0.00 1520 0.00 0.01 Curl_done 0.00 0.65 0.00 1516 0.00 0.00 load_urls_state 0.00 0.65 0.00 1515 0.00 0.00 heap_remove_node 0.00 0.65 0.00 1515 0.00 0.00 tq_cancel_timer 0.00 0.65 0.00 1512 0.00 0.00 load_next_step 0.00 0.65 0.00 1509 0.00 0.00 curlx_uztosi 0.00 0.65 0.00 1507 0.00 0.00 curl_multi_remove_handle 0.00 0.65 0.00 1507 0.00 0.00 current_url_sleeping_timeout 0.00 0.65 0.00 1507 0.00 0.00 node_reset 0.00 0.65 0.00 1502 0.00 0.00 mpool_return_obj 0.00 0.65 0.00 1498 0.00 0.00 multi_freeamsg 0.00 0.65 0.00 1418 0.00 0.00 Curl_free_ssl_config 0.00 0.65 0.00 1177 0.00 0.01 Curl_async_resolved 0.00 0.65 0.00 1157 0.00 0.00 ares__timeoffset 0.00 0.65 0.00 1142 0.00 0.00 ares__timedout 0.00 0.65 0.00 956 0.00 0.00 bind_credentials_with_client 0.00 0.65 0.00 872 0.00 0.00 tq_time_to_nearest_timer 0.00 0.65 0.00 842 0.00 0.00 Curl_ssl_kill_session 0.00 0.65 0.00 821 0.00 0.00 event_queue_remove 0.00 0.65 0.00 821 0.00 0.00 pending_active_and_waiting_clients_num 0.00 0.65 0.00 809 0.00 0.00 dispatch_expired_timers 0.00 0.65 0.00 732 0.00 0.00 Curl_ntlm_wb_cleanup 0.00 0.65 0.00 726 0.00 0.03 Curl_hostcache_prune 0.00 0.65 0.00 725 0.00 0.04 Curl_disconnect 0.00 0.65 0.00 717 0.00 0.00 Curl_closesocket 0.00 0.65 0.00 688 0.00 0.00 Curl_ossl_session_free 0.00 0.65 0.00 620 0.00 0.01 curl_multi_socket_all 0.00 0.65 0.00 515 0.00 0.00 dump_client 0.00 0.65 0.00 280 0.00 0.00 Curl_ip2addr 0.00 0.65 0.00 272 0.00 0.00 load_init_state 0.00 0.65 0.00 261 0.00 0.00 Curl_ch_connc 0.00 0.65 0.00 208 0.00 0.00 is_batch_group_leader 0.00 0.65 0.00 62 0.00 0.00 tq_dispatch_nearest_timer 0.00 0.65 0.00 60 0.00 0.00 heap_pop 0.00 0.65 0.00 60 0.00 0.00 heap_top_node 0.00 0.65 0.00 45 0.00 0.00 orderly_sched_clients 0.00 0.65 0.00 40 0.00 0.00 handle_gradual_increase_clients_num_timer 0.00 0.65 0.00 22 0.00 0.00 handle_screen_input_timer 0.00 0.65 0.00 21 0.00 0.00 screen_test_keyboard_input 0.00 0.65 0.00 19 0.00 0.00 pending_active_and_waiting_clients_num_stat 0.00 0.65 0.00 18 0.00 0.00 op_stat_point_init 0.00 0.65 0.00 12 0.00 0.00 curl_multi_setopt 0.00 0.65 0.00 11 0.00 0.00 evutil_getenv 0.00 0.65 0.00 8 0.00 0.00 alloc_client_fetch_decision_array 0.00 0.65 0.00 8 0.00 0.00 alloc_client_formed_buffers 0.00 0.65 0.00 8 0.00 0.00 alloc_init_timer_waiting_queue 0.00 0.65 0.00 8 0.00 0.00 create_response_logfiles_dirs 0.00 0.65 0.00 8 0.00 0.00 event_init 0.00 0.65 0.00 8 0.00 0.00 first_hdr_4xx 0.00 0.65 0.00 8 0.00 0.00 first_hdrs_clear_non_4xx 0.00 0.65 0.00 8 0.00 0.00 init_operational_statistics 0.00 0.65 0.00 8 0.00 0.00 print_statistics_header 0.00 0.65 0.00 7 0.00 0.00 ascii_time 0.00 0.65 0.00 7 0.00 0.00 event_base_dispatch 0.00 0.65 0.00 7 0.00 0.00 heap_init 0.00 0.65 0.00 7 0.00 0.00 mpool_init 0.00 0.65 0.00 7 0.00 0.00 tq_init 0.00 0.65 0.00 7 0.00 45.12 user_activity_hyper 0.00 0.65 0.00 6 0.00 0.00 epoll_init 0.00 0.65 0.00 6 0.00 0.00 evsignal_init 0.00 0.65 0.00 6 0.00 0.00 evutil_make_socket_nonblocking 0.00 0.65 0.00 6 0.00 0.00 evutil_socketpair 0.00 0.65 0.00 6 0.00 0.00 init_timers_and_add_initial_clients_to_load 0.00 0.65 0.00 5 0.00 0.00 Curl_mk_connc 0.00 0.65 0.00 2 0.00 0.00 Curl_hash_alloc 0.00 0.65 0.00 2 0.00 0.00 dump_snapshot_interval 0.00 0.65 0.00 2 0.00 0.00 screen_release 0.00 0.65 0.00 1 0.00 0.00 Curl_mk_dnscache 0.00 0.65 0.00 1 0.00 0.00 Curl_resolver_global_init 0.00 0.65 0.00 1 0.00 0.00 Curl_ssl_init 0.00 0.65 0.00 1 0.00 0.00 add_secondary_ip_addrs 0.00 0.65 0.00 1 0.00 0.00 batch_name_parser 0.00 0.65 0.00 1 0.00 0.00 clients_num_max_parser 0.00 0.65 0.00 1 0.00 0.00 clients_num_start_parser 0.00 0.65 0.00 1 0.00 0.00 clients_rampup_inc_parser 0.00 0.65 0.00 1 0.00 0.00 credentials_record_file_parser 0.00 0.65 0.00 1 0.00 0.00 credentials_type_parser 0.00 0.65 0.00 1 0.00 0.00 curl_global_init 0.00 0.65 0.00 1 0.00 0.00 curl_multi_init 0.00 0.65 0.00 1 0.00 0.00 cycles_num_parser 0.00 0.65 0.00 1 0.00 0.00 dump_final_statistics 0.00 0.65 0.00 1 0.00 0.00 first_hdr_4xx_inc 0.00 0.65 0.00 1 0.00 0.00 interface_parser 0.00 0.65 0.00 1 0.00 0.00 ip_addr_max_parser 0.00 0.65 0.00 1 0.00 0.00 ip_addr_min_parser 0.00 0.65 0.00 1 0.00 0.00 load_creds_from_file 0.00 0.65 0.00 1 0.00 0.00 load_error_state 0.00 0.65 0.00 1 0.00 0.00 netmask_parser 0.00 0.65 0.00 1 0.00 0.00 parse_command_line 0.00 0.65 0.00 1 0.00 80.00 parse_config_file 0.00 0.65 0.00 1 0.00 0.00 proxy_auth_method_parser 0.00 0.65 0.00 1 0.00 0.00 request_type_parser 0.00 0.65 0.00 1 0.00 0.00 screen_init 0.00 0.65 0.00 1 0.00 0.00 stat_4xx_inc 0.00 0.65 0.00 1 0.00 0.00 test_environment 0.00 0.65 0.00 1 0.00 0.00 thread_openssl_setup 0.00 0.65 0.00 1 0.00 0.00 timer_after_url_sleep_parser 0.00 0.65 0.00 1 0.00 0.00 timer_url_completion_parser 0.00 0.65 0.00 1 0.00 0.00 url_cycling_parser 0.00 0.65 0.00 1 0.00 0.00 url_template_parser 0.00 0.65 0.00 1 0.00 80.00 url_token_file_parser 0.00 0.65 0.00 1 0.00 0.00 urls_num_parser Call graph granularity: each sample hit covers 2 byte(s) for 1.54% of 0.65 seconds index % time self children called name <spontaneous> [1] 82.3 0.00 0.54 batch_function [1] 0.00 0.32 7/7 user_activity_hyper [2] 0.00 0.22 3620/3620 curl_easy_init [5] 0.00 0.00 956/956 bind_credentials_with_client [282] 0.00 0.00 8/8 print_statistics_header [310] 0.00 0.00 7/7 ascii_time [311] 0.00 0.00 7/108710 get_tick_count [119] 0.00 0.00 1/1 curl_multi_init [335] ----------------------------------------------- 0.00 0.32 7/7 batch_function [1] [2] 48.6 0.00 0.32 7 user_activity_hyper [2] 0.01 0.17 8/14 curl_multi_socket_all <cycle 1> [81] 0.01 0.13 6/14 event_del <cycle 1> [25] 0.00 0.00 13/16682 event_add [68] 0.00 0.00 6/6 init_timers_and_add_initial_clients_to_load [111] 0.00 0.00 6/11305 curl_multi_timeout [88] 0.00 0.00 4066/4097 cl_calloc [182] 0.00 0.00 14/4750 event_set [176] 0.00 0.00 12/12 curl_multi_setopt [300] 0.00 0.00 12/4634 event_base_set [179] 0.00 0.00 8/8 event_init [306] 0.00 0.00 8/8 alloc_init_timer_waiting_queue [304] 0.00 0.00 7/208 is_batch_group_leader [293] 0.00 0.00 7/7 event_base_dispatch [312] 0.00 0.00 5/108710 get_tick_count [119] 0.00 0.00 1/2 dump_snapshot_interval [322] ----------------------------------------------- [3] 48.6 0.02 0.30 14+86427 <cycle 1 as a whole> [3] 0.00 0.23 37439 multi_runsingle <cycle 1> [4] 0.00 0.03 4478 event_del <cycle 1> [25] 0.01 0.00 823 next_load_cb_hyper <cycle 1> [57] 0.00 0.01 11204 curl_multi_socket_action <cycle 1> [60] 0.01 0.00 616 curl_multi_perform <cycle 1> [61] 0.00 0.01 11359 event_cb_hyper <cycle 1> [62] 0.00 0.01 12475 singlesocket <cycle 1> [77] 0.00 0.01 620 curl_multi_socket_all <cycle 1> [81] 0.00 0.00 7427 socket_callback <cycle 1> [84] ----------------------------------------------- 15678 curl_multi_perform <cycle 1> [61] 21761 curl_multi_socket_action <cycle 1> [60] [4] 35.1 0.00 0.23 37439 multi_runsingle <cycle 1> [4] 0.00 0.09 1794/1794 Curl_connect [10] 0.00 0.04 1661/1661 Curl_do [21] 0.00 0.02 1520/1520 Curl_done [37] 0.01 0.01 14075/14075 Curl_readwrite [39] 0.00 0.02 8045/9810 https_connecting [32] 0.00 0.02 1177/1177 Curl_async_resolved [52] 0.00 0.01 1161/2949 Curl_resolver_is_resolved [38] 0.00 0.01 1754/1754 Curl_protocol_connect [78] 0.01 0.00 34068/56835 Curl_pgrsUpdate [73] 0.00 0.00 3706/3706 Curl_is_connected [89] 0.00 0.00 1806/10982 Curl_expire [93] 0.00 0.00 1788/1788 Curl_pretransfer [103] 0.00 0.00 33449/64791 Curl_timeleft [123] 0.00 0.00 8067/8067 Curl_protocol_connecting [160] 0.00 0.00 4686/4686 checkPendPipeline [178] 0.00 0.00 3237/3237 Curl_llist_move [192] 0.00 0.00 3050/9134 Curl_removeHandleFromPipeline [159] 0.00 0.00 1795/2524 Curl_isPipeliningEnabled [199] 0.00 0.00 1782/13640 Curl_pgrsTime [144] 0.00 0.00 1772/1772 Curl_addHandleToPipeline [236] 0.00 0.00 1769/35788 Curl_multi_canPipeline [128] 0.00 0.00 1567/16012 Curl_llist_insert_next [140] 0.00 0.00 1545/1545 Curl_retry_request [266] 0.00 0.00 1528/1528 Curl_posttransfer [269] 1172 singlesocket <cycle 1> [77] ----------------------------------------------- 0.00 0.22 3620/3620 batch_function [1] [5] 33.8 0.00 0.22 3620 curl_easy_init [5] 0.00 0.22 3583/3583 Curl_open [6] 0.00 0.00 1/1 curl_global_init [334] ----------------------------------------------- 0.00 0.22 3583/3583 curl_easy_init [5] [6] 33.8 0.00 0.22 3583 Curl_open [6] 0.00 0.22 3541/3541 Curl_resolver_init [7] 0.00 0.00 3985/7602 Curl_easy_initHandleData [161] 0.00 0.00 3638/5449 Curl_init_userdefined [173] ----------------------------------------------- 0.00 0.22 3541/3541 Curl_open [6] [7] 33.8 0.00 0.22 3541 Curl_resolver_init [7] 0.06 0.16 3325/3325 ares_init_options [8] 0.00 0.00 3423/3423 ares_init [188] ----------------------------------------------- 0.06 0.16 3325/3325 Curl_resolver_init [7] [8] 33.8 0.06 0.16 3325 ares_init_options [8] 0.12 0.00 9184571/9186352 ares__init_list_head [9] 0.02 0.00 3150/3150 ares_library_initialized [43] 0.01 0.01 3484/3484 init_by_resolv_conf [46] 0.00 0.00 3769/227162 aresx_uztosi [65] 0.00 0.00 4200/5995 ares__generate_new_id [169] 0.00 0.00 3520/9358 ares__tvnow [157] ----------------------------------------------- 0.00 0.00 1781/9186352 read_udp_packets [48] 0.12 0.00 9184571/9186352 ares_init_options [8] [9] 18.5 0.12 0.00 9186352 ares__init_list_head [9] ----------------------------------------------- 0.00 0.09 1794/1794 multi_runsingle <cycle 1> [4] [10] 13.1 0.00 0.09 1794 Curl_connect [10] 0.03 0.05 1770/1770 create_conn [16] 0.00 0.01 629/1796 Curl_setup_conn [29] ----------------------------------------------- 0.00 0.00 3297/81473 curl_mvaprintf [87] 0.01 0.00 8861/81473 curl_maprintf [75] 0.06 0.01 69315/81473 curl_mvsnprintf [17] [11] 13.1 0.07 0.02 81473 dprintf_formatf [11] 0.01 0.00 450212/450212 alloc_addbyter [64] 0.01 0.00 2509558/2509558 addbyter [82] ----------------------------------------------- 0.08 0.00 1/1 url_token_file_parser [14] [12] 12.3 0.08 0.00 1 build_url_set [12] ----------------------------------------------- 0.00 0.08 1/1 main [15] [13] 12.3 0.00 0.08 1 parse_config_file [13] 0.00 0.08 1/1 url_token_file_parser [14] 0.00 0.00 2/18 op_stat_point_init [299] 0.00 0.00 1/4097 cl_calloc [182] 0.00 0.00 1/1 credentials_record_file_parser [332] 0.00 0.00 1/1 credentials_type_parser [333] 0.00 0.00 1/1 proxy_auth_method_parser [346] 0.00 0.00 1/1 timer_after_url_sleep_parser [352] 0.00 0.00 1/1 timer_url_completion_parser [353] 0.00 0.00 1/1 url_cycling_parser [354] 0.00 0.00 1/1 request_type_parser [347] 0.00 0.00 1/1 url_template_parser [355] 0.00 0.00 1/1 urls_num_parser [356] 0.00 0.00 1/1 cycles_num_parser [336] 0.00 0.00 1/1 clients_rampup_inc_parser [331] 0.00 0.00 1/1 clients_num_start_parser [330] 0.00 0.00 1/1 ip_addr_max_parser [340] 0.00 0.00 1/1 ip_addr_min_parser [341] 0.00 0.00 1/1 netmask_parser [344] 0.00 0.00 1/1 interface_parser [339] 0.00 0.00 1/1 clients_num_max_parser [329] 0.00 0.00 1/1 batch_name_parser [328] ----------------------------------------------- 0.00 0.08 1/1 parse_config_file [13] [14] 12.3 0.00 0.08 1 url_token_file_parser [14] 0.08 0.00 1/1 build_url_set [12] ----------------------------------------------- <spontaneous> [15] 12.3 0.00 0.08 main [15] 0.00 0.08 1/1 parse_config_file [13] 0.00 0.00 14/4097 cl_calloc [182] 0.00 0.00 8/8 create_response_logfiles_dirs [305] 0.00 0.00 8/8 alloc_client_formed_buffers [303] 0.00 0.00 8/8 alloc_client_fetch_decision_array [302] 0.00 0.00 8/8 init_operational_statistics [309] 0.00 0.00 1/1 parse_command_line [345] 0.00 0.00 1/1 test_environment [350] 0.00 0.00 1/1 add_secondary_ip_addrs [327] 0.00 0.00 1/1 screen_init [348] 0.00 0.00 1/1 thread_openssl_setup [351] ----------------------------------------------- 0.03 0.05 1770/1770 Curl_connect [10] [16] 11.7 0.03 0.05 1770 create_conn [16] 0.00 0.03 1805/1805 ConnectionStore [22] 0.00 0.01 1752/3559 Curl_resolv [28] 0.00 0.00 102743/121084 Curl_socket_check [117] 0.00 0.00 16027/26533 Curl_raw_equal [133] 0.00 0.00 7118/11039 Curl_llist_alloc [151] 0.00 0.00 3603/147359 curlx_tvnow [116] 0.00 0.00 1818/1818 IsPipeliningPossible [207] 0.00 0.00 1809/3494 Curl_clone_ssl_config [185] 0.00 0.00 1803/7602 Curl_easy_initHandleData [161] 0.00 0.00 1799/2528 Curl_speedinit [198] 0.00 0.00 1793/35788 Curl_multi_canPipeline [128] 0.00 0.00 1784/1784 Curl_resolv_timeout [227] 0.00 0.00 1765/1765 setup_range [239] 0.00 0.00 1764/64791 Curl_timeleft [123] 0.00 0.00 1758/1758 Curl_pgrsSetUploadCounter [243] 0.00 0.00 1754/26521 Curl_pgrsSetDownloadCounter [134] ----------------------------------------------- 0.00 0.03 30412/69364 Curl_infof [18] 0.00 0.04 38952/69364 curl_msnprintf [19] [17] 11.1 0.00 0.07 69364 curl_mvsnprintf [17] 0.06 0.01 69315/81473 dprintf_formatf [11] ----------------------------------------------- 0.00 0.00 730/30662 ConnectionStore [22] 0.00 0.00 731/30662 Curl_disconnect [23] 0.00 0.00 1536/30662 Curl_done [37] 0.00 0.00 1663/30662 Curl_http_output_auth [36] 0.00 0.00 1743/30662 Curl_protocol_connect [78] 0.00 0.00 1749/30662 Curl_is_connected [89] 0.00 0.00 1771/30662 Curl_setup_conn [29] 0.00 0.01 5238/30662 ossl_connect_common [33] 0.00 0.01 5433/30662 singleipconnect [35] 0.00 0.01 10068/30662 servercert [50] [18] 6.5 0.01 0.04 30662 Curl_infof [18] 0.00 0.03 30412/69364 curl_mvsnprintf [17] 0.00 0.01 30520/108267 Curl_debug [40] ----------------------------------------------- 0.00 0.00 1670/39234 Curl_http_output_auth [36] 0.00 0.00 3344/39234 asn1_output [85] 0.00 0.02 16597/39234 Curl_base64_encode [51] 0.00 0.02 17623/39234 ssl_tls_trace [30] [19] 6.2 0.00 0.04 39234 curl_msnprintf [19] 0.00 0.04 38952/69364 curl_mvsnprintf [17] ----------------------------------------------- 0.01 0.03 1663/1663 Curl_do [21] [20] 5.9 0.01 0.03 1663 Curl_http [20] 0.00 0.02 1669/1669 Curl_http_output_auth [36] 0.00 0.00 3350/3350 Curl_add_bufferf [86] 0.00 0.00 1656/8929 curl_maprintf [75] 0.00 0.00 1662/1662 Curl_add_buffer_send [101] 0.00 0.00 9979/11642 Curl_checkheaders [149] 0.00 0.00 3344/6685 Curl_add_buffer [165] 0.00 0.00 1683/1683 Curl_add_custom_headers [247] 0.00 0.00 1682/1682 Curl_setup_transfer [248] 0.00 0.00 1659/1659 Curl_reset_reqproto [254] 0.00 0.00 1655/1655 Curl_add_buffer_init [257] 0.00 0.00 1648/1648 Curl_pgrsSetUploadSize [259] ----------------------------------------------- 0.00 0.04 1661/1661 multi_runsingle <cycle 1> [4] [21] 5.9 0.00 0.04 1661 Curl_do [21] 0.01 0.03 1663/1663 Curl_http [20] 0.00 0.00 1666/13640 Curl_pgrsTime [144] ----------------------------------------------- 0.00 0.03 1805/1805 create_conn [16] [22] 4.9 0.00 0.03 1805 ConnectionStore [22] 0.00 0.03 725/725 Curl_disconnect [23] 0.00 0.00 730/30662 Curl_infof [18] 0.00 0.00 45375/111177 curlx_tvdiff [118] 0.00 0.00 730/147359 curlx_tvnow [116] ----------------------------------------------- 0.00 0.03 725/725 ConnectionStore [22] [23] 4.7 0.00 0.03 725 Curl_disconnect [23] 0.00 0.02 726/726 Curl_hostcache_prune [45] 0.00 0.01 710/2222 Curl_resolver_cancel [27] 0.00 0.00 731/30662 Curl_infof [18] 0.00 0.00 2913/4429 Curl_llist_destroy [181] 0.00 0.00 2171/2171 Curl_ssl_close [201] 0.00 0.00 2159/2159 Curl_ossl_close [202] 0.00 0.00 737/1418 Curl_free_ssl_config [279] 0.00 0.00 732/732 Curl_ntlm_wb_cleanup [287] 0.00 0.00 729/2524 Curl_isPipeliningEnabled [199] 0.00 0.00 729/2528 Curl_speedinit [198] 0.00 0.00 717/717 Curl_closesocket [288] 0.00 0.00 709/35788 Curl_multi_canPipeline [128] ----------------------------------------------- 0.02 0.01 5102/5102 event_del <cycle 1> [25] [24] 4.6 0.02 0.01 5102 epoll_dispatch [24] 0.01 0.00 12624/12624 event_active [69] ----------------------------------------------- 4472 socket_callback <cycle 1> [84] 0.01 0.13 6/14 user_activity_hyper [2] [25] 4.6 0.00 0.03 4478 event_del <cycle 1> [25] 0.02 0.01 5102/5102 epoll_dispatch [24] 0.00 0.00 821/821 event_queue_remove [285] 11359 event_cb_hyper <cycle 1> [62] 823 next_load_cb_hyper <cycle 1> [57] ----------------------------------------------- 0.02 0.01 2243/2243 Curl_resolver_cancel [27] [26] 4.6 0.02 0.01 2243 ares_cancel [26] 0.01 0.00 6907668/6918787 ares__is_list_empty [63] 0.00 0.00 2255/5831 ares__close_sockets [170] ----------------------------------------------- 0.00 0.01 710/2222 Curl_disconnect [23] 0.00 0.02 1512/2222 Curl_done [37] [27] 4.6 0.00 0.03 2222 Curl_resolver_cancel [27] 0.02 0.01 2243/2243 ares_cancel [26] ----------------------------------------------- 0.00 0.01 1752/3559 create_conn [16] 0.00 0.02 1807/3559 singleipconnect [35] [28] 4.6 0.00 0.03 3559 Curl_resolv [28] 0.00 0.01 1788/2949 Curl_resolver_is_resolved [38] 0.00 0.01 2075/2075 Curl_resolver_getaddrinfo [56] 0.00 0.00 3562/8929 curl_maprintf [75] 0.00 0.00 3593/48246 Curl_hash_pick [47] 0.00 0.00 279/2054 Curl_cache_addr [91] 0.00 0.00 2077/2077 Curl_ipvalid [203] 0.00 0.00 2056/2056 Curl_getaddrinfo [204] ----------------------------------------------- 0.00 0.01 629/1796 Curl_connect [10] 0.00 0.02 1167/1796 Curl_async_resolved [52] [29] 3.9 0.00 0.03 1796 Curl_setup_conn [29] 0.00 0.02 1801/1801 Curl_connecthost [34] 0.00 0.00 1771/30662 Curl_infof [18] 0.00 0.00 1812/147359 curlx_tvnow [116] 0.00 0.00 1780/13640 Curl_pgrsTime [144] ----------------------------------------------- <spontaneous> [30] 3.8 0.00 0.02 ssl_tls_trace [30] 0.00 0.02 17623/39234 curl_msnprintf [19] 0.00 0.01 35121/108267 Curl_debug [40] ----------------------------------------------- 0.00 0.02 9815/9815 https_connecting [32] [31] 3.8 0.00 0.02 9815 Curl_ssl_connect_nonblocking [31] 0.00 0.02 9789/9789 ossl_connect_common [33] 0.00 0.00 9846/9846 Curl_ossl_connect_nonblocking [156] 0.00 0.00 1696/13640 Curl_pgrsTime [144] ----------------------------------------------- 0.00 0.00 1765/9810 Curl_protocol_connect [78] 0.00 0.02 8045/9810 multi_runsingle <cycle 1> [4] [32] 3.8 0.00 0.02 9810 https_connecting [32] 0.00 0.02 9815/9815 Curl_ssl_connect_nonblocking [31] ----------------------------------------------- 0.00 0.02 9789/9789 Curl_ssl_connect_nonblocking [31] [33] 3.8 0.00 0.02 9789 ossl_connect_common [33] 0.00 0.02 1692/1692 servercert [50] 0.00 0.01 5238/30662 Curl_infof [18] 0.00 0.00 11602/64791 Curl_timeleft [123] 0.00 0.00 8032/121084 Curl_socket_check [117] 0.00 0.00 3448/3448 Curl_ssl_getsessionid [187] 0.00 0.00 1763/1763 Curl_ossl_seed [241] 0.00 0.00 1657/1657 Curl_ssl_addsessionid [255] ----------------------------------------------- 0.00 0.02 1801/1801 Curl_setup_conn [29] [34] 3.6 0.00 0.02 1801 Curl_connecthost [34] 0.00 0.02 1763/1763 singleipconnect [35] 0.00 0.00 1804/1804 Curl_num_addresses [215] 0.00 0.00 1787/64791 Curl_timeleft [123] 0.00 0.00 1767/147359 curlx_tvnow [116] ----------------------------------------------- 0.00 0.02 1763/1763 Curl_connecthost [34] [35] 3.6 0.00 0.02 1763 singleipconnect [35] 0.00 0.02 1807/3559 Curl_resolv [28] 0.00 0.01 5433/30662 Curl_infof [18] 0.00 0.00 1811/56835 Curl_pgrsUpdate [73] 0.00 0.00 1805/10982 Curl_expire [93] 0.00 0.00 1814/147359 curlx_tvnow [116] 0.00 0.00 1813/1813 Curl_printable_address [210] 0.00 0.00 1812/121084 Curl_socket_check [117] 0.00 0.00 1807/1807 Curl_if_is_interface_name [214] 0.00 0.00 1805/3592 Curl_persistconninfo [183] 0.00 0.00 1805/3351 Curl_resolv_unlock [189] 0.00 0.00 1798/1798 curlx_nonblock [219] 0.00 0.00 1763/1763 Curl_socket [242] ----------------------------------------------- 0.00 0.02 1669/1669 Curl_http [20] [36] 3.5 0.00 0.02 1669 Curl_http_output_auth [36] 0.00 0.02 1673/1673 Curl_base64_encode [51] 0.00 0.00 1663/30662 Curl_infof [18] 0.00 0.00 1670/39234 curl_msnprintf [19] 0.00 0.00 1660/8929 curl_maprintf [75] 0.00 0.00 1663/11642 Curl_checkheaders [149] ----------------------------------------------- 0.00 0.02 1520/1520 multi_runsingle <cycle 1> [4] [37] 3.5 0.00 0.02 1520 Curl_done [37] 0.00 0.02 1512/2222 Curl_resolver_cancel [27] 0.00 0.00 1536/30662 Curl_infof [18] 0.00 0.00 1543/1543 Curl_pgrsDone [102] 0.00 0.00 1546/3351 Curl_resolv_unlock [189] 0.00 0.00 1546/1546 Curl_http_done [265] 0.00 0.00 1533/9134 Curl_removeHandleFromPipeline [159] 0.00 0.00 1523/1523 Curl_getoff_all_pipelines [270] ----------------------------------------------- 0.00 0.01 1161/2949 multi_runsingle <cycle 1> [4] 0.00 0.01 1788/2949 Curl_resolv [28] [38] 3.2 0.00 0.02 2949 Curl_resolver_is_resolved [38] 0.00 0.02 2911/2911 processfds [49] 0.00 0.00 1791/1791 Curl_addrinfo_callback [92] 0.00 0.00 2950/5263 ares_getsock [110] 0.00 0.00 2984/2984 ares_process_fd [194] 0.00 0.00 2973/2973 Curl_poll [195] ----------------------------------------------- 0.01 0.01 14075/14075 multi_runsingle <cycle 1> [4] [39] 3.1 0.01 0.01 14075 Curl_readwrite [39] 0.00 0.00 24963/108267 Curl_debug [40] 0.00 0.00 1600/1600 Curl_http_readwrite_headers [90] 0.00 0.00 15636/56835 Curl_pgrsUpdate [73] 0.00 0.00 29850/29850 Curl_read [131] 0.00 0.00 26356/26356 Curl_ssl_data_pending [135] 0.00 0.00 26326/26326 Curl_ossl_data_pending [136] 0.00 0.00 24767/26521 Curl_pgrsSetDownloadCounter [134] 0.00 0.00 24686/40633 Curl_client_write [127] 0.00 0.00 14143/14143 Curl_speedcheck [143] 0.00 0.00 14131/147359 curlx_tvnow [116] 0.00 0.00 12459/64791 Curl_timeleft [123] 0.00 0.00 4768/121084 Curl_socket_check [117] 0.00 0.00 3199/13640 Curl_pgrsTime [144] ----------------------------------------------- 0.00 0.00 1682/108267 Curl_add_buffer_send [101] 0.00 0.00 15981/108267 Curl_http_readwrite_headers [90] 0.00 0.00 24963/108267 Curl_readwrite [39] 0.00 0.01 30520/108267 Curl_infof [18] 0.00 0.01 35121/108267 ssl_tls_trace [30] [40] 3.1 0.00 0.02 108267 Curl_debug [40] 0.02 0.00 107452/107452 client_tracing_function [41] ----------------------------------------------- 0.02 0.00 107452/107452 Curl_debug [40] [41] 3.1 0.02 0.00 107452 client_tracing_function [41] 0.00 0.00 107831/108710 get_tick_count [119] 0.00 0.00 107446/107446 scan_response [120] 0.00 0.00 51082/51082 stat_data_in_add [124] 0.00 0.00 41983/41983 first_hdrs_clear_all [126] 0.00 0.00 15948/15948 first_hdrs_clear_non_2xx [141] 0.00 0.00 15904/15904 first_hdr_2xx [142] 0.00 0.00 15883/20297 curl_easy_getinfo [139] 0.00 0.00 9209/9209 stat_data_out_add [158] 0.00 0.00 1671/1671 first_hdr_req_inc [250] 0.00 0.00 1671/1671 stat_req_inc [251] 0.00 0.00 1660/1660 first_hdrs_clear_non_req [253] 0.00 0.00 1657/1657 first_hdr_req [256] 0.00 0.00 1633/1633 first_hdr_2xx_inc [260] 0.00 0.00 1603/1603 stat_appl_delay_2xx_add [261] 0.00 0.00 1602/1602 stat_appl_delay_add [262] 0.00 0.00 1593/1593 stat_2xx_inc [263] 0.00 0.00 8/8 first_hdr_4xx [307] 0.00 0.00 8/8 first_hdrs_clear_non_4xx [308] 0.00 0.00 1/1 first_hdr_4xx_inc [338] 0.00 0.00 1/1 stat_4xx_inc [349] ----------------------------------------------- 0.00 0.00 9/41568 Curl_hash_add [112] 0.00 0.00 2721/41568 Curl_hash_delete [95] 0.02 0.00 38838/41568 Curl_hash_pick [47] [42] 3.1 0.02 0.00 41568 fd_key_compare [42] ----------------------------------------------- 0.02 0.00 3150/3150 ares_init_options [8] [43] 3.1 0.02 0.00 3150 ares_library_initialized [43] ----------------------------------------------- 0.01 0.01 727/727 Curl_hostcache_prune [45] [44] 3.1 0.01 0.01 727 Curl_hash_clean_with_criterium [44] 0.01 0.00 107005/107005 hostcache_timestamp_remove [66] ----------------------------------------------- 0.00 0.02 726/726 Curl_disconnect [23] [45] 3.1 0.00 0.02 726 Curl_hostcache_prune [45] 0.01 0.01 727/727 Curl_hash_clean_with_criterium [44] ----------------------------------------------- 0.01 0.01 3484/3484 ares_init_options [8] [46] 3.0 0.01 0.01 3484 init_by_resolv_conf [46] 0.00 0.01 226151/238455 ares__read_line [74] 0.00 0.00 3478/3478 config_lookup [186] 0.00 0.00 3347/3347 try_config [190] ----------------------------------------------- 0.00 0.00 2941/48246 curl_multi_assign [96] 0.00 0.00 3593/48246 Curl_resolv [28] 0.00 0.01 12961/48246 curl_multi_socket_all <cycle 1> [81] 0.00 0.01 14160/48246 curl_multi_socket_action <cycle 1> [60] 0.00 0.01 14591/48246 singlesocket <cycle 1> [77] [47] 2.9 0.00 0.02 48246 Curl_hash_pick [47] 0.02 0.00 38838/41568 fd_key_compare [42] 0.00 0.00 54170/94114 Curl_str_key_compare [122] 0.00 0.00 44361/49979 hash_fd [125] 0.00 0.00 3580/5650 Curl_hash_str [172] ----------------------------------------------- 0.00 0.02 2958/2958 processfds [49] [48] 2.9 0.00 0.02 2958 read_udp_packets [48] 0.00 0.01 1802/1802 qcallback [53] 0.00 0.00 3629/8906 ares_expand_name [70] 0.00 0.00 1781/9186352 ares__init_list_head [9] 0.00 0.00 3573/6918787 ares__is_list_empty [63] 0.00 0.00 7059/10646 ares__remove_from_list [154] 0.00 0.00 3576/5831 ares__close_sockets [170] 0.00 0.00 1773/1773 ares__swap_lists [235] ----------------------------------------------- 0.00 0.02 2911/2911 Curl_resolver_is_resolved [38] [49] 2.9 0.00 0.02 2911 processfds [49] 0.00 0.02 2958/2958 read_udp_packets [48] 0.00 0.00 2907/9358 ares__tvnow [157] ----------------------------------------------- 0.00 0.02 1692/1692 ossl_connect_common [33] [50] 2.7 0.00 0.02 1692 servercert [50] 0.00 0.01 10068/30662 Curl_infof [18] 0.00 0.00 3359/3359 asn1_output [85] ----------------------------------------------- 0.00 0.02 1673/1673 Curl_http_output_auth [36] [51] 2.6 0.00 0.02 1673 Curl_base64_encode [51] 0.00 0.02 16597/39234 curl_msnprintf [19] ----------------------------------------------- 0.00 0.02 1177/1177 multi_runsingle <cycle 1> [4] [52] 2.6 0.00 0.02 1177 Curl_async_resolved [52] 0.00 0.02 1167/1796 Curl_setup_conn [29] ----------------------------------------------- 0.00 0.01 1802/1802 read_udp_packets [48] [53] 2.2 0.00 0.01 1802 qcallback [53] 0.00 0.01 1785/1785 search_callback [54] ----------------------------------------------- 0.00 0.01 1785/1785 qcallback [53] [54] 2.2 0.00 0.01 1785 search_callback [54] 0.00 0.01 1779/1779 host_callback [55] ----------------------------------------------- 0.00 0.01 1779/1779 search_callback [54] [55] 2.2 0.00 0.01 1779 host_callback [55] 0.00 0.01 1802/1802 query_completed_cb [76] 0.00 0.01 1771/1771 ares_parse_a_reply [80] 0.00 0.00 1799/10827 ares_free_hostent [153] ----------------------------------------------- 0.00 0.01 2075/2075 Curl_resolv [28] [56] 1.8 0.00 0.01 2075 Curl_resolver_getaddrinfo [56] 0.00 0.01 1806/1806 ares_gethostbyname [59] 0.00 0.00 280/280 Curl_ip2addr [94] ----------------------------------------------- 823 event_del <cycle 1> [25] [57] 1.7 0.01 0.00 823 next_load_cb_hyper <cycle 1> [57] 0.00 0.00 822/16682 event_add [68] 0.00 0.00 1512/1512 load_next_step [99] 0.00 0.00 809/809 dispatch_expired_timers [107] 0.00 0.00 1735/1735 curl_multi_info_read [245] 0.00 0.00 1492/20297 curl_easy_getinfo [139] 0.00 0.00 1483/4387 _curl_easy_getinfo_err_string [881] 0.00 0.00 822/108710 get_tick_count [119] 0.00 0.00 821/821 pending_active_and_waiting_clients_num [286] 0.00 0.00 201/208 is_batch_group_leader [293] 0.00 0.00 1/2 dump_snapshot_interval [322] 612 curl_multi_socket_all <cycle 1> [81] ----------------------------------------------- 0.01 0.00 10776/10776 ares_gethostbyname [59] [58] 1.6 0.01 0.00 10776 ares__get_hostent [58] 0.00 0.00 12304/238455 ares__read_line [74] ----------------------------------------------- 0.00 0.01 1806/1806 Curl_resolver_getaddrinfo [56] [59] 1.6 0.00 0.01 1806 ares_gethostbyname [59] 0.01 0.00 10776/... [truncated message content] |
From: Robert I. <cor...@gm...> - 2013-08-06 11:49:40
|
Hi Henrik, Not all functionality of curl is matched. What you wish to be done, requires some patching. It's open-source, and, believe me, very friendly C-written code. Dig into it and expand for your purpose. Kind regards, Robert On Tue, Aug 6, 2013 at 2:24 PM, Henrik Aagaard Sørensen <BU...@tm...> wrote: > I’ve posted a question on Stack Overflow: > > http://stackoverflow.com/questions/18074252/curl-loader-syntax-for-json-directory > > > > However, I thought I might as well post it here on the official mailinglist. > > > > I'm trying to load test an API with curl-loader. I'm able to call the API > via standard curl like this: > > curl -X POST http://localhost/api -H "Authorization: MY-ID" -d '{"resource": > "ba424b79-5b38-4a34-85d7-c194f72cb145", "records": [{"a": 1, "b": "xyzxyz"}, > {"a": 2, "b": "zzzzzz"}], "key": "a"}' > > This works, however, when trying to create a conf-file for curl-loader, I'm > not able to create the JSON-part correctly. > > I've tried with the following: > > HEADER="Authorization: MY-ID" > > MULTIPART_FORM_DATA='{"resource": "ba424b79-5b38-4a34-85d7-c194f72cb145", > "records": [{"a": 1, "b": "xyzxyz"}, {"a": 2, "b": "zzzzzz"}], "primary": > "a"}' > > It fails with: > > multipart_form_data_parser - error: no '=' sign in multipart_form_data. > > But when I try to split it up like this: > > HEADER="Authorization: MY-ID" > > MULTIPART_FORM_DATA='resource="ba424b79-5b38-4a34-85d7-c194f72cb145"' > > MULTIPART_FORM_DATA='records=[{"a": 1, "b": "xyzxyz"}, {"a": 2, "b": > "zzzzzz"}]' > > MULTIPART_FORM_DATA='primary="a"' > > it does run, but my values are not updated as if I just run curl itself. The > log just says: > > # 1375774696564 Tue Aug 6 09:38:16 2013 > > # msec_offset cycle_no url_no client_no (ip) indic info > > 0 0 0 1 !! CONT 100 > > 0 0 0 3 !! CONT 100 > > 0 0 0 2 !! CONT 100 > > 45 0 0 3 !! ERCL 400 HTTP/1.1 400 Bad Request > > 89 0 0 1 !! ERCL 400 HTTP/1.1 400 Bad Request > > 90 0 0 2 !! ERCL 400 HTTP/1.1 400 Bad Request > > > > > ------------------------------------------------------------------------------ > Get your SQL database under version control now! > Version control is standard for application code, but databases havent > caught up. So what steps can you take to put your SQL databases under > version control? Why should you start doing it? Read more to find out. > http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > -- Regards, Robert Iakobashvili, Ph.D. Home: http://www.ghotit.com .............................................. Ghotit Dyslexia Das Ist Real Writer & Reader ............................................... |
From: Henrik A. S. <BU...@tm...> - 2013-08-06 11:43:42
|
I've posted a question on Stack Overflow: http://stackoverflow.com/questions/18074252/curl-loader-syntax-for-json-directory However, I thought I might as well post it here on the official mailinglist. I'm trying to load test an API with curl-loader. I'm able to call the API via standard curl like this: curl -X POST http://localhost/api -H "Authorization: MY-ID" -d '{"resource": "ba424b79-5b38-4a34-85d7-c194f72cb145", "records": [{"a": 1, "b": "xyzxyz"}, {"a": 2, "b": "zzzzzz"}], "key": "a"}' This works, however, when trying to create a conf-file for curl-loader, I'm not able to create the JSON-part correctly. I've tried with the following: HEADER="Authorization: MY-ID" MULTIPART_FORM_DATA='{"resource": "ba424b79-5b38-4a34-85d7-c194f72cb145", "records": [{"a": 1, "b": "xyzxyz"}, {"a": 2, "b": "zzzzzz"}], "primary": "a"}' It fails with: multipart_form_data_parser - error: no '=' sign in multipart_form_data. But when I try to split it up like this: HEADER="Authorization: MY-ID" MULTIPART_FORM_DATA='resource="ba424b79-5b38-4a34-85d7-c194f72cb145"' MULTIPART_FORM_DATA='records=[{"a": 1, "b": "xyzxyz"}, {"a": 2, "b": "zzzzzz"}]' MULTIPART_FORM_DATA='primary="a"' it does run, but my values are not updated as if I just run curl itself. The log just says: # 1375774696564 Tue Aug 6 09:38:16 2013 # msec_offset cycle_no url_no client_no (ip) indic info 0 0 0 1 !! CONT 100 0 0 0 3 !! CONT 100 0 0 0 2 !! CONT 100 45 0 0 3 !! ERCL 400 HTTP/1.1 400 Bad Request 89 0 0 1 !! ERCL 400 HTTP/1.1 400 Bad Request 90 0 0 2 !! ERCL 400 HTTP/1.1 400 Bad Request |
From: Nagashree M <mna...@gm...> - 2013-07-16 12:25:22
|
The ftps.txt (output from curl-loader) file seems a lot confusing. How do we measure through put. Can some one guide me in these lines. Here is the sample output: RunTime(sec),Appl,Clients,Req,1xx,2xx,3xx,4xx,5xx,Err,T-Err,D,D-2xx,Ti,To 0, H/F , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 0, H/F/S , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 3, H/F , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 3, H/F/S , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 6, H/F , 10, 73, 0, 63, 10, 0, 0, 9, 0, 1017, 1037, 1906544, 985 6, H/F/S , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 9, H/F , 10, 27, 0, 27, 0, 0, 0, 0, 0, 1391, 1391, 8356700, 855 9, H/F/S , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 12, H/F , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10711549, 0 12, H/F/S , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 15, H/F , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9058033, 0 15, H/F/S , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 18, H/F , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11273484, 0 18, H/F/S , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 21, H/F , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13058480, 0 21, H/F/S , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 24, H/F , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13299085, 0 24, H/F/S , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 27, H/F , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13314650, 0 27, H/F/S , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 30, H/F , 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13258944, 0 |
From: Johny B. <lyd...@gm...> - 2013-05-19 15:35:13
|
Hello, I want to do POST + send body content from file (SOAP request). When i set: REQUEST_TYPE=POST UPLOAD_FILE=./myfile.txt Then curl-loader changes request type to PUT, and doesnt do POST with contents of file. How is possible to do such requests in curl-loader? Thanks in advance, J. |
From: Vincent Li <vin...@gm...> - 2013-04-03 21:14:13
|
I added the create_ip_addrs(bctx, 1, 0) in dump_snapshot_interval_and_advance_total_statistics in statistics.c if (stop_loading) { dump_final_statistics (bctx->cctx_array); screen_release (); create_ip_addrs (bctx, 1, 0); exit (1); } that appears does the job to remove secondary ip addresses, but I am not sure if it is the optimal way to do it. Vincent On Wed, Apr 3, 2013 at 12:33 PM, Vincent Li <vin...@gm...> wrote: > Hi, > > I am using curl-loader to test web services, I like the feature that > curl-loader creating secondary ip addresses, is it possible to remove > these ip addresses after each curl-loader run automatically because it > may create ip conflict in my environment when I run curl-loader from > another box using same secondary ip addresses. > > I am still rough with C and I have an incomplete patch idea to remove > secondary ip addresses when SIGINT received from keyboard, the idea is > to add a bool parameter to create_ip_addrs and pass it on to > add_secondary_ip_addrs and add_secondary_ip_to_device, when the bool > parameter is 0 (false), then remove secondary ip addresses, but I am > not sure where to call create_ip_addrs properly with the bool > parameter false with the batch contexts info, etc. could anyone shed > on light on how to do this? > > here is my half baked patch against curl-loader-0.56: > > diff --git a/ip_secondary.c b/ip_secondary.c > index ffd1e2d..7def472 100644 > --- a/ip_secondary.c > +++ b/ip_secondary.c > @@ -147,7 +147,7 @@ typedef struct > > ********************************************************************************/ > int add_secondary_ip_to_device(const char*const device, > const char*const ip_slash_mask, > - char* scope) > + char* scope, bool add) > { > request req; > > @@ -168,7 +168,7 @@ int add_secondary_ip_to_device(const char*const device, > > req.n.nlmsg_len = NLMSG_LENGTH(sizeof(struct ifaddrmsg)); > req.n.nlmsg_flags = NLM_F_REQUEST; > - req.n.nlmsg_type = RTM_NEWADDR; > + req.n.nlmsg_type = add ? RTM_NEWADDR : RTM_DELADDR; > req.ifa.ifa_family = AF_UNSPEC; > > get_prefix(&lcl, (char*)ip_slash_mask, req.ifa.ifa_family); > @@ -891,7 +891,7 @@ int add_secondary_ip_addrs (const char*const interface, > int addr_number, > const char**const addresses, > int netmask, > - char* addr_scope) > + char* addr_scope, bool add) > { > char ip_slash_mask_buffer[64]; > int j = 0, rval_set_ip = -1; > @@ -907,7 +907,7 @@ int add_secondary_ip_addrs (const char*const interface, > > rval_set_ip = add_secondary_ip_to_device (interface, > ip_slash_mask_buffer, > - addr_scope); > + addr_scope, add); > > switch (rval_set_ip) > { > diff --git a/loader.c b/loader.c > index eb852b7..cfbfc27 100644 > --- a/loader.c > +++ b/loader.c > @@ -69,7 +69,7 @@ static size_t do_nothing_write_func (void *ptr, > size_t nmemb, > void *stream); > > -static int create_ip_addrs (batch_context* bctx, int bctx_num); > +static int create_ip_addrs (batch_context* bctx, int bctx_num, bool add); > > static void* batch_function (void *batch_data); > static int initial_handles_init (struct client_context*const cdata); > @@ -179,7 +179,7 @@ main (int argc, char *argv []) > Add ip-addresses to the loading network interfaces > and keep them in batch-contexts. > */ > - if (create_ip_addrs (bc_arr, batches_num) == -1) > + if (create_ip_addrs (bc_arr, batches_num, 1) == -1) > { > fprintf (stderr, "%s - error: create_ip_addrs () failed. \n", > __func__); > return -1; > @@ -1717,7 +1717,7 @@ static void free_url (url_context* url, int > clients_max) > * bctx_num - number of batch contexts in <bctx_array> > * Return Code/Output - None > > *******************************************************************************/ > -static int create_ip_addrs (batch_context* bctx_array, int bctx_num) > +static int create_ip_addrs (batch_context* bctx_array, int bctx_num, bool > add) > { > int batch_index, client_index; /* Batch and client indexes */ > char*** ip_addresses =0; > @@ -1777,7 +1777,7 @@ static int create_ip_addrs (batch_context* > bctx_array, int bctx_num) > bctx->client_num_max, > (const char** const) > ip_addresses[batch_index], > bctx->cidr_netmask, > - bctx->scope) == -1) > + bctx->scope, add) == -1) > { > fprintf (stderr, > "%s - error: add_secondary_ip_addrs() - failed for > batch = %d\n", > diff --git a/loader.h b/loader.h > index 47c2130..eac70aa 100644 > --- a/loader.h > +++ b/loader.h > @@ -44,6 +44,7 @@ struct client_context; > struct batch_context; > struct stat_point; > struct timer_node; > +typedef _Bool bool; > > /*--------- Common loading functions ----------------*/ > > @@ -120,7 +121,7 @@ int response_logfiles_set (struct client_context* > cctx, struct url_context* url) > > ********************************************************************************/ > int add_secondary_ip_to_device (const char*const device, > const char*const ip_slash_mask, > - char* scope); > + char* scope, bool add); > > > /******************************************************************************* > * Function name - add_secondary_ip_addrs > @@ -138,7 +139,7 @@ int add_secondary_ip_addrs (const char*const interface, > int addr_number, > const char**const addresses, > int netmask, > - char* scope); > + char* scope, bool add); > > > /******************************************************************************* > * Function name - parse_config_file > > > Thanks in advance! > |
From: Robert I. <cor...@gm...> - 2013-04-03 20:31:19
|
thanks, Vincent. On Wed, Apr 3, 2013 at 10:33 PM, Vincent Li <vin...@gm...> wrote: > Hi, > > I am using curl-loader to test web services, I like the feature that > curl-loader creating secondary ip addresses, is it possible to remove > these ip addresses after each curl-loader run automatically because it > may create ip conflict in my environment when I run curl-loader from > another box using same secondary ip addresses. > > I am still rough with C and I have an incomplete patch idea to remove > secondary ip addresses when SIGINT received from keyboard, the idea is > to add a bool parameter to create_ip_addrs and pass it on to > add_secondary_ip_addrs and add_secondary_ip_to_device, when the bool > parameter is 0 (false), then remove secondary ip addresses, but I am > not sure where to call create_ip_addrs properly with the bool > parameter false with the batch contexts info, etc. could anyone shed > on light on how to do this? > > here is my half baked patch against curl-loader-0.56: > > diff --git a/ip_secondary.c b/ip_secondary.c > index ffd1e2d..7def472 100644 > --- a/ip_secondary.c > +++ b/ip_secondary.c > @@ -147,7 +147,7 @@ typedef struct > ********************************************************************************/ > int add_secondary_ip_to_device(const char*const device, > const char*const ip_slash_mask, > - char* scope) > + char* scope, bool add) > { > request req; > > @@ -168,7 +168,7 @@ int add_secondary_ip_to_device(const char*const device, > > req.n.nlmsg_len = NLMSG_LENGTH(sizeof(struct ifaddrmsg)); > req.n.nlmsg_flags = NLM_F_REQUEST; > - req.n.nlmsg_type = RTM_NEWADDR; > + req.n.nlmsg_type = add ? RTM_NEWADDR : RTM_DELADDR; > req.ifa.ifa_family = AF_UNSPEC; > > get_prefix(&lcl, (char*)ip_slash_mask, req.ifa.ifa_family); > @@ -891,7 +891,7 @@ int add_secondary_ip_addrs (const char*const interface, > int addr_number, > const char**const addresses, > int netmask, > - char* addr_scope) > + char* addr_scope, bool add) > { > char ip_slash_mask_buffer[64]; > int j = 0, rval_set_ip = -1; > @@ -907,7 +907,7 @@ int add_secondary_ip_addrs (const char*const interface, > > rval_set_ip = add_secondary_ip_to_device (interface, > ip_slash_mask_buffer, > - addr_scope); > + addr_scope, add); > > switch (rval_set_ip) > { > diff --git a/loader.c b/loader.c > index eb852b7..cfbfc27 100644 > --- a/loader.c > +++ b/loader.c > @@ -69,7 +69,7 @@ static size_t do_nothing_write_func (void *ptr, > size_t nmemb, > void *stream); > > -static int create_ip_addrs (batch_context* bctx, int bctx_num); > +static int create_ip_addrs (batch_context* bctx, int bctx_num, bool add); > > static void* batch_function (void *batch_data); > static int initial_handles_init (struct client_context*const cdata); > @@ -179,7 +179,7 @@ main (int argc, char *argv []) > Add ip-addresses to the loading network interfaces > and keep them in batch-contexts. > */ > - if (create_ip_addrs (bc_arr, batches_num) == -1) > + if (create_ip_addrs (bc_arr, batches_num, 1) == -1) > { > fprintf (stderr, "%s - error: create_ip_addrs () failed. \n", __func__); > return -1; > @@ -1717,7 +1717,7 @@ static void free_url (url_context* url, int clients_max) > * bctx_num - number of batch contexts in <bctx_array> > * Return Code/Output - None > *******************************************************************************/ > -static int create_ip_addrs (batch_context* bctx_array, int bctx_num) > +static int create_ip_addrs (batch_context* bctx_array, int bctx_num, bool add) > { > int batch_index, client_index; /* Batch and client indexes */ > char*** ip_addresses =0; > @@ -1777,7 +1777,7 @@ static int create_ip_addrs (batch_context* > bctx_array, int bctx_num) > bctx->client_num_max, > (const char** const) > ip_addresses[batch_index], > bctx->cidr_netmask, > - bctx->scope) == -1) > + bctx->scope, add) == -1) > { > fprintf (stderr, > "%s - error: add_secondary_ip_addrs() - failed for > batch = %d\n", > diff --git a/loader.h b/loader.h > index 47c2130..eac70aa 100644 > --- a/loader.h > +++ b/loader.h > @@ -44,6 +44,7 @@ struct client_context; > struct batch_context; > struct stat_point; > struct timer_node; > +typedef _Bool bool; > > /*--------- Common loading functions ----------------*/ > > @@ -120,7 +121,7 @@ int response_logfiles_set (struct client_context* > cctx, struct url_context* url) > ********************************************************************************/ > int add_secondary_ip_to_device (const char*const device, > const char*const ip_slash_mask, > - char* scope); > + char* scope, bool add); > > /******************************************************************************* > * Function name - add_secondary_ip_addrs > @@ -138,7 +139,7 @@ int add_secondary_ip_addrs (const char*const interface, > int addr_number, > const char**const addresses, > int netmask, > - char* scope); > + char* scope, bool add); > > /******************************************************************************* > * Function name - parse_config_file > > > Thanks in advance! > > ------------------------------------------------------------------------------ > Minimize network downtime and maximize team effectiveness. > Reduce network management and security costs.Learn how to hire > the most talented Cisco Certified professionals. Visit the > Employer Resources Portal > http://www.cisco.com/web/learning/employer_resources/index.html > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel -- Regards, Robert Iakobashvili, Ph.D. Home: http://www.ghotit.com .............................................. Ghotit Dyslexia Das Ist Real Writer & Reader ............................................... |
From: Vincent Li <vin...@gm...> - 2013-04-03 19:33:18
|
Hi, I am using curl-loader to test web services, I like the feature that curl-loader creating secondary ip addresses, is it possible to remove these ip addresses after each curl-loader run automatically because it may create ip conflict in my environment when I run curl-loader from another box using same secondary ip addresses. I am still rough with C and I have an incomplete patch idea to remove secondary ip addresses when SIGINT received from keyboard, the idea is to add a bool parameter to create_ip_addrs and pass it on to add_secondary_ip_addrs and add_secondary_ip_to_device, when the bool parameter is 0 (false), then remove secondary ip addresses, but I am not sure where to call create_ip_addrs properly with the bool parameter false with the batch contexts info, etc. could anyone shed on light on how to do this? here is my half baked patch against curl-loader-0.56: diff --git a/ip_secondary.c b/ip_secondary.c index ffd1e2d..7def472 100644 --- a/ip_secondary.c +++ b/ip_secondary.c @@ -147,7 +147,7 @@ typedef struct ********************************************************************************/ int add_secondary_ip_to_device(const char*const device, const char*const ip_slash_mask, - char* scope) + char* scope, bool add) { request req; @@ -168,7 +168,7 @@ int add_secondary_ip_to_device(const char*const device, req.n.nlmsg_len = NLMSG_LENGTH(sizeof(struct ifaddrmsg)); req.n.nlmsg_flags = NLM_F_REQUEST; - req.n.nlmsg_type = RTM_NEWADDR; + req.n.nlmsg_type = add ? RTM_NEWADDR : RTM_DELADDR; req.ifa.ifa_family = AF_UNSPEC; get_prefix(&lcl, (char*)ip_slash_mask, req.ifa.ifa_family); @@ -891,7 +891,7 @@ int add_secondary_ip_addrs (const char*const interface, int addr_number, const char**const addresses, int netmask, - char* addr_scope) + char* addr_scope, bool add) { char ip_slash_mask_buffer[64]; int j = 0, rval_set_ip = -1; @@ -907,7 +907,7 @@ int add_secondary_ip_addrs (const char*const interface, rval_set_ip = add_secondary_ip_to_device (interface, ip_slash_mask_buffer, - addr_scope); + addr_scope, add); switch (rval_set_ip) { diff --git a/loader.c b/loader.c index eb852b7..cfbfc27 100644 --- a/loader.c +++ b/loader.c @@ -69,7 +69,7 @@ static size_t do_nothing_write_func (void *ptr, size_t nmemb, void *stream); -static int create_ip_addrs (batch_context* bctx, int bctx_num); +static int create_ip_addrs (batch_context* bctx, int bctx_num, bool add); static void* batch_function (void *batch_data); static int initial_handles_init (struct client_context*const cdata); @@ -179,7 +179,7 @@ main (int argc, char *argv []) Add ip-addresses to the loading network interfaces and keep them in batch-contexts. */ - if (create_ip_addrs (bc_arr, batches_num) == -1) + if (create_ip_addrs (bc_arr, batches_num, 1) == -1) { fprintf (stderr, "%s - error: create_ip_addrs () failed. \n", __func__); return -1; @@ -1717,7 +1717,7 @@ static void free_url (url_context* url, int clients_max) * bctx_num - number of batch contexts in <bctx_array> * Return Code/Output - None *******************************************************************************/ -static int create_ip_addrs (batch_context* bctx_array, int bctx_num) +static int create_ip_addrs (batch_context* bctx_array, int bctx_num, bool add) { int batch_index, client_index; /* Batch and client indexes */ char*** ip_addresses =0; @@ -1777,7 +1777,7 @@ static int create_ip_addrs (batch_context* bctx_array, int bctx_num) bctx->client_num_max, (const char** const) ip_addresses[batch_index], bctx->cidr_netmask, - bctx->scope) == -1) + bctx->scope, add) == -1) { fprintf (stderr, "%s - error: add_secondary_ip_addrs() - failed for batch = %d\n", diff --git a/loader.h b/loader.h index 47c2130..eac70aa 100644 --- a/loader.h +++ b/loader.h @@ -44,6 +44,7 @@ struct client_context; struct batch_context; struct stat_point; struct timer_node; +typedef _Bool bool; /*--------- Common loading functions ----------------*/ @@ -120,7 +121,7 @@ int response_logfiles_set (struct client_context* cctx, struct url_context* url) ********************************************************************************/ int add_secondary_ip_to_device (const char*const device, const char*const ip_slash_mask, - char* scope); + char* scope, bool add); /******************************************************************************* * Function name - add_secondary_ip_addrs @@ -138,7 +139,7 @@ int add_secondary_ip_addrs (const char*const interface, int addr_number, const char**const addresses, int netmask, - char* scope); + char* scope, bool add); /******************************************************************************* * Function name - parse_config_file Thanks in advance! |
From: Robert I. <cor...@gm...> - 2013-03-22 10:53:19
|
You need to set URL for every element. On Fri, Mar 22, 2013 at 12:43 PM, Анна Рубанская <ann...@gm...> wrote: > Hi! > > I try to load web-page. If I load this from browser, I see more than one > request(for images, for example). But when I start curl-loader and take > tcp-dump, I see only requests to this page(without requests for images, > etc.). Does anybody know if curl-loader supports full load of the page with > all internal requests and how to set it. > > > This is my config: > ########### GENERAL SECTION ################################ > > BATCH_NAME= my_test > CLIENTS_NUM_MAX=100 > CLIENTS_NUM_START=5 > CLIENTS_RAMPUP_INC=5 > INTERFACE=eth0 > NETMASK=24 > IP_ADDR_MIN=*correct_ip* > IP_ADDR_MAX=*correct_ip* > #IP_SHARED_NUM=1 > CYCLES_NUM= -1 > URLS_NUM= 1 > > ########### URL SECTION #################################### > > URL=http://..../index.html > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP = 1000 > > Regards, > Anna Somova > ------------------------------------------------------------------------------ > Everyone hates slow websites. So do we. > Make your web apps faster with AppDynamics > Download AppDynamics Lite for free today: > http://p.sf.net/sfu/appdyn_d2d_mar > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > -- Regards, Robert Iakobashvili, Ph.D. Home: http://www.ghotit.com .............................................. Ghotit Dyslexia Das Ist Real Writer & Reader ............................................... |
From: Анна Р. <ann...@gm...> - 2013-03-22 10:43:10
|
Hi! I try to load web-page. If I load this from browser, I see more than one request(for images, for example). But when I start curl-loader and take tcp-dump, I see only requests to this page(without requests for images, etc.). Does anybody know if curl-loader supports full load of the page with all internal requests and how to set it. This is my config: ########### GENERAL SECTION ################################ BATCH_NAME= my_test CLIENTS_NUM_MAX=100 CLIENTS_NUM_START=5 CLIENTS_RAMPUP_INC=5 INTERFACE=eth0 NETMASK=24 IP_ADDR_MIN=*correct_ip* IP_ADDR_MAX=*correct_ip* #IP_SHARED_NUM=1 CYCLES_NUM= -1 URLS_NUM= 1 ########### URL SECTION #################################### URL=http://..../index.html REQUEST_TYPE=GET TIMER_AFTER_URL_SLEEP = 1000 Regards, Anna Somova |
From: Eric M. <ehm...@gm...> - 2013-03-06 20:03:19
|
thanks Robert. I must have missed that somehow. my apologies. Eric On Wed, Mar 6, 2013 at 2:49 PM, Robert Iakobashvili <cor...@gm...>wrote: > >From the FAQs: > http://curl-loader.sourceforge.net/doc/faq.html#tag-description > > Tags of the section URLs: > > HEADER - is assisting to customize/add/over-write HTTP/FTP headers. If a > header already exits by default, the custom header over-writes it. > USER_AGENT tag is for User-Agent header only, whereas by HEADER may be > added or over-written any header, including User-Agent. To prevent from > sending "Expect: 100-continue", please, pass HEADER="Expect: " > Look at the example ./conf-examples/custom_hdrs.conf. > > > On Wed, Mar 6, 2013 at 9:38 PM, Eric Mueller <ehm...@gm...> wrote: > >> >> >> On Wed, Mar 6, 2013 at 2:37 PM, Eric Mueller <ehm...@gm...> wrote: >> >>> Is it possible to change any of the HTTP header fields or add any HTTP >>> fields to the curl-loader configuration? >>> >>> I would like to add the X-Forwarder field to the HTTP requests to >>> simulate a CDN. >>> >>> thanks, >>> Eric >>> >> >> >> >> ------------------------------------------------------------------------------ >> Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester >> Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the >> endpoint security space. For insight on selecting the right partner to >> tackle endpoint security challenges, access the full report. >> http://p.sf.net/sfu/symantec-dev2dev >> _______________________________________________ >> curl-loader-devel mailing list >> cur...@li... >> https://lists.sourceforge.net/lists/listinfo/curl-loader-devel >> >> > > > -- > Regards, > Robert Iakobashvili, Ph.D. > > Home: http://www.ghotit.com > .............................................. > Ghotit Dyslexia > Das Ist Real Writer & Reader > ............................................... > > ------------------------------------------------------------------------------ > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > > |
From: Robert I. <cor...@gm...> - 2013-03-06 19:50:27
|
>From the FAQs: http://curl-loader.sourceforge.net/doc/faq.html#tag-description Tags of the section URLs: HEADER - is assisting to customize/add/over-write HTTP/FTP headers. If a header already exits by default, the custom header over-writes it. USER_AGENT tag is for User-Agent header only, whereas by HEADER may be added or over-written any header, including User-Agent. To prevent from sending "Expect: 100-continue", please, pass HEADER="Expect: " Look at the example ./conf-examples/custom_hdrs.conf. On Wed, Mar 6, 2013 at 9:38 PM, Eric Mueller <ehm...@gm...> wrote: > > > On Wed, Mar 6, 2013 at 2:37 PM, Eric Mueller <ehm...@gm...> wrote: > >> Is it possible to change any of the HTTP header fields or add any HTTP >> fields to the curl-loader configuration? >> >> I would like to add the X-Forwarder field to the HTTP requests to >> simulate a CDN. >> >> thanks, >> Eric >> > > > > ------------------------------------------------------------------------------ > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev > _______________________________________________ > curl-loader-devel mailing list > cur...@li... > https://lists.sourceforge.net/lists/listinfo/curl-loader-devel > > -- Regards, Robert Iakobashvili, Ph.D. Home: http://www.ghotit.com .............................................. Ghotit Dyslexia Das Ist Real Writer & Reader ............................................... |
From: Eric M. <ehm...@gm...> - 2013-03-06 19:38:51
|
On Wed, Mar 6, 2013 at 2:37 PM, Eric Mueller <ehm...@gm...> wrote: > Is it possible to change any of the HTTP header fields or add any HTTP > fields to the curl-loader configuration? > > I would like to add the X-Forwarder field to the HTTP requests to simulate > a CDN. > > thanks, > Eric > |
From: Ritesh R. <rr...@pa...> - 2013-02-22 18:17:02
|
Hi Curl-loader experts, I am new to curl-loader , so I am not able to figure how to specify client key and cert with curl-loader when trying to use HTTPS and client cuth. The corresponding command in curl I use is `curl -i -k --cert test.crt:test --key test.key -F submit=Upload https://10.1.1.11/upload' I am not able to figure out which option to specify in config file. Thx Ritesh |