GetDBBackupDetail('history'); if (! $history) exit; $graph = new Graph(400,200,'auto'); $graph->SetScale('textlin'); $fulldata = array(); $incrdata = array(); $xtitles = array(); foreach ($app['server']->GetDBBackupDetail('history') as $index => $backupdetails) { switch ($backupdetails['type']) { case 'FULL' : $fulldata[] = $backupdetails['size']; $incrdata[] = 0; break; case 'INCR' : $fulldata[] = 0; $incrdata[] = $backupdetails['size']; break; } $xtitles[] = preg_replace('/ /',"\n",tsmDate($backupdetails['date'],'daytime')); $maxdata[] = $app['server']->GetDBDetail('USABLE_PAGES'); $curdata[] = $app['server']->GetDBDetail('USED_PAGES'); } $cplot = new LinePlot($maxdata); $cplot->SetLegend('Max DB Size'); $cplot->SetColor('red'); $cplot->SetWeight(2); if (count($maxdata) == 1) $cplot->mark->SetType(MARK_IMG_MBALL,'red',0.5); $graph->Add($cplot); $dplot = new LinePlot($curdata); $dplot->SetLegend('Cur Size'); $dplot->SetColor('lightred'); $dplot->SetWeight(2); $graph->Add($dplot); $aplot = new BarPlot($fulldata); $aplot->SetLegend('Full'); $aplot->SetFillColor('blue'); $aplot->value->Show(); $aplot->value->SetFormat('%5.0f'); $graph->Add($aplot); $bplot = new BarPlot($incrdata); $bplot->SetLegend('Incremental'); $bplot->SetFillColor('lightblue'); $bplot->value->Show(); $bplot->value->SetFormat('%5.0f'); $graph->Add($bplot); $graph->img->SetMargin(60,110,20,40); $graph->legend->Pos(0.01,0.80,'right','center'); $graph->legend->SetFillColor('azure'); $graph->xaxis->SetTickLabels($xtitles); $graph->xaxis->SetLabelAngle(90); $graph->xgrid->Show(true); $graph->yaxis->title->Set('Database Pages \'000s'); $graph->yaxis->SetLabelFormatCallback('labelformat'); $graph->yaxis->SetTitleMargin(45); $graph->SetMarginColor('azure2'); $graph->title->Set(sprintf('Database Backups %s',$app['server']->GetStatusDetail('SERVER_NAME'))); # Display the Gantt chart $graph->Stroke(); function labelformat($label) { return number_format($label/1000); } ?>