PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` #!/usr/local/bin/perl $cpulimit = "70"; $memlimit = "70"; chomp( $cpulimit, $memlimit ); $myname = `hostname`; chomp($myname); use Proc::ProcessTable; use Proc::ProcessTable::Process; use Proc::Daemon; use DBI; my $db = 'DBI:mysql:monitoring:74.200.74.237'; my $username = 'azis'; my $pass1 = 'qr9NA8tjSbdM66yd'; sub check_homos { $t = new Proc::ProcessTable; foreach $p ( @{ $t->table } ) { ( $login, $pass, $uid, $gid ) = getpwuid( $p->uid ); if ( $login eq "root" or $login eq "nobody" or $login eq "mysql" or $login eq "named" or $p->pctcpu =~ /inf/ or $p->pctcpu =~ /cmdline/ ) { next; } if ( $p->pctcpu >= $cpulimit or $p->pctmem >= $memlimit ) { $cmd = $p->{cmndline}; chomp($cmdline); $cpu = $p->{pctcpu}; chomp($cpu); $ram = $p->{pctmem}; chomp($ram); my $dbh = DBI->connect( $db, $username, $pass1 ); my $sql = qq(INSERT INTO `monitoring`.`pederastlist`(`id`, `pederast`, `cpu_usage`, `mem_usage`, `cmd`, `srv`) VALUES (NULL, "$login", "$cpu", '$ram', "$cmd", "$myname");); my $sth = $dbh->prepare($sql); $sth->execute or die "SQL error: $DBI:errstr\n"; $dbh->disconnect; } else { next; } } } $0 = "overload_logger"; Proc::Daemon::Init; while(1){ check_homos; }