Some more performance improvements and caching

This commit is contained in:
Deon George
2012-12-07 14:33:16 +11:00
parent df498a76a7
commit 7a3539cb95
13 changed files with 475 additions and 203 deletions

View File

@@ -1,7 +1,7 @@
<!-- $o = ORM::factory('NODE') -->
<table width="100%">
<tr>
<td style="width: 50%; vertical-align: top;">
<td style="width: 50%; vertical-align: top;" rowspan="2">
<?php foreach (Kohana::$config->load('config')->tsmdatatypes as $btype => $ctype) { ?>
<table class="box-full">
<tr>
@@ -36,6 +36,9 @@
<br/>
<?php } ?>
</td>
<td style="width: 50%; vertical-align: top;" rowspan="2"><?php echo View::factory('node/stgpool_summary')->set('o',$o); ?></td>
<td style="width: 50%; vertical-align: top;"><?php echo View::factory('node/stgpool_pool')->set('o',$o); ?></td>
</tr>
<tr>
<td style="width: 50%; vertical-align: top;"><?php echo View::factory('node/stgpool_type')->set('o',$o); ?></td>
<tr>
</table>

View File

@@ -1,7 +1,7 @@
<!-- $o = ORM::factory('NODE') -->
<table class="box-full">
<tr>
<td class="head" colspan="2">Storage By Pool Summary</td>
<td class="head" colspan="5">Storage By Pool Summary</td>
</tr>
<tr>
<td class="spacer">&nbsp;</td>
@@ -15,14 +15,14 @@
<?php $i=0; foreach ($o->stgpooltypes() as $type) { ?>
<tr class="<?php echo $i++%2 ? 'odd' : 'even'; ?>">
<td class="data" colspan="2"><?php echo $type; ?></td>
<td class="data-right"><?php echo count($o->getStorageTypeVols($type)); ?></td>
<td class="data-right"><?php echo count($o->vols_byptype($type)); ?></td>
<td class="data-right"><?php echo number_format($o->file_byptype($type),0); ?></td>
<td class="data-right"><?php echo number_format($o->logmb_byptype($type),0); ?></td>
</tr>
<?php foreach ($o->stgpools_byptype($type) as $spo) { ?>
<tr class="<?php echo $i++%2 ? 'odd' : 'even'; ?>">
<td>&nbsp;</td>
<td><?php echo $spo; ?></td>
<td><?php echo HTML::anchor('stgpool/detail/'.$spo->STGPOOL_NAME,$spo->display('STGPOOL_NAME')); ?></td>
<td class="right"><?php echo count($o->vols_bypool($spo)); ?></td>
<td class="right"><?php echo number_format($o->file_bypool($spo),0); ?></td>
<td class="right"><?php echo number_format($o->logmb_bypool($spo),0); ?></td>

View File

@@ -0,0 +1,32 @@
<!-- $o = ORM::factory('NODE') -->
<table class="box-full">
<tr>
<td class="head" colspan="5">Storage By Type Summary</td>
</tr>
<tr>
<td class="spacer">&nbsp;</td>
</tr>
<tr>
<td colspan="2">Storage Pool and Type</td>
<td class="right">Vols</td>
<td class="right">Files</td>
<td class="right">MB</td>
</tr>
<?php $i=0; foreach ($o->btypes() as $type) { ?>
<tr class="<?php echo $i++%2 ? 'odd' : 'even'; ?>">
<td class="data" colspan="2"><?php echo $type; ?></td>
<td class="data-right"><?php echo count($o->vols_bybtype($type)); ?></td>
<td class="data-right"><?php echo number_format($o->file_bybtype($type),0); ?></td>
<td class="data-right"><?php echo number_format($o->logmb_bybtype($type),0); ?></td>
</tr>
<?php foreach ($o->stgpools_bybtype($type) as $spo) { ?>
<tr class="<?php echo $i++%2 ? 'odd' : 'even'; ?>">
<td>&nbsp;</td>
<td><?php echo HTML::anchor('stgpool/detail/'.$spo->STGPOOL_NAME,$spo->display('STGPOOL_NAME')); ?></td>
<td class="right"><?php echo count($o->vols_bypoolbybtype($spo,$type)); ?></td>
<td class="right"><?php echo number_format($o->file_bypoolbybtype($spo,$type),0); ?></td>
<td class="right"><?php echo number_format($o->logmb_bypoolbybtype($spo,$type),0); ?></td>
</tr>
<?php } ?>
<?php } ?>
</table>

View File

@@ -28,14 +28,13 @@
<td colspan="10">
<?php
if ($spo->DEVCLASS == 'DISK')
printf('%s: Utilised: %s%%, Device Type: %s',$spo->STGPOOL_NAME,$spo->PCT_UTILIZED,$spo->DEVCLASS);
printf('%s: Utilised: %s%%, Device Type: %s',$spo->STGPOOL_NAME,$spo->PCT_MIGR,$spo->DEVCLASS);
else
printf('%s: Reclaim: %s%%, Scratch Usage: %s/%s, Device Type: %s',$spo->STGPOOL_NAME,$spo->RECLAIM,$spo->NUMSCRATCHUSED,$spo->MAXSCRATCH,$spo->DEVCLASSES->DEVTYPE);
?>
</td>
</tr>
<?php foreach ($o->vols_bypoolbyctype($spo->STGPOOL_NAME,$ctype) as $vuo) {
$vo = $vuo->VOLUME; ?>
<?php foreach ($o->vols_bypoolbyctype($spo->STGPOOL_NAME,$ctype) as $vo) { ?>
<tr class="<?php echo $i++%2 ? 'odd' : 'even'; ?>">
<td class="data"><?php echo HTML::anchor('volume/detail/'.base64_encode($vo->VOLUME_NAME),$vo->display('VOLUME_NAME')); ?></td>
<td class="data"><?php echo $vo->display('LAST_READ_DATE'); ?></td>