Страница 1 из 5

Помогите с мониторингом системы Raspberry PI3.

Добавлено: Пт ноя 03, 2017 10:06 am
silverzab
Всем привет!!!
Натолкнулся на статью мониторинга системы http://dmitrysnotes.ru/raspberry-pi-3-m ... okazatelej (не реклама).
Помогите пожалуйста с внедрением в MajorDomo

Re: Помогите с мониторингом системы Raspberry PI3.

Добавлено: Пт ноя 03, 2017 10:10 am
nick7zmail
А в чем собственно проблема то? Всё ж из консоли работает...забирайте просто данные в МД и всё...

Re: Помогите с мониторингом системы Raspberry PI3.

Добавлено: Пт ноя 03, 2017 11:35 am
silverzab
nick7zmail писал(а):А в чем собственно проблема то? Всё ж из консоли работает...забирайте просто данные в МД и всё...
Новичок, учусь, подскажите где почитать

Re: Помогите с мониторингом системы Raspberry PI3.

Добавлено: Пт ноя 03, 2017 12:23 pm
nick7zmail
Раз 10 наверное это сообщение на форуме уже писал...

Код: Выделить всё

$temp=exec('cat /sys/class/thermal/thermal_zone0/temp')/1000;
sg('server.cputemp', round($temp,1));
Пример для температуры. Аналогично забираете другие параметры, и записываете в свойства...

Вроде есть какой-то системный монитор со встроенным веб-сервером...красивенький, но нагружает и без того слабенький проц дополнительно. Название точно не помню, но на форуме точно упоминали..
Это вроде не он, но что-то похожее...https://github.com/oopsmonk/rpi-monitor
просто встраиваете в одну из домашних страниц, и всё.
Вот вроде он http://rpi-experiences.blogspot.ru/p/rpi-monitor.html

Re: Помогите с мониторингом системы Raspberry PI3.

Добавлено: Сб ноя 25, 2017 9:59 am
Logrus

Код: Выделить всё

//CPU temp
$cpu_temp=shell_exec('cat /sys/class/thermal/thermal_zone0/temp') / 1000;
$cpu_temp=round($cpu_temp,1);
setGlobal("ThisComputer.CPU_temp",$cpu_temp); // запишем значение

//CPU usage
$cpu_usage=exec("top -bn 1 | awk '{print $9}' | tail -n +8 | awk '{s+=$1} END {print s}'");
setGlobal("ThisComputer.CPU_usage",$cpu_usage); // запишем значение

//System uptime
$sys_uptime=shell_exec("uptime");
$sys_uptime = explode(" up ", $sys_uptime);
$sys_uptime = explode(",", $sys_uptime[1]);
$sys_uptime = $sys_uptime[0].", ".$sys_uptime[1];
setGlobal("ThisComputer.System_uptime",$sys_uptime); // запишем значение

//Memory usage/total
$mem_total=exec("cat /proc/meminfo | grep MemTotal | awk '{print $2}'");
$mem_usage=$mem_total - exec("cat /proc/meminfo | grep MemFree | awk '{print $2}'");
$sys_memory=round($mem_usage * 100 / $mem_total, 1);
setGlobal("ThisComputer.System_memory",$sys_memory); // запишем значение

//Memory Card
$bytes = disk_free_space("."); 
$si_prefix = array( 'B', 'KB', 'MB', 'GB', 'TB', 'EB', 'ZB', 'YB' );
$base = 1024;
$class = min((int)log($bytes , $base) , count($si_prefix) - 1);
$temp = round($bytes / pow($base,$class)) . ' ' . $si_prefix[$class];
setGlobal('System_freespace',$temp); // запишем значение
 
честно стырено, к примеру в сценарий и запуск раз в минуту
про вывести, много способов (один из на сцену)
СпойлерПоказать
1.PNG
1.PNG (102.64 КБ) 8716 просмотров
если образ от сергея - стандартная сцена
2.PNG
2.PNG (91.9 КБ) 8716 просмотров
клик по кнопке под эко режимом - загрузка процессора вызывает график
3.PNG
3.PNG (49.59 КБ) 8716 просмотров
сцены - температура и загрузка распберри скопированы с температуры ниже
4.PNG
4.PNG (29.64 КБ) 8716 просмотров
часть настроек (изменял что, но по всем пунктам норм, мин, макс пройтись) в свойствах этих данных в моем компьютере включена история

Re: Помогите с мониторингом системы Raspberry PI3.

Добавлено: Сб дек 09, 2017 10:46 pm
ypiter2006
Подскажите , как вставить мониторинг сервера в меню управления?

Re: Помогите с мониторингом системы Raspberry PI3.

Добавлено: Вс дек 10, 2017 11:45 am
Logrus
СпойлерПоказать
1.PNG
1.PNG (18.51 КБ) 8501 просмотр
на примере State, куда добавить ниже
2.PNG
2.PNG (54.02 КБ) 8501 просмотр
здесь вставить то что приведено ниже

Код: Выделить всё

<br/>
Температура цп: %ThisComputer.CPU_temp%
<br/>
Загрузка цп: %ThisComputer.CPU_usage%
по аналогии дальше

Re: Помогите с мониторингом системы Raspberry PI3.

Добавлено: Вс дек 10, 2017 8:43 pm
ypiter2006
Logrus писал(а):
СпойлерПоказать
1.PNG
на примере State, куда добавить ниже
2.PNG
здесь вставить то что приведено ниже

Код: Выделить всё

<br/>
Температура цп: %ThisComputer.CPU_temp%
<br/>
Загрузка цп: %ThisComputer.CPU_usage%
 
по аналогии дальше
А можно увидеть, как это выглядит у Вас в меню :)

Re: Помогите с мониторингом системы Raspberry PI3.

Добавлено: Вс дек 10, 2017 8:49 pm
Logrus
СпойлерПоказать
меню.PNG
меню.PNG (31.88 КБ) 8457 просмотров
сцена.PNG
сцена.PNG (4.91 КБ) 8457 просмотров
специально добавил, так использую на сцене, в меню тоже можно раскрасить и прочих красивостей навести

Re: Помогите с мониторингом системы Raspberry PI3.

Добавлено: Вс дек 10, 2017 8:59 pm
Vovix
а у меня так в меню:
Скриншот 2017-12-10 21.52.34.png
Скриншот 2017-12-10 21.52.34.png (30.21 КБ) 8451 просмотр
а поскольку я немного извращенец, то код у меня такой:
СпойлерПоказать

Код: Выделить всё

<style type="text/css">    
progress {    
    -webkit-appearance: none;    
    height: 14px;    
    width: 120px;    
}    
progress[value]::-webkit-progress-bar {    
    background-color: #eee;    
    border-radius: 3px;    
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.5) inset;    
}
     s_green progress[value]::-webkit-progress-value {    
    background-color: green;    
    border-radius: 3px;
}
    s_orange progress[value]::-webkit-progress-value {    
    background-color: orange;    
    border-radius: 3px;
}
    s_red progress[value]::-webkit-progress-value {    
    background-color: red;    
    border-radius: 3px;    
}  
</style>

<div align="center" style="font-size:14px;"><span style="font-size:24px; color:orange;"><b>Алиса</b></span><br/>
    <table border="1" cellspacing="2" cellpadding="2" rules="rows">
     
        <tbody>
            <tr>
                <td colspan="2" align="center">
                    <b>CPU: <span style="font-size:12px; color:orange;">%ThisComputer.CPUtip%</span></b><br/>
                </td>
            </tr>

            <tr>
                <td>Внешний</br>ip-адрес</td>
                <td align="right"><span style="font-size:12px; color:orange;">%ThisComputer.MyIPext%</span></td>
            </tr> 
             
            <tr>
                <td>Внутренний</br>ip-адрес</td>
                <td align="right"><span style="font-size:12px; color:orange;">%ThisComputer.MyIPint%</span></td>
            </tr>
         
            <tr>
                <td>Последнее</br>сообщение</td>
                <td align="right">"<span style="font-size:12px; color:orange;">%ThisComputer.lastSayMessage%</span>"</td>
            </tr>


            <tr>
                <td>Уровень</br>громкости</td>
                 <td align="left"><s_orange><progress value="%ThisComputer.volumeLevel%" max="100"></progress></s_orange>&nbsp;<span style="font-size:12px; color:orange;">%ThisComputer.volumeLevel%</span>&nbsp;%</td>
            </tr>

            <tr>
                <td>Занятость</br>HDD</td>
                <!-- 
                <td align="left"><s_orange><progress value="%ThisComputer.DISKused%" max="100"></progress></s_orange>&nbsp;<span style="font-size:12px; color:orange;">%ThisComputer.DISKused%</span>&nbsp;%</td>
                 -->
                 <td align="left"><s_%ThisComputer.DISKused_color%><progress value="%ThisComputer.DISKused%" max="100"></progress></s_%ThisComputer.DISKused_color%>&nbsp;<span style="font-size:12px; color:orange;">%ThisComputer.DISKused%</span>&nbsp;%</td>
            </tr>

            <tr>
                <td>Загрузка</br>CPU</td>
                <!--
                <td align="left"><s_orange><progress value="%ThisComputer.CPUload%" max="100"></progress></s_orange>&nbsp;<span style="font-size:12px; color:orange;">%ThisComputer.CPUload%</span>&nbsp;%</td>
                -->
                <td align="left"><s_%ThisComputer.CPUload_color%><progress value="%ThisComputer.CPUload%" max="100"></progress></s_%ThisComputer.CPUload_color%>&nbsp;<span style="font-size:12px; color:orange;">%ThisComputer.CPUload%</span>&nbsp;%</td>
            </tr>

            <tr>
                <td>Температура</br>CPU</td>
                <!--
                <td align="left"><s_orange><progress value="%ThisComputer.CPUtemp%" max="70"></progress></s_orange>&nbsp;<span style="font-size:12px; color:orange;">%ThisComputer.CPUtemp%</span>&nbsp;°C</td>
                -->
                <td align="left"><s_%ThisComputer.CPUtemp_color%><progress value="%ThisComputer.CPUtemp%" max="70"></progress></s_%ThisComputer.CPUtemp_color%>&nbsp;<span style="font-size:12px; color:orange;">%ThisComputer.CPUtemp%</span>&nbsp;°C</td>
            </tr>

            <tr>
                <td>Вентилятор</br>CPU</td>
                <td align="right"><span style="font-size:12px; color:orange;">%ThisComputer.MBfan1%</span>&nbsp;RPM</td>
            </tr>

        </tbody>
     
    </table>

</div>