mirror of
https://github.com/munin-monitoring/contrib.git
synced 2018-11-08 00:59:34 +01:00
129 lines
4.2 KiB
Plaintext
129 lines
4.2 KiB
Plaintext
|
#!/usr/bin/php
|
||
|
<?php
|
||
|
###########################################################
|
||
|
## - Bukkit shame per day Munin plugin - ##
|
||
|
###########################################################
|
||
|
## Script by: ##
|
||
|
## Jonas Friedmann (@frdmn) ##
|
||
|
## http://frd.mn ##
|
||
|
###########################################################
|
||
|
## MySQL ##
|
||
|
###########################################################
|
||
|
|
||
|
$hostname = 'localhost';
|
||
|
$username = 'sql';
|
||
|
$password = 'pass';
|
||
|
$database = 'sql';
|
||
|
$port = 3306;
|
||
|
|
||
|
###########################################################
|
||
|
## DON'T EDIT THIS ##
|
||
|
###########################################################
|
||
|
if ((count($argv) > 1) && ($argv[1] == 'config'))
|
||
|
{
|
||
|
print("graph_title Bukkit / Ultrabans - shame per day
|
||
|
graph_category bukkit_sql
|
||
|
graph_vlabel amount of shame per day
|
||
|
graph_args --base 1000 -l 0
|
||
|
unban.type GAUGE
|
||
|
unban.label unbans
|
||
|
kick.type GAUGE
|
||
|
kick.label kicks
|
||
|
warning.type GAUGE
|
||
|
warning.label warnings
|
||
|
ban.type GAUGE
|
||
|
ban.label bans
|
||
|
ipban.type GAUGE
|
||
|
ipban.label ipbans
|
||
|
fine.type GAUGE
|
||
|
fine.label fines
|
||
|
jail.type GAUGE
|
||
|
jail.label jails
|
||
|
permban.type GAUGE
|
||
|
permban.label permbans
|
||
|
mute.type GAUGE
|
||
|
mute.label mutes
|
||
|
");
|
||
|
exit();
|
||
|
}
|
||
|
|
||
|
## Construct 'minumum' timstamp
|
||
|
$current = mktime();
|
||
|
$today = mktime(0, 0, 0, date("n", $current), date("j", $current), date("Y", $current));
|
||
|
|
||
|
## Initiate connection
|
||
|
$connection = mysqli_connect($hostname, $username, $password, $database, $port);
|
||
|
|
||
|
## Check connection
|
||
|
if (mysqli_connect_errno()) {
|
||
|
printf("Connect failed: %s\n", mysqli_connect_error());
|
||
|
exit();
|
||
|
}
|
||
|
|
||
|
## Select queries for unbans return the amount of rows
|
||
|
if ($result = mysqli_query($connection, "SELECT name FROM banlist WHERE type = 5 AND time > $today")) {
|
||
|
## Print values
|
||
|
print('unban.value ' . mysqli_num_rows($result) . "\n");
|
||
|
}
|
||
|
|
||
|
## Select queries for kicks return the amount of rows
|
||
|
if ($result = mysqli_query($connection, "SELECT name FROM banlist WHERE type = 3 AND time > $today")) {
|
||
|
## Print values
|
||
|
print('kick.value ' . mysqli_num_rows($result) . "\n");
|
||
|
}
|
||
|
|
||
|
## Select queries for warnings return the amount of rows
|
||
|
if ($result = mysqli_query($connection, "SELECT name FROM banlist WHERE type = 2 AND time > $today")) {
|
||
|
## Print values
|
||
|
print('warning.value ' . mysqli_num_rows($result) . "\n");
|
||
|
}
|
||
|
|
||
|
## Select queries for bans return the amount of rows
|
||
|
if ($result = mysqli_query($connection, "SELECT name FROM banlist WHERE type = 0 AND time > $today")) {
|
||
|
## Print values
|
||
|
print('ban.value ' . mysqli_num_rows($result) . "\n");
|
||
|
}
|
||
|
|
||
|
## Select queries for ipbans return the amount of rows
|
||
|
if ($result = mysqli_query($connection, "SELECT name FROM banlist WHERE type = 1 AND time > $today")) {
|
||
|
## Print values
|
||
|
print('ipban.value ' . mysqli_num_rows($result) . "\n");
|
||
|
}
|
||
|
|
||
|
## Select queries for fines return the amount of rows
|
||
|
if ($result = mysqli_query($connection, "SELECT name FROM banlist WHERE type = 4 AND time > $today")) {
|
||
|
## Print values
|
||
|
print('fine.value ' . mysqli_num_rows($result) . "\n");
|
||
|
}
|
||
|
|
||
|
## Select queries for jails return the amount of rows
|
||
|
if ($result = mysqli_query($connection, "SELECT name FROM banlist WHERE type = 6 AND time > $today")) {
|
||
|
## Print values
|
||
|
print('jail.value ' . mysqli_num_rows($result) . "\n");
|
||
|
}
|
||
|
|
||
|
## Select queries for permbans return the amount of rows
|
||
|
if ($result = mysqli_query($connection, "SELECT name FROM banlist WHERE type = 9 AND time > $today")) {
|
||
|
## Print values
|
||
|
print('permban.value ' . mysqli_num_rows($result) . "\n");
|
||
|
}
|
||
|
|
||
|
## Select queries for mutes - part 1 return the amount of rows
|
||
|
if ($result = mysqli_query($connection, "SELECT name FROM banlist WHERE type = 7 AND time > $today")) {
|
||
|
## Store result
|
||
|
$tmp1 = mysqli_num_rows($result);
|
||
|
}
|
||
|
|
||
|
## Select queries for mutes - part 2 return the amount of rows
|
||
|
if ($result = mysqli_query($connection, "SELECT name FROM banlist WHERE type = 8 AND time > $today")) {
|
||
|
## Store result
|
||
|
$tmp2 = mysqli_num_rows($result);
|
||
|
}
|
||
|
|
||
|
$mutes = $tmp1 + $tmp2;
|
||
|
|
||
|
print('mute.value ' . $mutes . "\n");
|
||
|
|
||
|
## Close connection
|
||
|
mysqli_close($connection);
|
||
|
?>
|