Возможно вы искали: 'HoverRace'

May 15 2025 18:54:55
  • Как сделать 8Gamers.Ru домашней страницей?
  • Игры
    • База данных по играх
    • Игровые новости
    • Игровая индустрия
    • Обзоры на игры
    • Прохождения игр
    • Гайды к играм
    • Превью о играх
    • Игровые тизеры
    • Игровые арты
    • Игровые обои
    • Игровые скриншоты
    • Игровые обложки
    • Игровые трейлеры
    • Игровое видео
    • Вышедшие игры
    • Ближайшие релизы игр
  • Кино и ТВ
    • База данных по кино
    • Статьи о кино
    • Постеры
    • Кадры из кино
    • Кино трейлеры
    • Сегодня в кино
    • Скоро в кино
  • Комиксы и манга
    • Манга по алфавиту
    • База данных по комиксах
    • Читать онлайн комиксы
    • Читать онлайн манга
    • База персонажей
  • Читы и коды
    • Чит-коды для PC игр
    • Чит-коды для консольных игр
    • Трейнеры
    • Коды Game Genie
  • Моддинг
    • Модификации
    • Карты к играм
    • Программы для моддинга
    • Статьи о моддинге
  • Геймдев
    • Всё о создании игр
    • Список движков
    • Утилиты в помощь игроделу
    • Конструкторы игр
    • Игровые движки
    • Библиотеки разработки
    • 3D-модели
    • Спрайты и тайлы
    • Музыка и звуки
    • Текстуры и фоны
  • Рецензии
    • Игры
    • Кино
    • Аниме
    • Комиксы
    • Мангу
    • Саундтреки
  • Саундтреки
    • Лирика
  • Файлы
    • Патчи к играм
    • Русификаторы к играм
    • Сохранения к играм
    • Субтитры к кино
  • Медиа
    • Видео
    • Фото
    • Аудио
    • Фан-арты
    • Косплей
    • Фото с виставок
    • Девушки из игр
    • Рисунки
    • Рисуем онлайн
    • Фотохостинг
  • Юмор
    • Анекдоты
    • Афоризмы
    • Истории
    • Стишки и эпиграммы
    • Тосты
    • Цитаты
  • Флеш
    • Азартные
    • Аркады
    • Бродилки
    • Гонки
    • Для девочек
    • Для мальчиков
    • Драки
    • Квесты
    • Леталки
    • Логические
    • Мультфильмы
    • Открытки
    • Приколы
    • Разное
    • Спорт
    • Стратегии
    • Стрелялки
Статистика

Статей: 87772
Просмотров: 96111483
Игры
Injustice:  Gods Among Us
Injustice: Gods Among Us
...
Dark Souls 2
Dark Souls 2
Dark Souls II - вторая часть самой хардкорной ролевой игры 2011-2012 года, с новым героем, сюжето...
Battlefield 4
Battlefield 4
Battlefield 4 - продолжение венценосного мультиплеер-ориентированного шутера от первого ли...
Кино
Steins;Gate
Steins;Gate
Любители японской анимации уже давно поняли ,что аниме сериалы могут дать порой гораздо больше пи...
Ку! Кин-дза-дза
Ку! Кин-дза-дза
Начинающий диджей Толик и всемирно известный виолончелист Владимир Чижов встречают на шумной моск...
Обзоры на игры
• Обзор Ibara [PCB/PS2] 18357
• Обзор The Walking ... 18801
• Обзор DMC: Devil M... 19879
• Обзор на игру Valk... 15877
• Обзор на игру Stars! 17764
• Обзор на Far Cry 3 17948
• Обзор на Resident ... 16024
• Обзор на Chivalry:... 17508
• Обзор на игру Kerb... 17981
• Обзор игры 007: Fr... 16619
Превью о играх
• Превью к игре Comp... 17960
• Превью о игре Mage... 14464
• Превью Incredible ... 14721
• Превью Firefall 13479
• Превью Dead Space 3 16334
• Превью о игре SimC... 14730
• Превью к игре Fuse 15442
• Превью Red Orche... 15542
• Превью Gothic 3 16343
• Превью Black & W... 17354
Главная » Статьи » Разное » Мониторинг дискового пространства Windows с помощью Perl (perl disk monitoring wmi)

Мониторинг дискового пространства Windows с помощью Perl (perl disk monitoring wmi)

Ключевые слова: perl, disk, monitoring, wmi, (найти похожие документы)

From: Pavel Ustyugov
Date: Mon, 27 Apr 2008 17:02:14 +0000 (UTC)
Subject: Мониторинг дискового пространства Windows с помощью Perl

Данный скрипт позволет мониторить свободное пространство логических дисков на
Windows машинах, с отправкой уведомления на email в случае малогого количества
свободного места на одном из дисков. Нормально работает под XP(SP2) и W2003 SERVER.
На других системах не тестировался. В принципе, должен работать везде где есть
поддержка WMI.

Идея взята от сюда.

Для работы скрипта необходим: ActivePerl

В принципе, данный способ предоставляет широкие возможности по мониторингу
Windows серверов. Доступные классы WMI можно глянуть тут.

1) Настраиваем параметры SMTP.
2) Настраиваем порограммы предупреждения.
3) Загоняем в шедуллер и вперед.


# Win32 disk space monitor
# Tested on ActivePerl
# CopyLeft Pavel Ustyugov aka Pahanivo
# Usage: script.pl [force]
# force - force send report (if warning not found)

my $_script_name = "Win32 disk space monitor";
my $_script_version = "0.3.3";
################################################################################

use strict;
use Win32:SurprisedLE qw(in);
use Net::SMTP;

sub result_out($);
sub mail_out($);
sub b_to_G ($);

################################################################################

# Configure - setup you own parameters below

my $Out_Target = "smtp"; #stdout - on screen, email notify don't send; smtp - by mail notify
my $Force_Notify = 0; #0 - send notify by email if warnings found, 1 - send notify by email always
my @Mail_To_List = (
'admin1@test.ru',
'admin2@test.ru',
'admin3@test.ru'
); #list of recipients
my $Mail_From = 'file-server@test.ru';
my $Mail_LocalName = 'localhost'; #change this if have problem with SMTP `helo/ehlo`
my $Mail_SMTP_server = '195.195.195.195';

my @FreeSpaceThreshold = (
["ALERT" , 536870912 ], #(512M)
["CRITICAL" , 1073741824], #(1G)
["WARNING" , 2147483648] #(2G)
); #Threshold must be ascending series!

################################################################################

my $arg;
while ($arg = shift @ARGV) {
if ($arg eq "force") {$Force_Notify = 1;}
}
my $WMIServices;
my $Namespace = "\root\cimv2";
my $DriveCollection;
my $Drive;
my $Machine = "."; #local machine
my $Result;
my $Status = 0; #warning counter
my $i;
my ($Dsec,$Dmin,$Dhour,$Dmday,$Dmon,$Dyear) = (localtime(time))[0,1,2,3,4,5];
$Dmon++; $Dyear+=1900;

$WMIServices = Win32:SurprisedLE->GetObject( "winmgmts://" . $Machine . $Namespace );

if (!defined($WMIServices))
{
$Result = "Critical error: WMI service connect problemn";
$Status ++;
result_out($Result);
exit(1);
}

$DriveCollection = $WMIServices->ExecQuery("SELECT * FROM Win32_LogicalDisk WHERE DriveType=3" );

$Result .= "System Disk FS Size(Gb) Free(Gb) Usage Statusn";

foreach $Drive ( in( $DriveCollection ) ) {
my $DiskUsage;
if (defined($Drive->{Size}) ) {
$DiskUsage = (($Drive->{Size} - $Drive->{FreeSpace}) / $Drive->{Size}) * 100;
} else {
$DiskUsage = 0 ;
}

my $Disk_status = "OK";
for ($i = 0; $i <= $#FreeSpaceThreshold; $i++) {
if ($Drive->{FreeSpace} < $FreeSpaceThreshold[$i][1] ) {
$Disk_status = $FreeSpaceThreshold[$i][0];
$Status ++;
last;
}
}

$Result .= sprintf ("%-11s %-6s %-7s %8.3f %8.3f %05.2f%% %-6sn",
substr ($Drive->{SystemName}, 0, 10),
$Drive->{Name},
$Drive->{FileSystem},
b_to_G($Drive->{Size}),
b_to_G($Drive->{FreeSpace}),
$DiskUsage,
$Disk_status
);
}
result_out($Result);
exit(0);

################################################################################

sub result_out($) {
my $Text = shift @_;
$Text = "Date: " . sprintf ("%04d-%02d-%02d %02d:%02d:%02d",
$Dyear, $Dmon, $Dmday, $Dhour, $Dmin, $Dsec) . "n" .
($Status ? "Warnings found: ${Status}nn" : "Warnings not foundnn") .
$Text;
if ($Force_Notify || $Status || $Out_Target eq "stdout") {
if ($Out_Target eq "smtp") {
mail_out($Text);
} else {
print $Text;
}
}
}

sub mail_out($) {
my $Text = shift @_;
my $Mail_Text;
my $Mail_Subject = "Disk space monitor report (DO NOT REPLY)";
if ($Status) {$Mail_Subject = "!!!WARNING!!! LOW DISK SPACE (DO NOT REPLY)"; }
for ($i = 0; $i <= $#Mail_To_List; $i++) {
#header
$Mail_Text = qq|From: ${Mail_From}n| .
qq|To: ${Mail_To_List[$i]}n| .
qq|Subject: ${Mail_Subject}nn|;
#body
$Mail_Text .= $Text;
$Mail_Text .= qq|n${_script_name} v. ${_script_version}n|;
my $SMTP = Net::SMTP->new( Host => $Mail_SMTP_server,
Hello => $Mail_LocalName,
Timeout => 60,
Debug => 0
);
$SMTP->mail($Mail_From);
$SMTP->to($Mail_To_List[$i]);
$SMTP->data();
$SMTP->datasend("${Mail_Text}");
$SMTP->dataend();
$SMTP->quit;
}
}

sub b_to_G ($) {
return ((shift @_) / 1024 /1024 /1024);
}
1107 Прочтений •  [Мониторинг дискового пространства Windows с помощью Perl (perl disk monitoring wmi)] [08.05.2012] [Комментариев: 0]
Добавил: Ukraine Vova
Ссылки
HTML: 
[BB Url]: 
Похожие статьи
Название Добавил Добавлено
• Мониторинг дискового пространства W... Ukraine Vova 08.05.2012
Ни одного комментария? Будешь первым :).
Пожалуйста, авторизуйтесь для добавления комментария.

Проект входит в сеть сайтов «8Gamers Network»

Все права сохранены. 8Gamers.NET © 2011 - 2025

Статьи
Рецензия на Pressure
Рецензия на Pressure
Чтобы обратить на себя внимание, начинающие маленькие разработчики, как правило, уходят в жанры, ...
Рецензия на Lost Chronicles of Zerzura
Рецензия на Lost Chron...
Игры, сделанные без любви и старания, похожи на воздушный шар – оболочка есть, а внутри пусто. Lo...
Рецензия на The Bridge
Рецензия на The Bridge
«Верх» и «низ» в The Bridge — понятия относительные. Прогуливаясь под аркой, можно запросто перей...
Рецензия на SimCity
Рецензия на SimCity
Когда месяц назад состоялся релиз SimCity, по Сети прокатилось цунами народного гнева – глупые ош...
Рецензия на Strategy & Tactics: World War 2
Рецензия на Strategy &...
Название Strategy & Tactics: World War II вряд ли кому-то знакомо. Зато одного взгляда на ее скри...
Рецензия на игру Scribblenauts Unlimited
Рецензия на игру Scrib...
По сложившейся традиции в информационной карточке игры мы приводим в пример несколько похожих игр...
Рецензия на игру Walking Dead: Survival Instinct, The
Рецензия на игру Walki...
Зомби и продукция-по-лицензии — которые и сами по себе не лучшие представители игровой биосферы —...
Обратная связь | RSS | Донейт | Статистика | Команда | Техническая поддержка