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
  #82  
Old 02-19-2004, 01:54 PM
M@rkus M@rkus is offline
 
Join Date: Jul 2003
Posts: 22
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

well.. on my first board it works with RC2 but on the other board it won`t show up!
Reply With Quote
  #83  
Old 02-19-2004, 02:22 PM
M@rkus M@rkus is offline
 
Join Date: Jul 2003
Posts: 22
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I ve found the problem.. the code was there but the style is another so the code was on a black backround.

Next question. Where else can i place the CODE in the functions.php to get the Stats on another place in the footer?
Reply With Quote
  #84  
Old 02-25-2004, 04:42 AM
Sugoi Sugoi is offline
 
Join Date: Feb 2004
Posts: 7
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I get parse error :S

if I delete this line it will not get a error but the mircostats not work well ...

PHP Code:
$debughtml .= " (<a href="" htmlspecialchars_uni(SCRIPTPATH) . iif(strpos(SCRIPTPATH'?''?')=== false'?''?','&amp;') . "tempusage=1">Template Usage</a>) (<a href="" htmlspecialchars_uni(SCRIPTPATH) . iif(strpos(SCRIPTPATH'?''?')=== false'?''?','&amp;') . "explain=1">Explain</a>)<br />\n"
Reply With Quote
  #85  
Old 02-25-2004, 09:53 AM
Zelda-King's Avatar
Zelda-King Zelda-King is offline
 
Join Date: Nov 2002
Location: London, England
Posts: 674
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If you run a search in this thread on the word 'parse' you'll see this has been brought up. It's probably your text editor or something. But you might want to state what version of vBulletin you're using.
Reply With Quote
  #86  
Old 02-25-2004, 11:13 AM
Gary King's Avatar
Gary King Gary King is offline
 
Join Date: Jan 2002
Posts: 2,046
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Sugoi
I get parse error :S

if I delete this line it will not get a error but the mircostats not work well ...

PHP Code:
$debughtml .= " (<a href="" htmlspecialchars_uni(SCRIPTPATH) . iif(strpos(SCRIPTPATH'?''?')=== false'?''?','&amp;') . "tempusage=1">Template Usage</a>) (<a href="" htmlspecialchars_uni(SCRIPTPATH) . iif(strpos(SCRIPTPATH'?''?')=== false'?''?','&amp;') . "explain=1">Explain</a>)<br />\n"
Usually it's also a good idea to show what the parse errors says
Reply With Quote
  #87  
Old 02-25-2004, 11:46 AM
Chris M's Avatar
Chris M Chris M is offline
 
Join Date: Dec 2001
Location: Northampton, England
Posts: 6,186
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Installed and working perfectly on RC4

Showthread.php :

Page generated in 0.12244 seconds with 12 queries [Server Loads: 0.27 ? 0.27 : 0.27]


Satan
Reply With Quote
  #88  
Old 02-25-2004, 01:37 PM
Sugoi Sugoi is offline
 
Join Date: Feb 2004
Posts: 7
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

got this :

Parse error: parse error in /home/jironet/public_html/forum/includes/functions.php on line 1795

Fatal error: Call to undefined function: is_browser() in /home/jironet/public_html/forum/global.php on line 59

I got version RC4
Reply With Quote
  #89  
Old 02-25-2004, 01:51 PM
NTLDR's Avatar
NTLDR NTLDR is offline
Coder
 
Join Date: Apr 2002
Location: Bristol, UK
Posts: 3,644
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I assume you used dreamweaver to edit the files, use a different editor.
Reply With Quote
  #90  
Old 02-25-2004, 02:18 PM
Sugoi Sugoi is offline
 
Join Date: Feb 2004
Posts: 7
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

yes i use dreamweaver to search the lines , and edit it .. I'l try another eidtor

EDITED : It works , thank you !

Btw how can I put that line somewhere else ? So not the bottom of the page ! But in the table ?
Reply With Quote
  #91  
Old 02-25-2004, 06:35 PM
Gary King's Avatar
Gary King Gary King is offline
 
Join Date: Jan 2002
Posts: 2,046
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Sugoi
yes i use dreamweaver to search the lines , and edit it .. I'l try another eidtor


EDITED : It works , thank you !

Btw how can I put that line somewhere else ? So not the bottom of the page ! But in the table ?
In what table? Anyways that would require quite a bit more hacking (much more than what you currently have to do for right now) so I would suggest just leaving it how it is right now, it's fine in the footer; also if you move it up then I believe your values will be slightly inaccurate because then the microstats will display before the page is completely loaded.
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:20 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.05407 seconds
  • Memory Usage 2,354KB
  • 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
  • (2)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
  • (1)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