Jump to content

Recommended Posts

Posted

Всем привет. Хочу сделать график DVB сигнала.

Есть:

сервер какти

сервер с DVB (4 адаптера)

 

что сделал:

1. На удаленном сервере сделал скрипт, вывода сигнала/качество/бер

2. В настройках snmpd прописал по OIDу выдавать работу этого скрипта

3. На сервере с какти, сделал скрипт, который по OIDу обрабатывает вывод и выводит строку

qlty:85 sig:53 ber:0

4. Сделал Data Input Methods

dim.jpg

5. Создал Data Templates

dt.jpg

6. Создал Graph Templates

gt.jpg

 

Привязал все это к девайсу, в итоге имею ошибку rrd

RRDTool Command:

/usr/bin/rrdtool graph - \

--imgformat=PNG \

--start=-86400 \

--end=-300 \

--title='DVB signal' \

--rigid \

--base=1000 \

--height=240 \

--width=500 \

--alt-autoscale \

--vertical-label='' \

--slope-mode \

--font TITLE:10: \

--font AXIS:7: \

--font LEGEND:8: \

--font UNIT:7: \

DEF:a='/home/www/htdocs/tech/cactin/rra/iptv_1_ber_2209.rrd':'ber':AVERAGE \

DEF:b='/home/www/htdocs/tech/cactin/rra/iptv_1_ber_2209.rrd':'qlty':AVERAGE \

DEF:c='/home/www/htdocs/tech/cactin/rra/iptv_1_ber_2209.rrd':'sig':AVERAGE \

CDEF:cdefbd='c,300,*' \

CDEF:cdefbe='b,300,*' \

CDEF:cdefbf='a,300,*' \

COMMENT:'Signal\n' \

:a#FF00FFFF:'Ber':STACK \

GPRINT:a:LAST:' Current\:%8.0lf' \

GPRINT:a:MIN:'Minimum\:%8.0lf' \

GPRINT:a:MAX:'Maximum\:%8.0lf\n' \

:b#AFECEDFF:'Quality':STACK \

GPRINT:b:LAST:'Current\:%8.0lf' \

GPRINT:b:MIN:'Minimum%8.0lf' \

GPRINT:b:MAX:'Maximum%8.0lf\n' \

:c#fffe04FF:'Signal':STACK \

GPRINT:c:LAST:' Current%8.0lf' \

GPRINT:c:MIN:'Minimum\:%8.0lf' \

GPRINT:c:MAX:'Maximum%8.0lf' \

AREA:cdefbd#FFC73BFF:'sig' \

AREA:cdefbe:'quality' \

AREA:cdefbf:'ber'

RRDTool Says:

ERROR: Could not make sense out of ':a#FF00FFFF:Ber:STACK'

 

Что делаю не так?

Posted

По шаблону графика не совсем понятно, что хотите получить. Но вообще STACK'и наслаиваются поверх AREA, видимо из-за этого и ошибка RRDTool.

Posted

хочу получить простой график уровней. На подобии графика с интерфейсов эзернет.

Поменял Stack на area получил что хотел, спс.

graph_image.png

 

Осталось придумать как его сделать универсальным, чтоб опять же как на эзернет, можно было выбрать на какой адаптер сделать график, а шаблон был 1 на всех.

Posted

Осталось придумать как его сделать универсальным, чтоб опять же как на эзернет, можно было выбрать на какой адаптер сделать график, а шаблон был 1 на всех.

 

Так же как и с трафиком интерфейсов надо использовать "Data Queries".

Posted

хочу получить простой график уровней. На подобии графика с интерфейсов эзернет.

Поменял Stack на area получил что хотел, спс.

graph_image.png

 

Осталось придумать как его сделать универсальным, чтоб опять же как на эзернет, можно было выбрать на какой адаптер сделать график, а шаблон был 1 на всех.

 

Поменяйте теперь area на line 1, ну или первый сверху AREA, второй и последюущие Line 1. Получите "наподобие" графика с интерфейсов езернет.

Сигнал снимаете femon-ом?

Posted

да, может немного не правильно, но вот такой:

#!/bin/bash

 

adapter=$1

 

Sig=`femon -a $adapter -H -c 1 | grep signal | awk '{print $5}' | sed 's/.\{1\}$//'`

Qty=`femon -a $adapter -H -c 1 | grep signal | awk '{print $8}' | sed 's/.\{1\}$//'`

ber=`femon -a $adapter -H -c 1 | grep signal | awk '{print $11}'`

 

echo "qlty:$Qty sig:$Sig ber:$ber"

  • 2 weeks later...
Posted

а подскажите как сделать, или не получится...

был момент, BER подпрыгнул до хз каких параметров, и теперь пока этот скачек не уйдет за график, не видно ни сигнала, ни уровней ( от 0 до 100).

Как лучше сделать чтоб и бер было видно и все остальное?

Posted

Неидентичные величины или величины с сильно различающимися размерностями стоит разносить по разным графикам.

 

К слову, несвязанные напрямую величины не стоит делать STACK'ами на одном графике, сделайте line'ами, а то так сложно оценить абсолютное значение каждого параметра. STACK'и в основном используют на аггрегирующих графиках, например когда надо на один график вывести суммарный трафик с нескольких интерфейсов, или например свободное/занятое пространство на нескольких дисках.

Posted

Для сильно различающихся по значению величин можно поставить свойство "Logarithmic Scaling (--logarithmic)" в Graph Template. Тогда скачки до 100500 пунктов не повлияют на отображение обычных значений

Posted

поставил данную опцию в графике и график вообще пропал, хотя ррд ошибок не выдает

 

/usr/bin/rrdtool graph - \

--imgformat=PNG \

--start=1399872251 \

--end=1399958651 \

--title='DVB signal' \

--rigid \

--base=1000 \

--height=120 \

--width=600 \

--alt-autoscale \

--logarithmic \

COMMENT:"From 2014/05/12 09\:24\:11 To 2014/05/13 09\:24\:11\c" \

COMMENT:" \n" \

--vertical-label='' \

--slope-mode \

--font TITLE:10: \

--font AXIS:7: \

--font LEGEND:8: \

--font UNIT:7: \

DEF:a='/home/www/htdocs/tech/cactin/rra/iptv_1_ber_2209.rrd':'ber':AVERAGE \

DEF:b='/home/www/htdocs/tech/cactin/rra/iptv_1_ber_2209.rrd':'qlty':AVERAGE \

DEF:c='/home/www/htdocs/tech/cactin/rra/iptv_1_ber_2209.rrd':'sig':AVERAGE \

COMMENT:'Signal\n' \

AREA:a#FF00FFFF:'Ber' \

GPRINT:a:LAST:' Current\:%8.0lf' \

GPRINT:a:MIN:'Minimum\:%8.0lf' \

GPRINT:a:MAX:'Maximum\:%8.0lf\n' \

AREA:b#AFECEDFF:'Quality' \

GPRINT:b:LAST:'Current\:%8.0lf' \

GPRINT:b:MIN:'Minimum%8.0lf' \

GPRINT:b:MAX:'Maximum%8.0lf\n' \

AREA:c#7EE600FF:'Signal' \

GPRINT:c:LAST:' Current%8.0lf' \

GPRINT:c:MIN:'Minimum\:%8.0lf' \

GPRINT:c:MAX:'Maximum%8.0lf'

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.