Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 2.x > vBulletin 2.x Full Releases
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
vbMicroStats: page load time, queries, GZIP and PHP version Details »»
vbMicroStats: page load time, queries, GZIP and PHP version
Version: 1.00, by TECK TECK is offline
Developer Last Online: Nov 2023 Show Printable Version Email this Page

Version: 2.2.x Rating:
Released: 03-06-2002 Last Update: Never Installs: 594
 
No support by the author.

[high]Looking for VB3 version? Is here.[/high]

This hack will add at the bottom of each vBulletin(powered) page the following stats:

- load time of specified page in microseconds (with custom no. of digits to show)
- number of queries executed
- server GZIP library compression status
- vBulletin DEBUG mode
- PHP version
- PHP percent page usage
- MySQL percent page usage
- Server Load
[high]This is not only estethic, it will also help you troubleshoot any wierd queries that you have in your scripts.
The hack is template based so you can edit it the way you want in few seconds.[/high]
NOTE: From users experiences, this hack will work only with PHP 4.0.6 or higher. Let me know if it works with a lower PHP version.

THE FIX FOR VB2.3.0 IS HERE.

HACK UPDATES
Version 2.1
------------------------------------
Changes:
- added Server Load

NOTE: I spoked with Kevin 'tubedogg' from vBulletin Support team and he explained to me that not all the servers are configured to support the [high]@exec("uptime")[/high].
Contact your host for more details and ask them about this issue.
For a full explanation of your 3 server load values, read more here.

*If you want to have the stats viewable only by admins, read this post.

Version 2.0
------------------------------------
Changes:
- added vBulletin DEBUG Mode
- removed the Details link
- cleaned a little the code to match VB2.2.6
- better explanations into the install file.

Version 1.7
------------------------------------
[high]VB2.2.5:[/high]
Minor change in admin/db_mysql.php. Read more here on how to update your hack.
Minor change in forum/global.php. Read more here on how to update your hack.

Changes:
- corrected negative values on certain servers.

Version 1.6
------------------------------------
Changes:
- PHP version and GZIP library status viewable only to admin.
- added a link to Detailed Stats View (generated by vBulletin), for that specific page. Only admins can view that link.

To see how it looks a Detailed View, click here.

Version 1.5
------------------------------------
Added:
- GZIP library status is now related to your vBulletion options.
- GZIP library compression level.

Version 1.4
------------------------------------
Bugs corrected:
- GZIP library status not displayed properly on certain servers.

Version 1.3
------------------------------------
Bugs corrected:
- vbPortal display code in modules

The hack is template based now.
All you have to do is call it with the {getmicrostats} string, anywhere you want (for example in footer).
You also have the choice to install it as template based or coded directly into your functions.php file.

Version 1.2
------------------------------------
Added the PHP and MySQL page percentage.
(Addon by Chen 'FireFly' Avinadav)

Version 1.1
------------------------------------
vB.org decided to add this hack to their board.

Bugs corrected:
- incorrect time load
- incorrect query count


You like this hack? Please click on the [high]Install[/high] button.
To download the latest version of this hack, click below:

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #197  
Old 03-31-2002, 03:26 AM
FWC's Avatar
FWC FWC is offline
 
Join Date: Oct 2001
Location: Ontario, CA
Posts: 821
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by Viruseater
here's the results of the query.

Page generated in 1,017,549,010.701014 seconds (100.00% PHP - 0.00% MySQL) with 21 queries.
You hacked the wrong file. You will get that result if you modify admin/global.php instead of the global.php in the forums root. I know, I found out the hard way.
Reply With Quote
  #198  
Old 03-31-2002, 03:46 AM
Viruseater Viruseater is offline
 
Join Date: Mar 2002
Location: Newport Beach, CA
Posts: 51
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

That sounds like exactly what I likely did.

Doesn't make sense to me that there'd be duplicate file names like that, but I'm no coder, so I'll keep my mouth shut prior to making a fool of myself.

I found another error, so I wiped the entire board, and am setting it up again, so I'll hack the right file now

thanks for the replies!
Reply With Quote
  #199  
Old 03-31-2002, 04:06 AM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Viruseater, check your code. you get those values only because vB is looking for [high]$pagestarttime[/high] and it can't find it.
if you check all the steps carefully, you will see your mistake.

regards,
nakkid.
Reply With Quote
  #200  
Old 03-31-2002, 12:09 PM
Jawelin Jawelin is offline
 
Join Date: Nov 2001
Posts: 557
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by nakkid
strange indeed. so you get those values only with the microtime from php.net? as a .php file? or part of vBulletin?
Nakkid, yes, I used VBulletin files, double checked your v1.7 hack
statements against my modified files. Last, as said, I put the
getmicrotime() function in admin/functions.php exactly
as it's described on www.php.net

This is exactly what I did: I used two files index.php, called
index224_plain.php and index224_hackd.php and uploaded to
forum home dir, respectively the original 2.2.4 version and the
hacked one.

Both with some mods:
PHP Code:
// just after
require('./global.php');
// put
$custompagebeginmicrotime = (float)getmicrotime();


// Then, in 4-5 different points of the two files (same points), i put these two rows:
$bulkloadmicrotime number_format(getmicrotime()-$custompagebeginmicrotime,7);
echo 
"<font size=1 face='arial'>Bulk load microtime [qrs=$query_count] (xxxx breakpoint identification) = <b>$bulkloadmicrotime</b></font><br>"
Besides, in global.php with an
PHP Code:
echo "<h1>Pagestarttime Global reset</h1>" 
just after the $pagestarttime=microtime() at the beginning
of the page, I ensured that script is called only ONCE by index.php...

Note: last two days, for some unexplained reason, my server
disabled GZip and any other encoding ... I hope it's a short time event...

Code:
PLAIN index.php
---------------
Bulk load microtime [qrs=6] (start time)                                        = 0.0000969
Bulk load microtime [qrs=13] (after processing main SELECT group)               = 0.0069339
Bulk load microtime [qrs=19] (after processing most SELECTs and some templates) = 0.0228729
Bulk load microtime [qrs=19] (before processing main template)                  = 0.0863299
{ getmicrostats }=  Page (81.17% PHP + 18.83% MySQL) with 19 queries generated in 0.1926436
Bulk load microtime [qrs=20] (after processing all templates)                   = 0.7915579


HACKED index.php
----------------
Bulk load microtime [qrs=6]  (start time)                                       = 0.0000930
Bulk load microtime [qrs=26] (after processing main SELECT group)               = 0.5236299
Bulk load microtime [qrs=33] (after processing most SELECTs and some templates) = 0.5396340
Bulk load microtime [qrs=38] (before processing main template)                  = 0.6587319
{ getmicrostats }=  Page (20.74% PHP + 79.26% MySQL) with 38 queries generated in 0.7506131
Bulk load microtime [qrs=39] (after processing all templates)                   = 2.1796360
As you can see, the results pointed out most of the page time is
taken by the forumhome template processing. Much more than all
the SELECTs (38 with hacks, 19 with the plain version). And the
{ getmicrostats } is evalued BEFORE the
template is loaded and processed. Infact that value is almost
similar to mine as computed immediately before the eval
("forumhome template").

Of course, the doubled number of queries in the hacked version
reversed also the percentage ratio of php vs. sql ...

Interesting, isn't it ?

Hope I was able to explain myself
:stupid:

Thanks.
Reply With Quote
  #201  
Old 03-31-2002, 09:59 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

i dont know what to say Jawelin. anyone else have the same problem? so far everyone is really happy with 1.7...
Reply With Quote
  #202  
Old 04-01-2002, 02:48 AM
Viruseater Viruseater is offline
 
Join Date: Mar 2002
Location: Newport Beach, CA
Posts: 51
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Got it worked out Nakkid, thanks.

I've got 1.6 running on the current board, which I just put into production. www.clanservers.net/forum and I'll do the upgrade next.

Like the hack, and it's got some great debug features.

great job
Reply With Quote
  #203  
Old 04-01-2002, 09:12 AM
Jawelin Jawelin is offline
 
Join Date: Nov 2001
Posts: 557
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by nakkid
i dont know what to say Jawelin. anyone else have the same problem? so far everyone is really happy with 1.7...
Absolutely NO PROBLEM, Nakkid.
I went deeper only to investigate better why times reported are so different each other.
As said before, version 1.7 is absolutely stable and works perfectly... Never had negative (or > 100) values any more...
Even, I verified global.php is called only once.

The strange even is the greatest processing time is taken by the 'eval ... forumhome template', not by my 38 queries on the homepage.... :nervous: :nervous:

Thanks again for support.
I exposed my search results only to have some number to talk about.
Bye
Reply With Quote
  #204  
Old 04-02-2002, 02:13 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by Jawelin
As said before, version 1.7 is absolutely stable and works perfectly... Never had negative (or > 100) values any more...
Even, I verified global.php is called only once.
ok.. just wanted to make sure i understood you corectly.
Reply With Quote
  #205  
Old 04-02-2002, 03:56 PM
dyt4's Avatar
dyt4 dyt4 is offline
 
Join Date: Dec 2001
Posts: 18
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

just another little question about time I obtain always page generated in between 0.5 and 1.5 seconds . But I look at my watch it's often 10 or 20 seconds with my ISDN connection and 2 seconds with my DSL connection at work ???
Reply With Quote
  #206  
Old 04-02-2002, 04:04 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

do you have v1.7 installed?
on my localhost (no internet connection) i got up to 2.600000seconds to load a page, depending what i was doing.
look here at vB.org:
[high]Page generated in 5.97940302 seconds (74.72% PHP - 25.28% MySQL) with 38 queries.[/high]
Reply With Quote
  #207  
Old 04-02-2002, 07:55 PM
Jawelin Jawelin is offline
 
Join Date: Nov 2001
Posts: 557
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I definetively don't think the connection speed could affect any way the page generation time on the server side (i.e. php + sql time ARE server times)....

I'm talking about different measurements of the same server-side time in different page 'breakpoints'... let's say.
Reply With Quote
  #208  
Old 04-03-2002, 08:08 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

actually it depends a little in your pc performance. if you have a slow pc, the time it takes to load the page will reflect it.
i did a test, on several pc's, at work... to load vB.org. i got different values (huge ones) on winXP, win2k and win98 (P4, P2 and AMD). here there are the results:
win98(AMD) - 4.00 seconds
win2k(P2) - 2.00 seconds
winXP(P4) - 0.80 seconds

internet connection: T1 (all cases)
Reply With Quote
  #209  
Old 04-04-2002, 05:16 AM
Admin's Avatar
Admin Admin is offline
Coder
 
Join Date: Oct 2023
Location: Server
Posts: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Actually nakkid it has nothing to do with that. From the second the server gets a request for the PHP page the parser is doing all the work, not your computer.
Reply With Quote
  #210  
Old 04-04-2002, 06:29 AM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

this is wierd. i wonder why i got those stats. all pc's were connected to the same network.

thanks for the explanation firefly.
Reply With Quote
  #211  
Old 04-07-2002, 04:14 AM
Legacy's Avatar
Legacy Legacy is offline
 
Join Date: Apr 2002
Posts: 26
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Page generated in 1,018,162,977.218 seconds(100.00% PHP - 0.00% MySQL) with 28 queries.
PHP version 4.1.2 (Debug mode) with GZIP library compression enabled (level 2). [details]

MySQL always comes up 0.00%...anyone know why??
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 09:57 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.14479 seconds
  • Memory Usage 2,380KB
  • Queries Executed 30 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)bbcode_code
  • (2)bbcode_php
  • (4)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (2)pagenav_pagelinkrel
  • (16)post_thanks_box
  • (16)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (16)post_thanks_postbit_info
  • (15)postbit
  • (16)postbit_onlinestatus
  • (16)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete