<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Perforce Server Status</title>
<link rel="stylesheet" type="text/css" href="server-status.css" />
<script language="javascript" type="text/javascript" src="common_js.js"></script>
<!-- I/O -->
<script language="javascript" type="text/javascript" src="tajax.js"></script>
<script langaage="javascript" type="text/javascript" src="tajax_messages.js"></script>
<script language="javascript" type="text/javascript" src="mvc.js"></script>
<!-- server info object model -->
<script language="javascript" type="text/javascript" src="serverinfo.js"></script>
<script language="javascript" type="text/javascript" src="serverinfo_messages.js"></script>
<script language="javascript">
js.log.DEBUG.enabled = false;
js.log.WARN.enabled = false;
js.log.ERROR.enabled = false;
js.log.FAILURE.enabled = true;
var servers = new sinfo.list(
// list out each of the status files here
// each file that we reference must be viewable by the web server
sinfo.createController('Current Server Performance', 'vmstat.xml', 'serverinfo-base'),
sinfo.createController('Perforce Cron Status', '../p4status.txt', 'serverinfo-base'),
// filler - will be ignored
null
);
function body_onload() {
servers.update();
document.getElementById('lastRefresh').innerHTML = (new Date()).toString();
}
</script>
</head>
<body onload="body_onload();">
<!-- Header data - used by script infrastructure -->
<script language="javascript">
if (js.log.DEBUG.enabled) {
js.log.inlineConsole();
}
</script>
<!-- view template for serverinfo -->
<div id='serverinfo-base' class='template'>
<div class='server-info-title'>{title}</div>
<div class='server-info-update'>Last updated <span id='{model.id}_updated'>{model.lastUpdate}</span></div>
<div id='{model.id}_data'>No data pulled.</div>
</div>
<!-- End Header Section -->
<h1 class='title'>Server Health</h1>
<div class='refresh'>
<button class='refresh' onclick="body_onload();">Refresh</button>
<p>Last refresh on <span id='lastRefresh'>Never</span></p>
</div>
<div class='server-list' id='server-list'>
<script language="javascript">
servers.bodyShow();
</script>
</div>
</body>
</html>
| # | Change | User | Description | Committed | |
|---|---|---|---|---|---|
| #3 | 5925 | Matt Albrecht | Updates to the server status page | ||
| #2 | 5816 | Matt Albrecht | Add / update the server status with a much better AJAX model. | ||
| #1 | 5810 | Matt Albrecht |
New version of logDaemon that has better bug fixes. Also added server-status web page for a pure client-side AJAX app that pulls together different server-side statistics. |