<?php $title = "Slony Daemon Manager for Cluster {$slony_cluster_name}"; template::inc('intranet', 'top'); $running = slony::get_running_slons(); $running_by_node = slony::get_running_slons_by_node($running); //var_dump($running); //echo " ||| "; //var_dump($running_by_node); function print_kill_button($node_id, $pid, $callback = NULL) { if (!$callback) { $callback = "function(){location.reload(true);}"; } $ide = encrypt($node_id, 'slony_node'); ?> <input type='button' value='Kill' onclick="ajax_kill('<?php echo $ide; ?> ',<?php echo $pid; ?> ,<?php echo $callback; ?> );" /> <?php } ?> <script type='text/javascript' src='/pages/dev/slony/slony.js'></script>
$node = aql::profile('slony_node', $id); $node['subscribed'] ? slony::unsubscribe_node($id) : slony::subscribe_node($id); break; case 'drop': slony::drop_node($id); break; case 'add': slony::add_node($id); case 'promote': slony::promote($id); break; case 'uninstall': slony::uninstall(); break; case 'status': $not_running = slony::get_number_of_nodes() - count(slony::get_running_slons()); if ($not_running) { echo "<strong class='status status_bad'>{$not_running} node" . ($not_running > 1 ? 's are' : ' is') . " not replicating!</strong>"; } else { echo "<strong class='status status_good'>All nodes are replicating.</strong>"; } break; case 'kill': //killing pids given to us via javascript has the potential //to wreak havoc if somebody is trying to send non-slony pids... //for instance, someone could feasibly kill our database, or apache... //so we check the given values first to see if they match our slony pids $pid = $_POST['b']; if (!array_key_exists($pid, slony::ps($id))) { echo "No slony related processes are running with pid {$pid}, are you being shady?"; } else {