Сделать стартовойДобавить в закладки  
Главная страничка Главная страничка
В номере:

    Выходит с 17 июля 2008 г. цена договорная

    Опрос

    конечно, он настанет в 2012 г.
    да, но не в 2012 г.
    нет, это фантастика
    а что такое конец света
    а мне пофиг - я буду уже мертв



    Календарь
    «    Декабрь 2024    »
    ПнВтСрЧтПтСбВс
     1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031 

    Архив новостей
    Февраль 2025 (1)
    Декабрь 2024 (3)
    Ноябрь 2024 (2)
    Март 2022 (1)
    Декабрь 2021 (1)
    Август 2021 (1)

    Информация
    Скрипт и custom sensors в HOMEd - сделаем mini system monitor OpenWRT
    Умный дом » HOMEd
    автор: dimon, опубликовано: 1 декабря 2024

    Это не подробная инструкция что, как и зачем..
    Это просто мои "заметки на память".


    Попробуем создать custom sensor в системе домашней автоматизации HOMEd, который будет выступать в роли маленького системного монитора - показывать использование процессора, памяти, диска..


    1. Создаем кастомный сенсор. Web HOMEd - Custom - Add:

    Кастомный сенсор sysmon в HOMEdКастомный сенсор sysmon в HOMEd


    Name = имя сенсора
    ID = id сенсора
    Exposes = cpuidle, cpuuse, freemem, diskused, diskfree, diskusedpers
    Options = {"cpuidle":{"unit":"%"},"cpuuse":{"unit":"%"},"diskfree":{"unit":"MiB"},"diskused":{"unit":"MiB"},"diskusedpers":{"unit":"%"},"freemem":{"unit":"MiB"}}

    В Exposes создаем все сенсоры за которыми будем наблюдать, а в Options задаем величины в которых эти сенсоры измеряются.

    Если требуется накопительная статистика (а мы же хотим видеть графики), то в рекордере создаем записи для каждой сущности. Web HOMEd - Recorder - Add:

    Recorder sysmon HOMEdRecorder sysmon HOMEd



    2. Создаем скрипт ping. Подключаемся к шлюзу с OpenWRT помощью WinSCP, создаем файл скрипта.

    #!/bin/sh
    # Mini System Monitor для HOMEd - запрашивает инфу о CPU, RAM, ROM и обновляет
    # custom sensor в HOMEd установленном на OpenWRT
    # Автор tudimon.com
    
    # Free Memory
    freemem=`free -h |grep Mem | awk -F ' ' '{print $4}'`
    freemem_k=$(( $freemem / 1024 ))
    #echo $freemem 
    #echo $freemem_k
    
    # CPU idle
    cpuidle=`top -n1 | head -n2 |grep CPU | awk -F ' ' '{print $8}' | sed 's/%//'`
    #echo $cpuidle 
    
    # CPU use
    cpuuse=$(( 100 - $cpuidle ))
    #echo $cpuuse
    
    # disk /dev/root
    dskf=`df -m |grep /dev/root`
    #echo $dskf
    
    diskused=$(echo $dskf | cut -d " " -f 3)
    #echo $diskused
    diskfree=$(echo $dskf | cut -d " " -f 4)
    #echo $diskfree
    diskusedpers=$(echo $dskf | cut -d " " -f 5 | sed 's/%//') 
    #echo $diskusedpers
    
    mosquitto_pub -h localhost -p 1883 -t homed/fd/custom/gwt360sysmon -m "{\"cpuidle\":$cpuidle,\"cpuuse\":$cpuuse,\"freemem\":$freemem_k,\"diskused\":$diskused,\"diskfree\":$diskfree,\"diskusedpers\":$diskusedpers}" -u "homed" -P "pass_mqtt_homed"
    


    переменные в коде:
    -h localhost -p 1883 - адрес и порт mosquitto брокера (mqtt)
    -t homed/td/custom/telephone - топик mqtt куда кладем данные
    -u "homed" -P "pass_homed" - логин пароль от mqtt

    Даем права на выполнение скрипта chmod +x


    3. Создаем автоматизацию, которая дергать наш файл скрипта с заданной периодичностью. Web HOMEd - Automation - Add:

    Автоматизация по запуску shell скрипта sysmon в HOMEdАвтоматизация по запуску shell скрипта sysmon в HOMEd


    Здесь:
    Trigger = interval - срабатывать каждые 5 минут
    Actions = выполнить shell команду - запустить наш скрипт, который мы писали в п.2


    Вот так выглядит dashboard моего system monitor в HOMEd:

    дашборд моего системного монитора в HOMEd

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

    Другие новости по теме:

  • Ping сенсор и автоматизация по его статусу в HOMEd
  • Установка HOMEd на Домашний центр МТС
  • Arduino com-port echo
  • Бэкап флэшки в rar-архив
  • Автоматизация установки ethernet принтеров


  • Комментарии:

    Оставить комментарий



     
    Информация
     
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.


    Поиск по сайту:


    Облако тегов
    Android, Arduino, backup, CentOS, cmd, DLE, DLE хаки, domoticz, dzvents, Home Assistant, HomeAssistant, HOMEd, Linux, log, LUA, Monster, mqtt, ogf3, Template, VBS, w2k8, windows, WSH, xiaomi, бумага, бумажный самолетик, иструкция, Карты, кино, Навигация, оригами, программа, рецензия, рецепт, скрипт, фигуры, шаблон, Яндекс, яндекс-карты

    Показать все теги
    Реклама
    Главная страница | Регистрация | Добавить новость | Новое на сайте | Статистика | Поддержка | Правила ресурса Copyright © 2005-2021 by dimon - all right reserved!
    Тираж:           экземпляров.   Дизайн, верстка by dimon