contrib-munin/plugins/minecraft/bukkit-jsonapi-ramusage

66 lines
1.4 KiB
PHP
Executable File

#!/usr/bin/php
<?php
/**
* Bukkit RAM usage Munin plugin
* ---------------------------------
*
* Shows the current RAM usage of your Minecraft process
* an the total RAM (parsed via JSONAPI)
*
* Read more about my plugins on my blog:
* http://s.frd.mn/XJsryR
*
* Author: Jonas Friedmann (http://frd.mn)
* GitHub: https://github.com/yeahwhat-mc/munin-bukkit-plugins
*
*/
/**
* JSONAPI configuration
*/
$hostname = 'your-hostname';
$username = 'your-username';
$password = 'your-password';
$salt = 'your-salt';
$port = 20059;
/**
* !!! DO NOT EDIT THIS PART BELOW !!!
*/
if ((count($argv) > 1) && ($argv[1] == 'config'))
{
print("graph_title Bukkit / JSONAPI - RAM usage
graph_category games
graph_vlabel RAM usage in GB
graph_args --base 1024 -l 0
total.label total
total.type GAUGE
used.label used
used.type GAUGE
");
exit();
}
// Include JSONAPI.php SDK (get this file here: https://github.com/alecgorge/jsonapi/raw/master/sdk/php/JSONAPI.php)
require('/var/cache/munin/JSONAPI.php');
// Prepare API call
$api = new JSONAPI($hostname, $port, $username, $password, $salt);
$result = $api->callMultiple(array(
"system.getJavaMemoryUsage",
"system.getJavaMemoryTotal"
), array(
array(),
array(),
));
// Check for success
if ($result['result'] == 'success'){
// Print values
print('used.value ' . round($result['success'][0]['success']/1000,2) . "\n");
print('total.value ' . round($result['success'][1]['success']/1000,2) . "\n");
}
?>