Говоря об UPS`ах сразу приходит на ум компания APC, мировой лидер по производству источников бесперебойного питания и аккумуляторов к ним. Компания эта не нуждается в представлении и может гордится своими продуктами. Однако не все так так гладко в Датском Королевстве. Дело в том что для правильной работы UPS`а необходимо ПО с гибкой настройкой. Для этих целей существует пакет утилит PowerChute в двух редакциях.
PowerChute Personal Edition представляет собой ПО для домашних UPS`ов с интерфейсом COM или USB.
PowerChute Business Edition по сути PRO версия младшей редакции, но с поддержкой больших серверных UPS`ов с интерфейсом LAN, работают такие хранители спокойствия по стандартам и в любой ОС.
Я же являюсь владельцем простенького, но довольно функционального Back-UPS RS 700G, штука хорошая и выручала меня не раз. В принципе можно и обойтись и без ПО если вы не гик и не держите у себя дома домашний сервер. Так вот ближе к делу!
Захотелось мне как-то в одну холодную зимнюю ночь удаленно узнать не выключалось ли у меня дома электричество, и если да то насколько. Как известно любая программа контролирующая что либо ведет лог файл где описаны события. PowerChute не стал исключением он исправно вел лог в формате *.dat. Анализ структуры лога выполненный с помощью плагина к Notepad++, HEX-Editor выявил возможность конвертирования в теплый ламповый *.log, но программист из меня никудышный, поэтому как сказал товарищ Ильич «Мы пойдем другим путем!».
Гугление на тему альтернативного ПО вывело меня на программку Apcupsd которая рассчитана на *NIX системы, но имеет порт под windows выполненный с помощью Cygwin. Дистрибутив программы вести всего около 1МБ и был скачен в мгновение ока, установку делал всех модулей. После запуска в трее появилась иконка с доступом информации о моем девайсе. Лог файл имеет привычный текстовый стандарт и может хранится в любом месте. Можно было только радоваться, чем я и занялся. Однако, после беглого изучения документации я узнал что существует возможность мониторинга через браузер. Работает эта вкусность с помощью вкупе с апачем и выполнена в виде CGI скриптов. Немного приуныв, так-как предыдущая попытка заставить работать питон скрипты окончилась неудачей я сел за изучение httpd.conf. Танцы с бубном выдали результат при котором CGI таки активировалось и завелось, ниже приведен кусок конфига, для Apache 2.2 возможно кому нить пригодится.
Содержимое из папки \apcupsd1\cgi перекочевало в \Apache2.2\cgi\ в браузере по запросу 127.0.0.1/cgi/multimon.cgi торжественно высветилось окно!

Первоначальная радость сменилось огорчением вызванным некорректной кодировкой информации о часовом поясе. Причина проблемы была выявлена анализом исходного кода содержимого окна.
Гласил заголовок! А надпись кириллицей понятное дело была выполнена в windows-1251. Тут снова пришло на помощь Notepad++ с плагином HEX-Editor. Анализ и редактирование файла multimon.cgi привело к следующему.
После этого надпись в статусном окне гласила.

Конечно это не самое лучшее решение и я надеюсь что в следующих версиях программы эта проблема будет решена, но уже сейчас Apcupsd радует своей функциональностью и мультиплатформенностью. Напоследок еще один скриншотик.

PowerChute Personal Edition представляет собой ПО для домашних UPS`ов с интерфейсом COM или USB.
PowerChute Business Edition по сути PRO версия младшей редакции, но с поддержкой больших серверных UPS`ов с интерфейсом LAN, работают такие хранители спокойствия по стандартам и в любой ОС.
Я же являюсь владельцем простенького, но довольно функционального Back-UPS RS 700G, штука хорошая и выручала меня не раз. В принципе можно и обойтись и без ПО если вы не гик и не держите у себя дома домашний сервер. Так вот ближе к делу!
Захотелось мне как-то в одну холодную зимнюю ночь удаленно узнать не выключалось ли у меня дома электричество, и если да то насколько. Как известно любая программа контролирующая что либо ведет лог файл где описаны события. PowerChute не стал исключением он исправно вел лог в формате *.dat. Анализ структуры лога выполненный с помощью плагина к Notepad++, HEX-Editor выявил возможность конвертирования в теплый ламповый *.log, но программист из меня никудышный, поэтому как сказал товарищ Ильич «Мы пойдем другим путем!».
Гугление на тему альтернативного ПО вывело меня на программку Apcupsd которая рассчитана на *NIX системы, но имеет порт под windows выполненный с помощью Cygwin. Дистрибутив программы вести всего около 1МБ и был скачен в мгновение ока, установку делал всех модулей. После запуска в трее появилась иконка с доступом информации о моем девайсе. Лог файл имеет привычный текстовый стандарт и может хранится в любом месте. Можно было только радоваться, чем я и занялся. Однако, после беглого изучения документации я узнал что существует возможность мониторинга через браузер. Работает эта вкусность с помощью вкупе с апачем и выполнена в виде CGI скриптов. Немного приуныв, так-как предыдущая попытка заставить работать питон скрипты окончилась неудачей я сел за изучение httpd.conf. Танцы с бубном выдали результат при котором CGI таки активировалось и завелось, ниже приведен кусок конфига, для Apache 2.2 возможно кому нить пригодится.
<IfModule alias_module>
ScriptAlias /cgi/ "C:/Program Files/Apache Software Foundation/Apache2.2/cgi/"
<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
Содержимое из папки \apcupsd1\cgi перекочевало в \Apache2.2\cgi\ в браузере по запросу 127.0.0.1/cgi/multimon.cgi торжественно высветилось окно!

Первоначальная радость сменилось огорчением вызванным некорректной кодировкой информации о часовом поясе. Причина проблемы была выявлена анализом исходного кода содержимого окна.
<?xml version="1.0" encoding="UTF-8" ?>
Гласил заголовок! А надпись кириллицей понятное дело была выполнена в windows-1251. Тут снова пришло на помощь Notepad++ с плагином HEX-Editor. Анализ и редактирование файла multimon.cgi привело к следующему.
charset=utf-8 -->> charset=utf-9
encoding="UTF-8" -->> encoding="UTF-9"
После этого надпись в статусном окне гласила.

Конечно это не самое лучшее решение и я надеюсь что в следующих версиях программы эта проблема будет решена, но уже сейчас Apcupsd радует своей функциональностью и мультиплатформенностью. Напоследок еще один скриншотик.
