[Приложение] Open Hardware Monitor
Модератор: immortal
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
[Приложение] Open Hardware Monitor
Open Hardware Monitor (Mozilla Public License 2.0 )
http://openhardwaremonitor.org/
Собственно вот. Запускается как веб-сервер на 8085 порту и выдаёт всё, что только можно о состоянии компьютера. Вопрос с мониторингом компьютеров закрыт или тут есть подводные камни?
http://openhardwaremonitor.org/
Собственно вот. Запускается как веб-сервер на 8085 порту и выдаёт всё, что только можно о состоянии компьютера. Вопрос с мониторингом компьютеров закрыт или тут есть подводные камни?
- Рейтинг: 1.16%
- sergejey
- Site Admin
- Сообщения: 4284
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 75 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Мониторинг системных ресурсов локально и через сеть
Отличное приложение. Думаю, что закрыт
Из особенностей -- веб-сервер запускается, но для веб-переменных нужно использовать ссылку http://localhost:8085/data.json -- именно там динамические данные передаются.
Из особенностей -- веб-сервер запускается, но для веб-переменных нужно использовать ссылку http://localhost:8085/data.json -- именно там динамические данные передаются.
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 75
- Зарегистрирован: Чт ноя 29, 2012 4:13 pm
- Благодарил (а): 0
- Поблагодарили: 9 раз
Re: Мониторинг системных ресурсов локально и через сеть
Очень неплохо. Главное, чтобы заработало на том железе, на котором стоит MajorDoMo. У меня на рабочей машине под Windows 7 64bit всё вроде определилось хорошо. Вопрос в стабильности работы.Alex писал(а):Open Hardware Monitor (Mozilla Public License 2.0 )
http://openhardwaremonitor.org/
Собственно вот. Запускается как веб-сервер на 8085 порту и выдаёт всё, что только можно о состоянии компьютера. Вопрос с мониторингом компьютеров закрыт или тут есть подводные камни?
Вся инфа забирается с встроенного веб-сервера в json-формате по ссылке http://адрессервера:порт/data.json
P.S. Извините, опоздал
Андрей
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Мониторинг системных ресурсов локально и через сеть
Это работает!
- Вложения
-
- ohm
- ohm.png (20.74 КБ) 25958 просмотров
-
- cpu
- cpu.png (6.82 КБ) 25958 просмотров
-
- Сообщения: 289
- Зарегистрирован: Вс сен 16, 2012 9:39 am
- Благодарил (а): 0
- Поблагодарили: 1 раз
Re: Мониторинг системных ресурсов локально и через сеть
Выложите пожалуйста, скрины, что куда писать, спасибо!
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Мониторинг системных ресурсов локально и через сеть
Устанавливаем и запускаем OHM как сервер.
Option – Remote Web Server - Run
Настройки.
В веб-переменных вводим
--------------------------
Ссылка:
http://ip:8085/data.json
, где ip — адрес сервера
Шаблон поиска:
CPU Total", "Children[^^]{24}Value": "([^^]{4})
(это пример, - надо подбирать индивидуально)
Связанный объект.Свойство:
тут вводите свой объект.свойство
Интервал проверки:
60
Всё. Дальше работаем как с обычным объектом.
Option – Remote Web Server - Run
Настройки.
В веб-переменных вводим
--------------------------
Ссылка:
http://ip:8085/data.json
, где ip — адрес сервера
Шаблон поиска:
CPU Total", "Children[^^]{24}Value": "([^^]{4})
(это пример, - надо подбирать индивидуально)
Связанный объект.Свойство:
тут вводите свой объект.свойство
Интервал проверки:
60
Всё. Дальше работаем как с обычным объектом.
- Вложения
-
- mdm
- mdm.png (67.89 КБ) 25937 просмотров
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Мониторинг системных ресурсов локально и через сеть
Теперь подробности. У меня в файле http://ip:8085/data.json были такие строки (первые строки). К ним я подобрал такие шаблоны (вторые строки). Это работает, но, на самом деле, шаблоны некорректные. Они не учитывают изменения Min величины и Value величины. В шаблонах жёстко заданы смещения (24, 26, 27). Если меняется количество цифр в Min или Value — то шаблон промахивается.
-----------------------------------
Help! Кто хорошо понимает — поправьте шаблоны и выложите сюда, пожалуйста. Они должны учитывать изменение количества цифр в Min или Value.
-----------------------------------
Core #1 - #2", "Children": [], "Min": "56,5 В°C", "Value": "59,8 В°C", "Max": "64,4 В°C",
Core #1 - #2", "Children[^^]{27}Value": "([^^]{4})
CPU Total", "Children": [], "Min": "1,0 %", "Value": "26,9 %", "Max": "100,0 %"
CPU Total", "Children[^^]{24}Value": "([^^]{4})
33, "Text": "Memory", "Children": [], "Min": "28,1 %", "Value": "29,0 %", "Max":
33, "Text": "Memory", "Children[^^]{25}Valu
Fan #1", "Children": [], "Min": "948 RPM", "Value": "964 RPM", "Max": "969 RPM
Fan #1", "Children[^^]{26}Value": "([^^]{4})
Fan #2", "Children": [], "Min": "3515 RPM", "Value": "3515 RPM", "Max": "3590 RPM"
Fan #2", "Children[^^]{27}Value": "([^^]{4})
Temperature", "Children": [], "Min": "42,0 В°C", "Value": "43,0 В°C", "Max": "43,0 В°C", "ImageURL
Temperature", "Children[^^]{27}Value": "([^^]{4})
Ещё одна проблема. На сколько я понял OHM имеет опцию автозагрузки, но автозагружаясь не стартует веб-сервер. Кто может - помогите разобраться.
Проблема номер 3. Это персонально к Сергею. В веб-переменных есть пункт «Действие при изменении: », но иногда нужно не только действие «при изменении», но и действие «при обновлении», даже если величина не изменилась.
Зачем это нужно. На скриншоте видно, что часть датчиков имеют тёмную нижнюю часть, а часть светлую. Тёмные — это живые датчики, т. е. те, которые получили обновление в течении положенного периода, а светлые — дохлые, обновление которых по какой то причине не произошло. Так вот. При обычном обновлении легко отследить факт обновления, а в случае веб-переменных
--------------
если в течение (например) 1 минуты не изменялась контролируемая величина, то негде взять информацию, о том, что виртуальный датчик жив! FAN CPU и HDD temp выглядят дохлыми, потому, что их значение не менялось в течении минуты. На самом деле они живые и «здоровье» у них 100%!
--------------
-----------------------------------
Help! Кто хорошо понимает — поправьте шаблоны и выложите сюда, пожалуйста. Они должны учитывать изменение количества цифр в Min или Value.
-----------------------------------
Core #1 - #2", "Children": [], "Min": "56,5 В°C", "Value": "59,8 В°C", "Max": "64,4 В°C",
Core #1 - #2", "Children[^^]{27}Value": "([^^]{4})
CPU Total", "Children": [], "Min": "1,0 %", "Value": "26,9 %", "Max": "100,0 %"
CPU Total", "Children[^^]{24}Value": "([^^]{4})
33, "Text": "Memory", "Children": [], "Min": "28,1 %", "Value": "29,0 %", "Max":
33, "Text": "Memory", "Children[^^]{25}Valu
Fan #1", "Children": [], "Min": "948 RPM", "Value": "964 RPM", "Max": "969 RPM
Fan #1", "Children[^^]{26}Value": "([^^]{4})
Fan #2", "Children": [], "Min": "3515 RPM", "Value": "3515 RPM", "Max": "3590 RPM"
Fan #2", "Children[^^]{27}Value": "([^^]{4})
Temperature", "Children": [], "Min": "42,0 В°C", "Value": "43,0 В°C", "Max": "43,0 В°C", "ImageURL
Temperature", "Children[^^]{27}Value": "([^^]{4})
Ещё одна проблема. На сколько я понял OHM имеет опцию автозагрузки, но автозагружаясь не стартует веб-сервер. Кто может - помогите разобраться.
Проблема номер 3. Это персонально к Сергею. В веб-переменных есть пункт «Действие при изменении: », но иногда нужно не только действие «при изменении», но и действие «при обновлении», даже если величина не изменилась.
Зачем это нужно. На скриншоте видно, что часть датчиков имеют тёмную нижнюю часть, а часть светлую. Тёмные — это живые датчики, т. е. те, которые получили обновление в течении положенного периода, а светлые — дохлые, обновление которых по какой то причине не произошло. Так вот. При обычном обновлении легко отследить факт обновления, а в случае веб-переменных
--------------
если в течение (например) 1 минуты не изменялась контролируемая величина, то негде взять информацию, о том, что виртуальный датчик жив! FAN CPU и HDD temp выглядят дохлыми, потому, что их значение не менялось в течении минуты. На самом деле они живые и «здоровье» у них 100%!
--------------
-
- Сообщения: 75
- Зарегистрирован: Чт ноя 29, 2012 4:13 pm
- Благодарил (а): 0
- Поблагодарили: 9 раз
Re: Мониторинг системных ресурсов локально и через сеть
1. Создаем свойство(а). Например, ThisComputer.fan2 и ThisComputer.cputemp. Это будет скорость вентилятора и температура жесткого диска.Urbas81 писал(а):Выложите пожалуйста, скрины, что куда писать, спасибо!
2. Запрашиваем в браузере файл с данными: http://localhost:8085/data.json
3. Ищем в этом файле id необходимых параметров по имени сенсора. Например для вентилятора 2 параметр id будет иметь значение 18, а для общей температуры процессора 32.
Код: Выделить всё
{"id": 18, "Text": "Fan #2", "Children": [], "Min": "1092 RPM", "Value": "1166 RPM", "Max": "1236 RPM", "ImageURL": "images/transparent.png"}
{"id": 32, "Text": "CPU Package", "Children": [], "Min": "36,0 В°C", "Value": "40,0 В°C", "Max": "45,0 В°C", "ImageURL": "images/transparent.png"}
Код: Выделить всё
function searchJson($obj, $value)
{
global $sensorvalue;
foreach($obj as $item)
{
foreach($item as $child)
{
if(isset($child->id) && $child->id == $value)
{
$sensorvalue = $child->Value;
return;
}
searchJson($child,$value);
}
}
return null;
}
$ch = curl_init('http://localhost:8085/data.json');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$ohm = curl_exec($ch);
$json = json_decode($ohm);
searchJson($json,'18');
sg('ThisComputer.fan2',$sensorvalue);
searchJson($json,'32');
sg('ThisComputer.cputemp',$sensorvalue);
Какой именно параметр возвращать указано вот в этой строке:
Код: Выделить всё
$sensorvalue = $child->Value;
Сергей, просьба проинспектировать код, а то я не большой спец в php. С рекурсивностью я не перемудрил? Может можно было еще проще как-то из json'а всё это запросить ...
Андрей
Последний раз редактировалось raptorialfungus Ср дек 12, 2012 12:56 pm, всего редактировалось 1 раз.
Андрей