Автор Тема: Проблем с rrdtool  (Прочетена 2033 пъти)

sandman_7920

  • Напреднали
  • *****
  • Публикации: 44
    • Профил
Проблем с rrdtool
« -: Feb 20, 2008, 13:03 »
Много гаден проблем ми се очертава с rrdtool

Схема на rrd базата

-s 300\
DS:in:COUNTER:600:0:4294967295\
DS:out:COUNTER:600:0:4294967295\
RRA:AVERAGE:0.5:1:576\
RRA:AVERAGE:0.5:6:672\
RRA:AVERAGE:0.5:24:732\
RRA:AVERAGE:0.5:144:1460

Дотук всичко си е съвсем тривиално.
За Max на DS на rrd-то е сложена максималната стойност за един 32-bit counter

Проблема е следния взимам данните за трафика на ланките от /proc/net/dev и след рестарт на системата брояча им се нулира и при следващият отчет ми се генерира 100mbit. трафик, защото rrd-to си мисли, че брояча е стигнал макс. (2^32) и е превъртял (current=MAX-OLD+NEW).

Когато се ползва snmp за събиране на данните за броячите няма този проблем, защото snmp-to гледа system uptime.

Много, ама много ще се радвам, ако някой ми помогне,даде съвет или ми каже от къде да прочета решение за проблема.
Активен

sandman_7920

  • Напреднали
  • *****
  • Публикации: 44
    • Профил
Проблем с rrdtool
« Отговор #1 -: Feb 20, 2008, 14:08 »
Реших си проблема, ама търсех някой по-елегантен начин, но и този не е много зле.

cat eth

#!/bin/bash

upt=$(cat /proc/uptime |awk -F "." '{print $1}')

if [ $upt -gt 480  ]; then
   cat /proc/net/dev|grep -i $1|cut -d":" -f2|awk -F " " '{print $1"\n"$9}'
fi

echo -e "U\nU"

С промяната в скрипта вече правя проверка за uptime да е повече от 8 мин. за да може rrd да запише поне един Unknown отчет, за да почне калкулацията от начало.

./eth eth0
U
U



Активен

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
php4-rrdtool-1.03
Настройка на програми
Spaceham 0 1950 Последна публикация Jul 02, 2003, 21:25
от Spaceham
Cron + rrdtool
Настройка на програми
ivanatora 3 2590 Последна публикация Nov 20, 2004, 19:42
от ivanatora
Настройка на rrdtool и mrtg с php
Настройка на програми
djpatzo 9 4460 Последна публикация Jan 05, 2011, 20:34
от djpatzo