The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
vBMicrostats Details »» | |||||||||||||||||||||||||
Finally, the vBMicroStats product for vBulletin 3.5.4 is here.
The previous versions of my mod were very solicited by vBulletin administrators... I hope you will enjoy this new version as much you did the other ones. Looking for VB 3.6.x version? It is here. This mod with add at the bottom of each vBulletin (powered) page, the statistics listed below. Also, it will help you troubleshoot and optimize your vBulletin board by viewing or comparing PHP/MySQL options and other statistics that are normally hidden in your forum pages. Regular Users: ? Load time of specified page in microseconds ? Number of queries executed ? PHP percent page usage ? MySQL percent page usage Administrators Only: ? Server memory usage per page (in Kb) ? DEBUG mode status ? Browser GZIP library compression status ? Server average loads ? Uncached templates (useful to troubleshoot the code) The code modifications listed below were tested into a clean installed vBulletin board. They work 100%. If you encounter any problems, feel free to post your questions here. Step by step install instructions are posted into vbmicrostats.html file. In order to perform an efficient modification of your files, I recommend you to use Dreamweaver (Coder Mode) or Textpad. Both editors will allow you to complete all steps without any coding errors. I tried to use the plugin system as much as I could, in order to avoid any unnecessary code modifications. In order to set the right query execution time, you will need to perform 2 small code changes to each of the following files: ? class_core.php (folder /includes) ? init.php (folder /includes) The code changes are very safe and designed not to interfere in any way with the vBulletin performance/functionality. Make sure you modify, save and upload one file at the time to your server. Then, simply run the product-plugin_vbmicrostats.xml file. Once the product installed, don't forget to enable it. Go to your vBulletin Options, click on BB MicroStats setting group and set all your options. Show Your Support
|
Comments |
#22
|
||||
|
||||
Ok, here it is an example:
Code:
$ms_output = '<span class="smallfont">'; $ms_output .= 'Page generated in ' . $total_time . ' seconds (' . $php_percent . ' - ' . $sql_percent . ') with ' . $query_count . ' queries'; $ms_output .= '</span><br />' . "\n"; [... code here, don't edit ...] $ms_output .= '<span class="smallfont">'; $ms_output .= $memory_status . $debug_status . $gzip_status . $server_status . $templates_status; $ms_output .= '</span>' . "\n"; If you want the $ms_output template code even simplier, use this: Code:
$ms_output = 'Page generated in ' . $total_time . ' seconds (' . $php_percent . ' - ' . $sql_percent . ') with ' . $query_count . ' queries<br />'; [... code here, don't edit ...] $ms_output .= $memory_status . $debug_status . $gzip_status . $server_status . $templates_status; Code:
<if condition="$show['microstats']">{microstats}</if>
For example, to make your two new lines centered, use this: Code:
<if condition="$show['microstats']">
<div style="text-align: center;">{microstats}</div>
</if>
If you have any other questions, go ahead and post them. |
#23
|
|||
|
|||
is there a way to track down which hacks are the troublesome ones using this?
|
#24
|
|||
|
|||
much easier thank you
|
#25
|
||||
|
||||
Bob, I looked at your site, it looks fine?
If you want to place the microstats after the vBulletin copyright (for example), use my second $ms_output template, listed above. |
#26
|
||||
|
||||
Quote:
And a screenshot. |
#27
|
|||
|
|||
one sec im just moving around the text lol tryin to see where it looks best
|
#28
|
||||
|
||||
Quote:
However, there is a tricky way to see what's the "bad" mod in your source. You need to enable only one mod at the time. Then simply view your pages with the specific mod enabled/disabled. Compare your stats between the original vBulletin unmodded page and the one with the mod enabled. You will notice rightaway and erratic number of extra queries or abnormal percentages.... and complain to the mod creator. That's why the users loved so much vBMicroStats, it was the first mod that told you what's really going on with your PHP code... If you find a better way, please share it with the users here. |
#29
|
|||
|
|||
ok quick question here is what i have so far...
Code:
if ($vbulletin->options['vb_mstats_active']) { $colspan = 1; if ($show['quickchooser']) { $colspan++; } if ($show['languagechooser']) { $colspan++; } $page_endtime = microtime(); $start_time = explode(' ', $pagestarttime); $end_time = explode(' ', $page_endtime); $total_time = vb_number_format($end_time[0] - $start_time[0] + $end_time[1] - $start_time[1], $vbulletin->options['vb_mstats_decimal']); $query_time = $vbulletin->db->mstime_total; $query_count = $vbulletin->db->querycount; $php_percent = vb_number_format(((($total_time - $query_time) / $total_time) * 100), 2) . '% PHP'; $sql_percent = vb_number_format((($query_time / $total_time) * 100), 2) . '% MySQL'; $ms_output .= ' <span class="smallfont">Page generated in ' . $total_time . ' seconds (' . $php_percent . ' - ' . $sql_percent . ') with ' . $query_count . ' queries</span>' . "\n"; if ($vbulletin->options['vb_mstats_adminactive'] AND $vbulletin->userinfo['usergroupid'] == 6) { $memory_status = ''; if ($vbulletin->options['vb_mstats_memory']) { if (!function_exists('memory_get_usage')) { function memory_get_usage() { $mem_output = array(); if (strtolower(substr(PHP_OS, 0, 3)) == 'win') { exec('tasklist /FI "PID eq ' . getmypid() . '" /FO LIST', $mem_output); return preg_replace( '/[^0-9]/', '', $output[5] ) * 1024; } else { $pid = getmypid(); exec("ps -eo%mem,rss,pid | grep $pid", $mem_output); $mem_output = explode(' ', $mem_output[0]); return $mem_output[1] * 1024; } } } $memory_status = vb_number_format((memory_get_usage() / 1024), 2) . 'KB Used | '; } $debug_status = ''; if ($vbulletin->options['vb_mstats_debug']) { $debug_status = 'DEBUG Mode OFF | '; if ($vbulletin->debug) { $debug_status = 'DEBUG Mode ON | '; } } $gzip_status = ''; if ($vbulletin->options['vb_mstats_gzip']) { $gzip_status = 'GZIP OFF | '; if ($vbulletin->options['gzipoutput'] AND !$vbulletin->nozip) { $gzip_status = 'GZIP ON (level ' . $vbulletin->options['gziplevel'] . ') | '; } } $server_status = ''; if ($vbulletin->options['vb_mstats_server']) { if ($stats = @exec('uptime 2>&1') AND trim($stats) != '' AND preg_match("#: ([\d.,]+),?\s+([\d.,]+),?\s+([\d.,]+)$#", $stats, $regs)) { $regs[1] = vb_number_format($regs[1], 2); $regs[2] = vb_number_format($regs[2], 2); $regs[3] = vb_number_format($regs[3], 2); $server_status = '<strong>' . $regs[1] . '</strong> : ' . $regs[2] . ' : ' . $regs[3] . ' | '; } } $templates_status = ''; if ($vbulletin->options['vb_mstats_templates']) { $templates_status = 'NO Uncached Templates'; if ($_TEMPLATEQUERIES) { $templates_status = '<select class="smallfont" size="1">' . "\n"; $templates_status .= '<optgroup label="Uncached Templates: ' . sizeof($_TEMPLATEQUERIES) . '">' . "\n"; if (is_array($tempusagecache)) { global $vbcollapse; ksort($tempusagecache); foreach ($tempusagecache AS $tempname => $times) { if ($_TEMPLATEQUERIES["$tempname"]) { $templates_status .= '<option class="alt2" selected="selected">' . $tempname . ' (' . $times . ')</option>' . "\n"; } else { $templates_status .= '<option>' . $tempname . ' (' . $times . ')</option>' . "\n"; } } } $templates_status .= '</optgroup>' . "\n"; $templates_status .= '</select>'; } } $ms_output .= '<tr align="' . $stylevar['right'] . '">' . "\n"; $ms_output .= ' <td class="alt1"' . iif($show['quickchooser'] OR $show['languagechooser'], ' colspan="' . $colspan . '"') . '>' . "\n"; $ms_output .= ' <span class="smallfont">' . $memory_status . $debug_status . $gzip_status . $server_status . $templates_status . '</span>' . "\n"; $ms_output .= ' </td>' . "\n"; $ms_output .= '</tr>' . "\n"; } $output = str_replace('{microstats}', $ms_output, $output); } ok now when i remove the bottom table it all groups in one line... im tryin to keep it 2 lines like you have it but when i remove the admins alt1 Code:
$ms_output .= ' <td class="alt1"' . iif($show['quickchooser'] OR $show['languagechooser'], ' colspan="' . $colspan . '"') . '>' . "\n"; |
#30
|
||||
|
||||
Quote:
EDIT: Ok, I now see what you mean. Am working on it now. Thank you, sir. |
#31
|
|||
|
|||
here is my screen shot so far of what i have going on... just tryin to figure out the admin table now
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|