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
  #162  
Old 03-26-2002, 10:39 PM
scotty's Avatar
scotty scotty is offline
 
Join Date: Oct 2001
Location: Mannheim, Germany
Posts: 70
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

anyone suggestions for my prob?
https://vborg.vbsupport.ru/showthrea...244#post230244
Reply With Quote
  #163  
Old 03-26-2002, 11:06 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 scotty
anyone suggestions for my prob?
https://vborg.vbsupport.ru/showthrea...244#post230244
sessionhash probs. check your hacks.
Reply With Quote
  #164  
Old 03-27-2002, 08:15 AM
Jawelin Jawelin is offline
 
Join Date: Nov 2001
Posts: 557
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by nakkid
i'm convinced is a server issue Jawelin. as you see, even in unhacked (details) mode you get negativs. i wish i could do something but i cant. you should contact your host. let me know what they said.. it might help others who have the same prob.
Yes, sure. My server is quite strange (Linux shared...). Even - thanks to your enhanced hack version - I saw they somethimes turn off the gzip for no reason ... Bah!?!?

Instead I often get a negative value on the forumhome page, with about 35 queries. Some hacks installed, but even with the original index.php and templates, the query time has often strange values.
I asked my host people, but they said it's an 'application' issue cause they use a standard MySQL configuration...

Pragmatically, I would findout a simple way to re-scale strange values with a not-totally-random algorithm... :classic:
I though to 'sql time % 100', but it's too empiric....
Do you have any better idea ?

Thanks and welcome back. As you can see, Nakkid, your work became very popular... :squareeyed:

Bye
Reply With Quote
  #165  
Old 03-27-2002, 11:32 AM
lowlight's Avatar
lowlight lowlight is offline
 
Join Date: Mar 2002
Posts: 87
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

So what's a good stat to have?

Most of my pages are like this:

Page generated in 0.5019860 seconds (91.89% PHP - 8.11% MySQL) with 22 queries.

I guess it's good that MySQL isn't bogging down right?
Reply With Quote
  #166  
Old 03-27-2002, 11:58 AM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

looks good to me.. your stats are solid. not to many queries (very important for your server - keep it under 40)
Reply With Quote
  #167  
Old 03-27-2002, 12:02 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
Pragmatically, I would findout a simple way to re-scale strange values with a not-totally-random algorithm... :classic:
I though to 'sql time % 100', but it's too empiric....
Do you have any better idea ?
install a test board with no hacks. this way you will see exacly where is the bug related to your server.

the way your host twisted the answer made me laugh. application prob? hmmm well, with a plain board installed there is nothing thay can commnet on it. i guarantee you will get the same probs. let me know please how it went.
Reply With Quote
  #168  
Old 03-27-2002, 12:47 PM
lowlight's Avatar
lowlight lowlight is offline
 
Join Date: Mar 2002
Posts: 87
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by nakkid
looks good to me.. your stats are solid. not to many queries (very important for your server - keep it under 40)
Yeah I want to keep everything running nicely... I have PHP-Accelerator installed, and MOD_GZIP... I hope all that helps, because I am going to make my site into a full dynamically-served site!

Wish me luck
Reply With Quote
  #169  
Old 03-27-2002, 01:20 PM
JDD JDD is offline
 
Join Date: Oct 2001
Posts: 11
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hi...

I have examined the code a little bit deeper, and I got a solution for these negative value problems, I think.
In my opinion it is a little bug in your hack. I figured out that my pagestarttime was always set to zero.
This is caused in global.php:
PHP Code:
if (isset($explain)) {
  
$showqueries=1;
}
if (isset(
$showqueries)) {
  
$pagestarttime=microtime();

so it will only be set if showqueries is set.

I changed it to:

PHP Code:
$pagestarttime=microtime();

if (isset(
$explain)) {
  
$showqueries=1;
}
if (isset(
$showqueries)) {
  
$pagestarttime=microtime();

so.. with this I got a start time. But there is an other little problem in functions.php.

replace this:

PHP Code:
// time format (how many digits you want to show)
  
$digits=7;

  
$totaltime=$endtime[0]-$starttime[0];
  
$trimmedtime=number_format($totaltime,$digits);
  
$percentphp=number_format(((($totaltime-$querytime)/$totaltime)*100), 2)."% PHP";
  
$percentsql=number_format((($querytime/$totaltime)*100), 2)."% MySQL"
with
PHP Code:
// time format (how many digits you want to show)
  
$digits=7;

  
$totaltime=$endtime[0]-$starttime[0]+$endtime[1]-$starttime[1];
  
$trimmedtime=number_format($totaltime,$digits);
  
$percentphp=number_format(((($totaltime-$querytime)/$totaltime)*100), 2)."% PHP";
  
$percentsql=number_format((($querytime/$totaltime)*100), 2)."% MySQL"
and now it should work perfectly, at least for me it does

Greets
JDD

If this may be wrong, just inform me and I edit this (but I think it should solve the problem)
Reply With Quote
  #170  
Old 03-27-2002, 10:59 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

PHP Code:
$totaltime=$endtime[0]-$starttime[0]+$endtime[1]-$starttime[1]; 
initially, that's what i had in my hack, but the numbers were most of the time messed.. that was the issue i debated with firefly. he did the same thing here at vB.org. i cannot explain it why but this will work only in 20% of servers. as you see, there are alot of users who dont have this problem at all.. so i decided to leave it the way it is. firefly even went deeper then you think, by contacting a develloper at vB.com just to get an answer to the mistery.

leave the rest unchanged, it should work fine, the starttime must be set to zero.
Reply With Quote
  #171  
Old 03-28-2002, 06:43 AM
JDD JDD is offline
 
Join Date: Oct 2001
Posts: 11
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
initially, that's what i had in my hack, but the numbers were most of the time messed..
jepp, no wonder if starttime is allways set to zero. You would get funny looking huge values most of the time (exactly the difference to 1.1.1970 ) btw. how do you calculate times over 1 sec with not handling the seconds part of microtime at all in your totaltime?

Quote:
leave the rest unchanged, it should work fine, the starttime must be set to zero.
sorry to disagree here as well... But if starttime is set to zero you will never get correct values.. The reason why the mysql part works is easy. You don't subtract the endtime from the starttime directly but go over some interims vars (beforetime, aftertime), so the starttime part isn't invovled in the calculating at all.

So, just give my modifications a chance and try them out, you'll see they would work. I have no clue why it is working on vB.org, but I doubt they use your code in it's original form.
This is btw. a really nice hack - I like it very much therefore I tried to make it work and excamined it a little bit more than usual.

JDD
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 04:26 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.10359 seconds
  • Memory Usage 2,345KB
  • Queries Executed 25 (?)
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
  • (5)bbcode_php
  • (6)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
  • (3)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)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