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

Reply
 
Thread Tools
Microstats (only for admin) - load times, server loads, queries, uncached templates! Details »»
Microstats (only for admin) - load times, server loads, queries, uncached templates!
Version: 1.00, by Erwin Erwin is offline
Developer Last Online: May 2013 Show Printable Version Email this Page

Version: 3.0.3 Rating:
Released: 01-04-2004 Last Update: Never Installs: 190
 
No support by the author.

Version 1.0 - works for most servers
Updated 1.1 - optimized code
Updated 1.2 - added names of uncached templates!

Okay, the original was by TECK. This is NOT based on his code - it is based on vB3's native code. If TECK wants me to remove this, I will do so. This is just my version that I use for my private forums.

Information shown:
1) Page loading times
2) Number of Queries
3) Server Loads
4) Number of Any Uncached Templates
5) Name of Uncached Templates (NEW!)

By default only an Admin (usergroup 6) can see it. Feel free to modify this bit.

It's very easy to install.

Open includes/functions.php:

Find:

PHP Code:
// ####################################################################
    // temporary code
    
global $_TEMPLATEQUERIES$tempusagecache$DEVDEBUG$_SERVER$debug
UNDERNEATH, ADD:

Version 1.2 - more optimized but requires /proc on your server - try this, if server loads don't show up use Version 1.02 below

PHP Code:
// Microstats hack
if ($bbuserinfo[usergroupid]==6) {
                
$pageendtime microtime(); 
                
$starttime explode(' '$pagestarttime); 
                
$endtime explode(' '$pageendtime); 
                
$totaltime vb_number_format($endtime[0] - $starttime[0] + $endtime[1] - $starttime[1], 5); 
                
$loadavg = @file_get_contents("/proc/loadavg"); 
                if (
$loadavg) { 
                        
$regs explode(" ",$loadavg); 
                        
$serverload=' [Server Loads: <b>'.$regs[0].'</b> '.$regs[1].' : '.$regs[2].']'
                } 
                
$debughtml "<center><span class=\"smallfont\">Page generated in <b>$totaltime</b> seconds with <b>$query_count</b> queries" iif($_TEMPLATEQUERIES" (<b>" sizeof($_TEMPLATEQUERIES) . "</b> queries for uncached templates)"'') . "$serverload</span></center>"
    
ksort($tempusagecache);
    foreach (
$tempusagecache AS $tempname => $times)
    {
    if (
$_TEMPLATEQUERIES["$tempname"]) $debughtml .= "<center><span class=\"smallfont\">Uncached templates: <font color=\"red\"><b>$tempname</b></font> ($times)</span></center>";
    }
                
$vartext str_replace('</body>'"$debughtml\n</body>"$vartext); 
 
}
//Microstats Hack 


Version 1.02 - Use this if Version 1.1 doesn't work for you.

PHP Code:
// Microstats hack 
if ($bbuserinfo[usergroupid]==6) {
$pageendtime microtime(); 
$starttime explode(' '$pagestarttime); 
$endtime explode(' '$pageendtime); 
$totaltime vb_number_format($endtime[0] - $starttime[0] + $endtime[1] - $starttime[1], 5); 
if (
$stats=@exec('uptime')) { 
     
preg_match('/averages?: ([0-9\.]+),[\s]+([0-9\.]+),[\s]+([0-9\.]+)/',$stats,$regs); 
     
$serverload=' [Server Loads: <b>'.$regs[1].'</b> ? '.$regs[2].' : '.$regs[3].']'
     } 
$debughtml "<center><span class=\"smallfont\">Page generated in <b>$totaltime</b> seconds with <b>$query_count</b> queries" iif($_TEMPLATEQUERIES" (<b>" sizeof($_TEMPLATEQUERIES) . "</b> queries for uncached templates)"'') . "$serverload</span>"
$vartext str_replace('</body>'"$debughtml\n</body>"$vartext); 
    
ksort($tempusagecache);
    foreach (
$tempusagecache AS $tempname => $times)
    {
    if (
$_TEMPLATEQUERIES["$tempname"]) $debughtml .= "<center><span class=\"smallfont\">Uncached templates: <font color=\"red\"><b>$tempname</b></font> ($times)</span></center>";
    }
}
//Microstats Hack 

Done! As simple as that. No need to enable debug mode.

If you want only yourself to have this information, change:
if ($bbuserinfo[usergroupid]==6) {
to
if ($bbuserinfo[userid]==1) {

And replace 1 with your userid.

To let everyone see it, remove that line, and the last } of the code above.

Below is a screenshot of how my forumhome microstats look.

EDIT: Thanks to kmike, I optimized the code. This should lessen the load when checking the server loads slightly.

Version 1.2 and 1.02 now has added code to show NAMES OF UNCACHED TEMPLATES!

Show Your Support

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

Comments
  #112  
Old 03-27-2004, 12:18 PM
BarBeQue's Avatar
BarBeQue BarBeQue is offline
 
Join Date: Nov 2001
Location: The Netherlands
Posts: 96
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ever since i installed the sidebar hack i get 1 uncached template:
Page generated in 0.37613 seconds with 11 queries (1 queries for uncached templates) [Server Loads: 0.63 ? 1.10 : 1.84]

Hence my obvious conclusion is that it's the sidebar template that's uncached (yes indeed, i'm quite the detective ).
Anyway, how can i add this template to the cache?
Reply With Quote
  #113  
Old 04-01-2004, 09:20 AM
lifesourcerec's Avatar
lifesourcerec lifesourcerec is offline
 
Join Date: Jan 2002
Posts: 429
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Very nice. 8 queries here. But then again, just installed the new version with 1 hack.
Reply With Quote
  #114  
Old 04-02-2004, 04:55 PM
BarBeQue's Avatar
BarBeQue BarBeQue is offline
 
Join Date: Nov 2001
Location: The Netherlands
Posts: 96
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ok, i solved my own problem. Posted the fix in the sidebar thread (for the peepz that use search and stumble on this thread)

Tnx again Erwin, your nice hack showed me the uncached template without needing to turn debug on
Reply With Quote
  #115  
Old 04-08-2004, 09:54 PM
surfhog's Avatar
surfhog surfhog is offline
 
Join Date: Aug 2003
Location: England
Posts: 69
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

WOW wee yippy

Thanks Erwin, at least I got one hack from this board to work
Reply With Quote
  #116  
Old 04-08-2004, 10:49 PM
neocorteqz's Avatar
neocorteqz neocorteqz is offline
 
Join Date: May 2002
Location: Barefoot Bay Fl
Posts: 473
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

small question. is 13 queries too much?? lol. Actually i'm serious, i think the default install was something like 8 or 9 on forum home.
Reply With Quote
  #117  
Old 04-09-2004, 11:14 PM
cerebro's Avatar
cerebro cerebro is offline
 
Join Date: Dec 2001
Posts: 77
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nice hack, just install in VB3 gold.
Reply With Quote
  #118  
Old 04-15-2004, 12:12 AM
Loyalty4Life's Avatar
Loyalty4Life Loyalty4Life is offline
 
Join Date: Oct 2003
Location: Eugene, OR
Posts: 91
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks Erwin!

/me likes and clicks install.
Reply With Quote
  #119  
Old 04-17-2004, 06:42 PM
kmike kmike is offline
 
Join Date: Oct 2002
Posts: 169
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Perfect hack.
I just want to suggest a little tweak which will eliminate exec call (and associated "fork" system call). It will work at least on Linux, not sure about freebsd.
PHP Code:
        if ($bbuserinfo[usergroupid]==6) {
                
$pageendtime microtime();
                
$starttime explode(' '$pagestarttime);
                
$endtime explode(' '$pageendtime);
                
$totaltime vb_number_format($endtime[0] - $starttime[0] + $endtime[1] - $starttime[1], 5);
                
$loadavg = @file_get_contents("/proc/loadavg");
                if (
$loadavg) {
                        
$regs explode(" ",$loadavg);
                        
$serverload=' [Server Loads: <b>'.$regs[0].'</b> '.$regs[1].' : '.$regs[2].']';
                }
                
$debughtml "<center><span class="smallfont">Page generated in <b>$totaltime</b> seconds with <b>$query_count</b> queries" iif($_TEMPLATEQUERIES" (<b>" sizeof($_TEMPLATEQUERIES) . "</b> queries for uncached templates)"'') . "$serverload</span></center>";
                
$vartext str_replace('</body>'"$debughtml\n</body>"$vartext);
        } 
Reply With Quote
  #120  
Old 04-18-2004, 11:43 PM
Rich's Avatar
Rich Rich is offline
 
Join Date: Mar 2004
Location: U.S.A
Posts: 921
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hello,
I am a newbie myself,but you guys are amazing. I applied ALL the hacks with the directions I have been provided and my forum houses a portal (VBadvanced),as well as over 18 different hacks and numerous custom templates. With all that said,this is what I am running at right now with 10 members and 3 guests:

Page generated in 0.11039 seconds with 9 queries [Server Loads: 0.64 » 0.39 : 0.34]

Now I know I can lower this some as I have made no attempt at lower the queries. lol Any suggestions for lowering queries?
Reply With Quote
  #121  
Old 04-19-2004, 12:50 PM
Rich's Avatar
Rich Rich is offline
 
Join Date: Mar 2004
Location: U.S.A
Posts: 921
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I have 2 uncached templates. I don't know how to cache a template. That is something I haven't done yet. I could use some guidance with this.
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:23 PM.


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.05382 seconds
  • Memory Usage 2,364KB
  • 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
  • (4)bbcode_php
  • (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
  • (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