forked from pgpool/pgpooladmin
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinnerNodeServerStatus.php
74 lines (62 loc) · 2.46 KB
/
innerNodeServerStatus.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
/**
* View of servers status registered in pgpool.conf
*
* PHP versions 4 and 5
*
* LICENSE: Permission to use, copy, modify, and distribute this software and
* its documentation for any purpose and without fee is hereby
* granted, provided that the above copyright notice appear in all
* copies and that both that copyright notice and this permission
* notice appear in supporting documentation, and that the name of the
* author not be used in advertising or publicity pertaining to
* distribution of the software without specific, written prior
* permission. The author makes no representations about the
* suitability of this software for any purpose. It is provided "as
* is" without express or implied warranty.
*
* @author Ryuma Ando <ando@ecomas.co.jp>
* @copyright 2003-2013 PgPool Global Development Group
* @version CVS: $Id$
*/
require_once('common.php');
require_once('command.php');
/* --------------------------------------------------------------------- */
/* InnerNodeServerStatus.php */
/* --------------------------------------------------------------------- */
// Check login status
if (!isset($_SESSION[SESSION_LOGIN_USER])) {
exit();
}
// Get backend info
$params = readConfigParams(array('backend_hostname', 'backend_port'));
if (isset($params['backend_hostname'])) {
$backendHostName = $params['backend_hostname'];
$backendPort = $params['backend_port'];
} else {
$backendHostName = array();
$backendHostPort = array();
}
$is_pgpool_running = DoesPgpoolPidExist();
$nodeInfo = array();
foreach($backendHostName as $num => $hostname) {
$nodeInfo[$num]['hostname'] = $backendHostName[$num];
$nodeInfo[$num]['port'] = $backendPort[$num];
$nodeInfo[$num]['is_active'] = NodeActive($num);
if ($is_pgpool_running) {
$result = getNodeInfo($num);
$nodeInfo[$num]['status'] = $result['status'];
}
}
// Get node num
$nodeNum = (isset($_GET['num'])) ? $_GET['num'] : NULL;
// Set vars
$tpl->assign('pgpoolIsRunning', $is_pgpool_running);
$tpl->assign('nodeServerStatus', $nodeInfo);
$tpl->assign('nodeCount', count($nodeInfo));
$tpl->assign('nodeNum', $nodeNum);
$tpl->assign('refreshTime', (0 <= _PGPOOL2_STATUS_REFRESH_TIME) ?
_PGPOOL2_STATUS_REFRESH_TIME * 1000 : 5000);
// Display
$tpl->display('innerNodeServerStatus.tpl');