Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • Changelogs
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Настройка
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    RouterOS
    Вывести простое имя очереди и статистику в одной команде.

    Вывести простое имя очереди и статистику в одной команде.

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Вывести простое имя очереди и статистику в одной команде., RouterOS
     
    gustkiller
    Guest
    #1
    0
    24.05.2008 19:07:00
    Привет! Нужен скрипт, который бы делал что-то вроде простой очереди, печатал имя, txbytes, rxbytes в одной команде... потому что простая очередь print печатает имя очереди, а простая очередь prin stats печатает все, кроме имени. Спасибо заранее.
     
     
     
    Giepie
    Guest
    #2
    0
    22.06.2008 06:20:00
    Привет всем!

    Подумал, что вам может быть интересно мое скрипт. Я не тестировал его для динамических очередей, так как он нужен мне только для статических:

    :log info “Запуск Queue Statistics Checker”

    ####
    #ОПРЕДЕЛЕНИЕ ПЕРЕМЕННЫХ
    #####
    :local slashchecker
    :local slashcheckertotal
    :local bytecountedup
    :local bytecounteddown
    :local megcountedup
    :local megcounteddown
    :local slashcounter
    :local precalcbytes
    :local pickbegin
    :local pickend
    :local slashcounted
    :local slashcounted1
    :local numberofqueues
    :local test
    :local interfacename
    :local emailvariable
    :local highsitename
    :local fromemailaddress
    :local toemailaddress

    ####
    #ПЕРЕМЕННЫЕ ОПРЕДЕЛЕНЫ#####

    #########
    #ЗДЕСЬ НУЖНО ИЗМЕНИТЬ ОТДЕЛЬНЫЕ ДЕТАЛИ:
    #########
    :set fromemailaddress “ highsite@domain.co.za ”
    :set toemailaddress “ admin@domain.co.za ”

    #########
    #КОНЕЦ ИЗМЕНЕНИЯ ОТДЕЛЬНЫХ ДЕТАЛЕЙ
    #########

    ####
    #ПОДСЧЁТ КОЛИЧЕСТВА ОЧЕРЕДЕЙ#####
    :set numberofqueues [/queue simple print count-only]
    :set highsitename [/system identity get name]

    #

    #ДОБАВИТЬ ДЕТАЛИ В ПЕРЕМЕННУЮ EMAIL##
    :set emailvariable "СТАТИСТИКА ОЧЕРЕДЕЙ ДЛЯ: $highsitename ОБЩЕЕ КОЛИЧЕСТВО ОЧЕРЕДЕЙ: $numberofqueues"

    #

    #ДОБАВИТЬ ДЕТАЛИ В ПЕРЕМЕННУЮ EMAIL ЗДЕСЬ##

    ####
    #НАЧАЛО ОСНОВНОГО ЦИКЛА ДЛЯ ОБРАБОТКИ ОЧЕРЕДЕЙ#####
    /queue simple
    :foreach n in=[/queue simple find priority=8] do={
    :local interfacename [/queue simple get [$n] name]

    ####
    #РАЗДЕЛЕНИЕ БАЙТОВ ЗАГРУЗКИ/СКАЧКИ ОТ ОЧЕРЕДИ#####
    #

    #ПРЕДНАСТРОЕННЫЕ ПЕРЕМЕННЫЕ##
    :local precalcbytes [:pick [/queue simple get [$n] bytes] 0 30]
    :set slashcheckertotal $precalcbytes
    :set pickbegin 1
    :set pickend 2
    :set slashcounter 0

    ####
    #НАЧАЛО СЛЭШ-ЧЕКЕРА#####
    /queue simple
    :for i from=1 to=20 do={
    :set pickbegin (pickbegin + 1)
    :set pickend (pickend + 1)
    :set slashchecker [:pick $slashcheckertotal $pickbegin $pickend]
    :if ($slashchecker = “/”) do={
    :set slashcounted $pickbegin
    } else={
    :set slashcounter ($slashcounter +1)
    }
    }
    #:log info “SLASHCOUNTED: $slashcounted”

    ####
    #КОНЕЦ СЛЭШ-ЧЕКЕР ЛООП#####

    ####
    #ПОЛУЧЕН СЛЭШ-ПИК КОЛИЧЕСТВО, НАЧАЛО РАЗДЕЛИЯ БАЙТОВ НА ЗАГРУЖКУ И СКАЧКУ#####
    :set slashcounted1 ($slashcounted + 1)
    :set bytecountedup [:pick $precalcbytes 0 $slashcounted]
    :set bytecounteddown [:pick $precalcbytes $slashcounted1 30]
    :set megcountedup ($bytecountedup / 1000000)
    :set megcounteddown ($bytecounteddown / 1000000)
    #:log info “INTERFACE NAME: $interfacename”
    #:log info “PRECALCBYTES: $precalcbytes”
    #:log info “BYTECOUNTEDUP $bytecountedup БАЙТ”
    #:log info “BYTECOUNTEDDOWN $bytecounteddown БАЙТ”
    #:log info “MEGCOUNTEDUP $megcountedup MB”
    #:log info “MEGCOUNTEDDOWN $megcounteddown MB”
    #:log info " "
    #:log info " "

    #

    #ДОБАВИТЬ ВЫШЕУПОМЯНУТЫЕ ДЕТАЛИ В ПЕРЕМЕННУЮ EMAIL##
    :set emailvariable "$emailvariable ИМЯ ОЧЕРЕДИ:\t\t\t$interfacename ОБЩЕЕ КОЛИЧЕСТВО БАЙТ:\t\t$precalcbytes ЗАГРУЖЕНО БАЙТ:\t\t$megcountedup MB СКАЧАНО БАЙТ:\t\t$megcounteddown MB"

    #

    #ОБНОВЛЕНИЕ ПЕРЕМЕННОЙ EMAIL ЗДЕСЬ##
    }

    ####
    #КОНЕЦ ЦИКЛА ПРОЦЕССА ОЧЕРЕДИ#####

    ####
    #ОТПРАВКА ДЕТАЛЕЙ НА EMAIL#####
    :set emailvariable "$emailvariable КОНЕЦ СТАТИСТИКИ ОЧЕРЕДЕЙ ДЛЯ: $highsitename"
    /tool e-mail send from=$fromemailaddress to=$toemailaddress server=196.25.240.94 subject=“$highsitename QUEUE Statistics” body=$emailvariable

    ####
    #КОНЕЦ ОТПРАВКИ EMAIL#####
    :log info “Общее количество обработанных очередей: $numberofqueues”
    :log info “Проверка статистики Queue ЗАВЕРШЕНА и отправлена по электронной почте на $toemailaddress”
    Наслаждайтесь!
     
     
     
    pjotr
    Guest
    #3
    0
    23.02.2009 21:38:00
    В версии 3.20 не работает. Подскажите, пожалуйста. Спасибо.
     
     
     
    Giepie
    Guest
    #4
    0
    23.02.2009 22:56:00
    Привет, Pjotr! Что именно не работает со скриптом? Ты в курсе, что IP-адрес SAIX изменился? SAIX рекомендует использовать smtp.saix.net вместо его IP, поскольку некоторые сегменты их сети разрешаются к разным адресам. Если проблема в том, что скрипт не отправляет почту, то, скорее всего, дело в SMTP-адресе. Попробуй пропингуй smtp.saix.net с highsite и посмотри, к какому адресу он разрешается. Если проблема в том, что скрипт не запускается из-за чего-то другого, мы могли бы копнуть глубже. Я бегло просмотрел скрипт, но очевидных проблем не увидел. Может, пришлешь нам больше информации о том, что именно не работает? Обычно, когда я что-то отлаживаю, я комментирую (#) большую часть скрипта и убираю комментарии по одному, пока не найду место, где он перестает работать. (или, альтернативно, добавляй :log error “скрипт здесь” в некоторых строках, запускай скрипт и двигай :log запись вниз, пока не найдешь, где он останавливается…). Надеюсь, эта информация оказалась полезной! G
     
     
     
    pjotr
    Guest
    #5
    0
    24.02.2009 14:50:00
    Если простая очередь является одним из правил какой-либо статистики данных, то скрипт падает.
     
     
     
    puzlan
    Guest
    #6
    0
    14.02.2012 13:43:00
    Если количество очередей > 1, отображается ошибка [admin@H] > /system script run script1
    2
    Ошибка сценария: нельзя разделить строку по интервалу времени
     
     
     
    neophyte
    Guest
    #7
    0
    15.03.2013 15:52:00
    work #####GOT SLASH PICK COUNT, STARTING BYTES UP AND DOWN SPLIT#####
    :set slashcounted1 ($slashcounted + 1)
    :set bytecountedup [:pick $precalcbytes 0 $slashcounted]
    :set bytecounteddown [:pick $precalcbytes $slashcounted1 30]
    #########################################################
    :if ($bytecountedup ="0/0") do={
                  :set bytecountedup "0"
                   :set bytecounteddown "0"
               }
    #########################################################
    :set megcountedup ($bytecountedup / 1000000)
    :set megcounteddown ($bytecounteddown / 1000000)

    #:log info "INTERFACE NAME: $interfacename"
    #:log info "PRECALCBYTES: $precalcbytes"
    #:log info "BYTECOUNTEDUP $bytecountedup BYTES"
    #:log info "BYTECOUNTEDDOWN $bytecounteddown BYTES"
    #:log info "MEGCOUNTEDUP $megcountedup MB"
    #:log info "MEGCOUNTEDDOWN $megcounteddown MB"
    #:log info " "
    #:log info " "
    ##ADD ABOVE INFO TO EMAIL VARIABLE##
    :set emailvariable "$emailvariable

    COMPUTER IP:\t\t\t$interfacename
    TOTAL BYTES:\t\t$precalcbytes
    UPLOADED MEGABYTES:\t\t$megcountedup MB
    DOWNLOADED MEGABYTES:\t\t$megcounteddown MB
    "
     
     
     
    wmp1988
    Guest
    #8
    0
    24.10.2013 08:23:00
    Привет, ребята! Знаю, тема старая, но интересно, как это работает на ROS 6.5? Мне нужно получить статистику общего количества отправленных и принятых байт для всех моих очередей. Очереди созданы статические, и во всех в разделе имени указано "Local - xxxxx" или "Management - xxxxx". Я не использовал комментарии ни для одной из очередей. Буду очень благодарен за любую информацию.

    С уважением,
    Wes.
     
     
     
    skot
    Guest
    #9
    0
    25.10.2013 16:22:00
    Если тебе нужны общие байты ВСЕХ простых очередей, попробуй вот это (измени строку с адресом электронной почты /tool на свои данные): /queue simple :local upload 0 :local download 0 :foreach i in=[find] do={ :local bytes [get $i bytes] :set upload ($upload + [:pick $bytes 0 [:find $bytes “/”]]) :set download ($download + [:pick $bytes ([:find $bytes “/”]+1) [:len $bytes]]) } /tool e-mail … body="Queue Stats - u: $upload, d: $download"Если хочешь протестировать это в консоли, заключи весь скрипт в скобки { } и замени строку с “/tool email…” на: :put "u: $upload, d: $download"Также можно посмотреть статистику каждой очереди, добавив эту строку после строки с “:set download…” :put ([get $i name] . " - " . [:pick $bytes 0 [:find $bytes “/”]] . " / " . [:pick $bytes ([:find $bytes “/”]+1) [:len $bytes]])
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры