Agent update

This commit is contained in:
Frank Harris 2026-06-06 11:41:17 -05:00
parent c195c0930b
commit cc5f7bb90c
16 changed files with 474 additions and 85 deletions

View file

@ -44,9 +44,6 @@ use Archive::Extract; # Used to handle archived files.
use File::Find;
use Schedule::Cron; # Used for scheduling tasks
# Database connectivity for resource stats
use DBI; # Database interface for MySQL connection
# Compression tools
use IO::Compress::Bzip2 qw(bzip2 $Bzip2Error); # Used to compress files to bz2.
use Compress::Zlib; # Used to compress file download buffers to zlib.
@ -957,7 +954,8 @@ sub server_status_without_decrypt
}
elsif($game_port_listening)
{
$status = "UNRESPONSIVE";
$status = "ONLINE";
$ready = 1;
$last_error = "Game port is listening but the managed screen session is not running.";
}
else
@ -3188,6 +3186,20 @@ sub mon_stats
return "1;$encoded_content";
}
sub ensure_dbi_available
{
eval {
require DBI;
DBI->import();
1;
} and return 1;
my $error = $@ || "unknown error";
logger "DBI Perl module unavailable; resource stats database submission is disabled: $error";
scheduler_log_events("DBI Perl module unavailable; resource stats database submission is disabled");
return 0;
}
sub submit_resource_stats_to_db
{
my ($cpu_usage, $mem_used, $mem_total, $mem_percent, $disk_used, $disk_total, $disk_free, $disk_percent, $uptime, $load_1min, $load_5min, $load_15min) = @_;
@ -3202,6 +3214,10 @@ sub submit_resource_stats_to_db
return -1;
}
if (!ensure_dbi_available()) {
return -1;
}
my $dbh;
eval {
# Connect to MySQL database