Monday 20 November 2017

Średnia rrdtool


RRDtool tworzy samouczek i przykłady. rrdtool create buduje bazę danych Nie czyta twojego mind. Before można powiedzieć RRDtool, co należy stworzyć, najpierw musisz określić, czego potrzebujesz i kiedy potrzebujesz tego. Ten przykład nie tyle polega na wycinaniu i wklejaniu , ma nauczyć się, jak możesz przetłumaczyć swój pomysł na działanie. Zobacz dokładnie numery, które zamierzasz dać RRDtool później Co oznaczają te liczby Jak to zmieniają. Ogólnym przykładem jest licznik, który jest przechowywany przez urządzenie sieciowe z liczbą bajtów oktetowych w urządzeniu lub poza nim Licznik jest uruchamiany w pewnym momencie i nadal rośnie W tym przypadku interesuje Cię różnica, delta, pomiędzy dwoma momentami Czas Różnica to ilość oktetów transportowanych w tym przedziale czasowym. Podobny, ale rzadziej widzialny przykład to licznik na liczniku energii elektrycznej To również coraz liczniejszy licznik To powoduje ilość kWh stosowaną w odstępie czasu to ok se powinieneś uznać, że kWh to kolejny sposób na zliczanie Joulesa, czegoś naprawdę chciałbyś wiedzieć później. Innym rodzajem wprowadzania byłby prędkościomierz, urządzenie w samochodzie, które pokazuje, jak szybko się poruszasz Liczba otrzymana jest już stawką Nawet jeśli dostajesz ją w mph lub w km h, to jest tylko kilka metrów na sekundę, choć podawana w innej jednostce, podobnie jak w przypadku kWh i Joules. Zwykle RRDtool przekształci dane wejściowe dostaje się do stawki i normalizuje te stawki tak, aby pasowały one w dobrze zdefiniowanych przedziałach czasowych Nie ma nic co możesz zrobić w tym zakresie, tak to działa See Rates, normalizowanie i konsolidacja w celu bardziej dopracowanego wyjaśnienia tego. Nie ma problemu jeśli nadużyjesz RRDtool do pracy z danymi, które nie są takie, jak temperatura Pamiętaj, że RRDtool będzie pomyślał, że jest to szybkość, i podaj ją RRDtool tak, jakby była już stawka Oznacza to typ licznika GAUGE. There jest wiele różnych przykłady do myślenia Jeśli masz egzamin które będą interesem ogólnym, lub jeśli jesteś gotów zapłacić za mój czas, przekaż mi je, a ja go wyprowadzę. Wprowadzenie to stawka, np. lub powinna być traktowana jako oprocentowanie, np. temperatura Wejście jest coraz liczniejszą liczbą, np. Licznik oktetowy w routerze RRDtool powinien wyznaczyć różnicę między ostatnią aktualizacją a bieżącą, a następnie podzielić ją przez upływ czasu. Jest to podobny do LICZNIKa, z wyjątkiem tego, że dane wejściowe może się zmniejszyć Jest to przydatne, na przykład w metrach kWh, gdy wytwarzasz więcej energii słonecznej niż użyjesz W takim przypadku rzeczywiście masz negatywną stopę procentową. Ma to być użyta, gdy licznik zostanie zresetowany za każdym razem, gdy jest czytany, gdy ludzie zaczną licząc od zera i tak dalej Główną różnicą między ABSOLUTEM a GAUGE jest to, że wejście nie jest jeszcze stawką, należy najpierw podzielić ją przez czas, aby uzyskać stawkę Główną różnicą między ABSOLUTEM i LICZNIKA jest to, że RRDtool nie powinien używać poprzedniego wartość wejściowa do obliczania jego delta. Once masz figur Dowiedz się, jak przetworzyć dane wejściowe, musisz dowiedzieć się, jak chcesz zapisać obliczone stawki Istnieje kilka rzeczy do zobaczenia Przede wszystkim musisz wiedzieć, ile czasu chcesz mieć możliwość sprawdzenia Bardzo ważne jest również jak chcesz być w stanie spojrzeć na to. Chcesz móc patrzeć wstecz na rok, musisz jeszcze wiedzieć, czy chcesz powiększyć lub jeśli chcesz tylko spojrzeć na duże zdjęcie W innym słowa, jeśli jest to 1 marca 2009 r., czy chcesz przyjrzeć się 2007-03-01 do 2009-03-01, czy chcesz, abyś patrzył na 2007-03-01 od północy do następnej północy. rozumiesz tutaj konsolidacja Powiedzmy, że będziesz patrzeć na dwa lata wartości informacji i że dostępne dane są w rozdzielczości 300 sekund na każde wiadro To oznacza, że ​​masz więcej niż 200 000 wiaderek Jeśli zamierzasz wyświetlić to na obrazie 400 pikseli szerokości, 500 takich łyżek musi się zmieścić na kolumnie pikseli Utrzymywanie tych 200 000 wiaderek to nie tylko marnowanie miejsca I f RRDtool musi zrobić wszystkie wiadra dopasowane do wykresu, musi to robić W zależności od możliwości przetwarzania serwera może to oznaczać opóźnienie w wyświetlaniu wykresów. Możesz zlecić RRDtool zachowanie historycznych danych w sposób spójny, nadaje się do wyświetlania bez opóźnienia wspomniane powyżej To wymaga pewnych planów, będę dalej rozwinąć Ale co, jeśli chcesz mieć możliwość powiększania Brak problemu, możesz powiedzieć RRDtool również zachować dane w oryginalnym rozmiarze wiadra np. 300 sekund Lub, jeśli zdecydujesz się tak, możesz powiedzieć RRDtool, aby zachować dane tylko w tym oryginalnym rozmiarze łyżki To zależy od Ciebie Po prostu wiem, że trudno jest zmienić zdanie po zbudowaniu bazy danych W wielu przypadkach musisz zacząć jeśli robisz. RRDtool używa RRAs Archiwum RRDtool do przechowywania danych Każda z tych RRA jest niezależna od innych, możesz mieć taki, który przechowuje dane w rozdzielczości 300 sekund, a drugi zapisuje dane w rozdzielczości 86400 sekund chcesz, yo u każdy z tych przykładów może zawierać taką samą ilość czasu, nie ma problemu. To tylko kwestia, ile wierszy wygenerujesz w każdym RRA. Powinieneś generować obrazy, w których wewnętrzny obszar wykresu ma 360 pikseli szerokości. Zwykle najlepiej, jeśli konfigurujesz urządzenie RRD, tak aby jeden z urządzeń RRA był zgodny z rozdzielczością wyświetlaną na ekranie Możesz to zrobić na etapie projektowania, dostosowując rozmiar każdego segmentu lub starannie zaplanuj czas rozpoczęcia i zakończenia Jeśli masz RRA, który przechowuje dane w 86400-sekundowa rozdzielczość i wyświetlanie 360 ​​dni informacji, jest to ładne dopasowanie Wyświetlaj 180 dni i każdy dzień będzie miał 2 kolumny szerokie, niewiele problemu Wyświetlaj 720 dni i RRDtool nadal musi wykonać 2 wiadra dopasowane do jednego piksela. Zgodnie ze statystykami sieciowymi, dzięki czemu możesz wiedzieć, ile danych jest przesyłanych, co pomaga określić, czy nadszedł czas, aby rozwinąć liczniki pojemności sieciowej, prawdopodobnie będzie stale rosnąć, dopóki nie pojawi się kontrapunkt, tak że część jest łatwe użycie CO UNTER Również dość często pojawiają się w parach przychodzących i wychodzących, jak widać z urządzenia Masz zamiar zapytać urządzenie mniej więcej co 5 minut, ale dajesz sobie i swój harmonogram trochę chwiejności Jednak nie ma limitu, ile luzu chcesz przygotować daj Jeśli aktualizacje są dalekie od siebie niż 10 minut, coś poszło nie tak i możesz polegać na dokładności liczników sieci Może dojść do awarii, co spowodowało ponowne uruchomienie urządzenia Czy wiesz, że urządzenie wygrało ponad 100 Mb / s, więc każda stopa wyższa niż ta jest wynikiem jakiejś nieznanej winy gdzieś w nieznanym miejscu Nie wiesz dlaczego tak się stanie, jeśli w ogóle, po prostu nigdy nie chcesz, aby to pokazało To jest tak jak siatka bezpieczeństwa. ko z liczników. Innym licznikiem jest ten sam, z wyjątkiem jego nazwy Podaj następujące dane do rrdtool create. Say chcesz móc wyświetlać ostatnie 2 lata, ostatnie 2 miesiące, ostatnie 2 tygodnie i ostatnie 2 dni Baza danych używa domyślny rozmiar kroku 300 sekund na interval. First thing Zauważę za każdym razem ostatni jest wspomniany To oznacza, że ​​nie trzeba dodawać dodatkowych wierszy, aby umożliwić przeszukanie w przeszłości Na przykład, nie ma potrzeby przechowywania danych w rozdzielczości 300 sekund przez całe dwa lata. I od razu zauważyć użycie roku, miesiąca, tygodnia i dnia Nie są ustalone przedziały czasu Rok może wynosić 365 lub 366 dni Miesiąc może wynosić 28 dni, 29 dni, 30 dni, 31 dni, może nawet godzinę mniej lub jedna godzina więcej, lub 30 minut mniej więcej, w zależności od tego, jak działa światło dzienne dla Ciebie Podobnie tydzień nie zawsze wynosi 7 dni, a dzień nie zawsze wynosi 24 godziny Jest to niewykonalne, a dla celów tego przykładu jest to Również niepotrzebne Oznacza to, że mogę, zmodyfikować żądanie pokazania ostatnich 720 dni, ostatnich 60 dni, ostatnich 14 dni i ostatnich 2 dni, w oparciu o godzinę UTC, bez uwzględnienia czasu letniego. do określenia szerokości każdego wykresu Pierwszą rzeczą do zrobienia jest spojrzenie na ilość czasu Z krokiem 300 sekundy, jeden dzień to 288 kroków.720 288 207360 kroków. Nie zawsze okazuje się być takim miłym wyborem Zdecyduj się na to, co lubisz bardziej wyglądać mniej lub bardziej czasu niż początkowo planujesz lub mają różne szerokości obrazu Cokolwiek robisz , upewnij się, że liczby są liczbami całkowitymi Nie dlatego, że RRDtool potrzebuje go, ale dlatego, że ułatwia życie. Numery 360, 30, 7 i 1 to liczba kroków do wypełnienia podczas tworzenia każdego RRA Numer 576 to kwota wierszy do wypełnienia Pozostawia dwa inne parametry CF i xff, które wyjaśniono krótko Podaj to RRDtool. RRA MIN 0 360 576 RRA MIN 0 30 576 RRA MIN 0 7 576 RRA WARTOŚĆ 0 360 576 RRA ŚREDNI 0 30 576 RRA ŚREDNIA 0 7 576 RRA AVERAGE 0 1 576 RRA MAX 0 360 576 RRA MAX 0 30 576 RRA MAX 0 7 576.MIN, ŚREDNI i MAX określa, w jaki sposób RRDtool powinien konsolidować wiele stawek w jednym Więcej informacji o tym w cenach, normalizacji i konsolidacji, zainteresowany Czy zauważyłeś, że mam 3 MIN i MAX RRA i 4 ŚREDNI To dlatego, że minimalna, średnia i maksymalna tylko jednej stawki będzie zawsze taka sama Jedynie potrzebuję jednego z nich, a nie wszystkich trzech. XFF, X-Files Factor, uzyskał swoją nazwę, ponieważ jest nienaukowy, jeśli masz inny numer niż zero Czy chodziło o nieznane dane io tym, jak jest przetwarzane Jaka jest średnia z jednej i tylko prawdziwej odpowiedzi nieznana Mimo to, wiele osób chce odpowiedzieć 1 XFF określa, ile oryginałów może być nieznanych i nadal produkować 1 lub dowolny inna wartość Wspólna wartość to 0 5, co oznacza wyniki w 1, ale nie W tym przykładzie, 0 5 byłby odpowiedni, ale jeśli używasz danych do celów rozliczeniowych, to nie byłby rozważyć średni Z XFF ustawiony na 0 5, to byłoby 100 średnio Szanse są nieznane są wynikiem problemu z połączeniem, w którym to przypadku byłoby niesprawiedliwe, aby wystawiać rachunek swoim klientom w tempie 100 w tych niewiadomych odstępach czasu W celu planowania zdolności, z drugiej strony najprawdopodobniej zobaczysz stopa 100, gdy nie nastąpi przerwa w Th Znowu warto wiedzieć, że nastąpiło przerwanie, nawet jeśli spojrzymy na wykres przedstawiający 2 lata. rrdtool utworzy również akceptuje czas rozpoczęcia Jest to ważne tylko wtedy, gdy masz dane historyczne, które chcesz zaimportować, jeśli nie w tym celu pomiń ten parametr i RRDtool zrobi to dobrze Jeśli zamierzasz importować historyczne dane, ustaw to na nieznacznie przed najstarszymi danymi, które mają zostać importowane. Inne parametry to rozmiar kroku 300 sekund domyślnie, a nazwa plik do utworzenia. Całowy przykład jest już gotowy To jest polecenie, które daje RRDtool, w tym konkretnym przypadku. rrdtool utworzyć DS DS0 LICZNIK 600 0 12500000 DS ds1 NUMER 600 0 12500000 RRA MIN 0 360 576 RRA MIN 0 30 576 RRA MIN 0 7 576 RRA AVERAGE 0 360 576 RRA AVERAGE 0 30 576 RRA AVERAGE 0 7 576 RRA AVERAGE 0 1 576 RRA MAX 0 360 576 RRA MAX 0 30 576 RRA MAX 0 7 576. Lubię pisać moje skrypty nieco inaczej I użyj powłoki uniksowej i napisz mój skrypt tak. To nie ma znaczenia, gdy powłoka wystrzeliwuje rrdtool, widać to samo polecenie może z jakimiś białymi odstępami, nawet nie wiem. Lubisz te informacje Powiedz innym Don t you Powiedz mi. Ta strona została stworzona przez Alexa van den Bogaerdt, niezależnego IT konsultant Jeśli chcesz przekazać informacje zwrotne lub jeśli chcesz mnie zatrudnić, zobacz. Uwagi dotyczące implementacji programu RRDTOOL Aberrant Behavior Detection. oetiker webtools rrdtool jest skrótem dla Round Robin Database RRD to system do przechowywania i wyświetlania danych z serii czasowych, które przechowuje dane w bardzo zwarty sposób, które nie będą rozszerzać się w czasie i przedstawiają użyteczne wykresy poprzez przetwarzanie danych w różnych rozdzielczościach czasowych Oprogramowanie RRDtool jest dostępne jako samodzielna aplikacja lub jako biblioteka PERL RRDtool jest zwinnym programem minimalizującym IO operacje wymagające aktualizacji w czasie rzeczywistym do serii czasów Chociaż nie są tak potężne, jak pełne oprogramowanie do baz danych, zapewnia funkcjonalność wymaganą w środowisku czasu rzeczywistym. konwersja aktualizacji w irreg odstępy międzyokrągłe w regularnych odstępach czasu przez interpolację liniową. konwersję danych licznika do stawek. agregacja w zdefiniowanych przez użytkownika przedziałach czasowych za pomocą wielu funkcji agregacyjnych. Ten dokument opisuje implementację nieprawidłowej detekcji zachowania dla RRDTOOL Niektóre znajomości elementów wewnętrznych bieżącego wydania 1 0 Przyjmuje się 25 RRDtool, ponieważ dokument ten nawiązuje do istniejącej już architektury. Istnieje kilka przyczyn, dla których w programie RRDtool zintegrowano wsparcie dla nieprawidłowego wykrywania zachowań, w przeciwieństwie do wdrożonego w odrębnym programie. 1 Ułatwia skuteczne aplikowanie w czasie rzeczywistym nieprawidłowego wykrywania zachowań Integracja zapewnia większą wydajność w odniesieniu do zewnętrznego programu w odniesieniu do dostępu do IO Program zewnętrzny pobierałby dane z RRD z tą samą częstotliwością, a kody w obrębie RRD działają na tych danych już efektywność staje się najważniejszym priorytetem dla sieci usługowej na poziomie ISP IAP, gdzie RRDtool może być istotnym elementem systemu monitorowania setek interfejsów sieciowych i usług aplikacji. 2 Wykorzystanie zdolności RRDtool do aktualizowania danych interpolacji czasowej w nieregularnych odstępach czasu i konwersji liczników do stawek. 3 Wykorzystanie możliwości generowania wykresów wykresów RRDtool może być generowane w celu wyświetlenia wyników nieprawidłowej detekcji zachowania przy użyciu istniejących funkcji narzędzia RRDtool. 4 Wykorzystuje oprogramowanie klienckie zaprojektowane do pracy z programem RRDtool i e Cricket. Aberrant wykrywania zachowania jest rozłożony na trzy części, każdy budynek na jego poprzednika. 1 Algorytm przewidywania wartości jednego szeregu czasowego krok po kroku w przyszłość. 2 Miara odchyłki pomiędzy przewidywanymi wartościami a obserwowanymi wartościami. 3 Mechanizm decyzyjny, czy i kiedy obserwowana wartość lub sekwencja obserwowanych wartości jest zbyt dewiająca od przewidywanej wartości s. Algorytm prognozowania szeregów czasowych Holt-Winters jest algorytmem online lub przyrostowym, który adaptuje się do przewidywania przyszłych obserwacji w serii czasowej Prognoza jest sumą trzech składowych linii bazowej lub przecięcia, tendencji liniowej w czasie czasu lub nachylenia oraz współczynnika sezonowego efektu okresowego, takiego jak cykl dzienny Istnieje jeden współczynnik sezonowy dla każdego punktu czasowego w cyklu okresowym Po wartość jest obserwowana, każdy z tych elementów jest aktualizowany poprzez wyrównywanie wykładnicze Algorytm naucza się od przeszłych wartości i wykorzystuje je do przewidywania przyszłości Tempo adaptacji jest regulowane przez 3 parametry przechwytywanie alfa, nachylenie beta i gamma sezonowe Można przewidzieć przewidywanie jako wygładzona wartość dla szeregu czasowego. Miara odchylenia jest sezonowym ważonym odchyleniem bezwzględnym Określenie "odchylenie" oznacza odrębnie dla każdego punkt czasowy w cyklu sezonowym Podobnie jak w prognozach Holt-Winters, przewidywane jest odchylenie przy użyciu pomiaru mierzonego z poprzednich wartości, ale tylko w tym momencie cyklu sezonowego Po zaobserwowaniu wartości, algorytm uczą się od obserwowanej wartości poprzez wyrównywanie wykładnicze Skalowanie sekwencja przewidywanych wartości odchylenia dla zaobserwowanych serii czasowych generuje pasmo ufności, które zwykle myśleć o sekwencjach jako ciągłych, a nie jako zbiorach punktów dyskretnych. Niewłaściwe zachowanie jest zgłaszane w przypadku, gdy liczba obserwowanych wartości narusza pasmo ufności spełnia lub przekracza określony próg w określonym oknie czasowym tj. 5 naruszeń w ciągu ostatnich 45 minut z wartością obserwowaną co 5 minut. Ta sekcja opisuje architekturę implementacji nieprawidłowego wykrywania zachowań w dysku RRDtool. On, RRD jest podzielony na sekwencyjne sekcje, okrągłe archiwum RRA w obrębie każdego RRA jest sekcją dla każdego z wejść danych przechowywanych w tym RRD Każda RRA jest zdefiniowana przez funkcję konsolidacji, która mapuje podstawowe punkty PDP w skonsolidowanych punktach danych CDP Na innym poziomie RRA to tylko tablica wartości danych, która jest aktualizowana kolejno do pewnej funkcji w pewnym stałym odstępie czasowym. Na jego obliczu nieprawidłowy algorytm zachowania potrzebuje co najmniej dwóch tablic, jeden do przechowywania prognozowanych wartości odpowiadających każdemu podstawowemu punktowi danych, a drugi do przechowywania przewidywanego odchylenia odpowiadającego każdemu podstawowemu punktowi danych . Wdrożone, współczynniki sezonowe i odchylenia wykorzystywane do obliczania prognozy i przewidywanych odchyleń są przechowywane w drugiej parze jednostek RRA Te tablice mają długość równą okresowi sezonowemu i są aktualizowane raz dla każdego głównego punktu danych. Kierki są śledzone przez piąty RRA, który określa naruszenia i błędy w każdym wywołaniu aktualizacji RRD. Współczynniki przechwytywania i nachylenia wymagane dla prognozy są aktualizowane dla każdego pri mary i są unikalne dla każdego źródła danych DS Mogą być przechowywane w drugiej parze jednostek RRA Jednak przy danej algorytmie wymagana jest tylko ich najnowsza wartość Jak wprowadzono te parametry są przechowywane w tymczasowym buforze w przydzielonym nagłówku dla ka dej kombinacji źródeł danych RRA w RRD obszarze przygotowania CDP Ten bufor jest spłukany z powrotem na dysk przy każdym wywołaniu do aktualizacji RRD. Parametry adaptacyjne są stałe dla okresu RRA i są takie same dla wszystkich źródeł danych w obrębie tego RRA Są przechowywane w buforze parametrów RRA w RRA def, który jest odczytywany tylko podczas aktualizacji RRD. W związku z tym wdrożenie nieprawidłowego algorytmu zachowania dodaje do RRDtool pięć nowych funkcji konsolidacyjnych. 1 HWPREDICT tablicę prognoz obliczoną za pomocą algorytmu Holt-Winters, po jednym dla każdego głównego punktu danych Tablica HWPREDICT zależy od tablicy typu SEASONAL dla wyszukiwania współczynników sezonowych Indeks tej tablicy SEZONAL jest zapisywany jako parametr HWPREDICT RRA . 2 SEZONALNA tablica współczynników sezonowych o długości równej okresowi sezonowemu Dla każdego głównego punktu danych istnieje jeden współczynnik sezonowy odpowiadający indeksowi w cyklu sezonowym W celu aktualizacji współczynników sezonowych poprzez wyrównywanie wykładnicze SEASONAL RRA zależy od HWPREDICT RRA Indeks pasującego HWPREDICT RRA jest zapisywany jako parametr. 3 DEVPREDICT tablicę przewidywań odchylenia W zasadzie, DEVPREDICT kopiuje wartości z tablicy DEVSEASONAL, że nie przetwarza własnych indeksów Indeks tablicy DEVSEASONAL jest zapisywany jako parametr. 4 DEVSEASONAL tablica odchyleń sezonowych Dla każdego głównego punktu danych występuje jedno sezonowe odchylenie, które odpowiada indeksowi głównego punktu danych w cyklu sezonowym W celu obliczenia odchyleń DEVSEASONAL RRA musi obliczyć przewidywaną wartość, a więc zależy od HWPREDICT RRA Indeks pasującego HWPREDICT RRA jest zapisywany jako parametr. 5 FAILURES tablicę wskaźników logicznych, a 1 wskazująca awarię Bufor RRA-DS przechowuje każdą wartość w oknie Każda aktualizacja usuwa najstarsze wartości z tego buforu i wstawia nową obserwację W każdej aktualizacji liczba naruszeń jest rekompilowana Maksymalna długość okna wymuszona przez ten bufor wynosi 9 punktów czasowych W celu porównania z odchyleniami, FAILURES RRA zależy od DEVSEASONAL RRA Indeks dopasowanego DEVSEASONAL RRA jest zapisywany jako parametr. Ta sekcja ilustruje użycie algorytmu wykrywania nieprawidłowego zachowania w RRDtool through przykład. Naszym celem monitoringu będzie interfejs routera na łączu między dwoma centrami danych w sieci usług produkcyjnych WebTV. Zmienną będzie przepustowość wychodząca w zakresie wykorzystania pasma Mb / s w wyniku codziennego cyklu, a protokołowanie protokołu SNMP odbywało się pięć razy w minutach. pierwszym krokiem jest utworzenie RRD dla tego celu z wykryciem nieprawidłowego wykrywania zachowań Aby uprościć tworzenie dla początkującego użytkownika, w reklamie Dedykowane utworzenie pozostałych czterech, gdy HWPREDICT jest określone samodzielnie Aby skorzystać z tego, użyj następującej długości składni. array to: liczba przewidywań przechowywania przed zawinięciem ta liczba musi być dłuższa niż okres sezonowy Wartość ta będzie równa liczbie wierszy RRA dla DEVPREDICT RRA. alpha to parametr adaptacji przechwycenia, który musi mieścić się między 0 a 1 większa wartość oznacza przechwytywanie dostosowuje się szybciej Ta sama wartość będzie również stosowana w przypadku parametru adaptacji nachylenia gamma. beta, znowu w przedziale od 0 do 1. jest liczba głównych punktów danych w okresie sezonowym Ta wartość będzie liczona wiersz RRA dla SEZONALNEGO i DEVSEASONAL RRA. Użycie tej opcji powoduje utworzenie FAILURES RRA z domyślną długością okna wynoszącą 9 i domyślną wartością progową wynoszącą 7. Domyślna długość FAILURES RRA to jeden perio d. Na przykład polecenie create jest. rrdtool create s 300.Jednak jednoznacznie tworząc dodatkowe RRA to jeden ze sposobów dokładniejszej kontroli, niektóre parametry można zmieniać używając polecenia tune Enhanced RRDtool obsługuje kilka nowych flag melodii .-- window - długość - próg niepowodzenia --alpha - beta gamma deltapos --deltaneg. Każdy z tych flag ma jeden argument. Cel tego argumentu jest oczywisty. Flaga --gamma zresetuje parametr adaptacyjny zarówno dla SEZONALNEGO, jak i DEVSEASONAL RRA ustawiają zarówno na tę samą wartość. - deltapos i deltaneg ustawiają parametr skali dla górnego i dolnego pasma ufności odpowiednio, domyślną wartością dla obu jest 2 pasmo ufności symetrycznej. Na przykład załóżmy, że nie jesteśmy zadowoleni z okna domyślnego długość i wartość progowa w przypadku awarii RRA domyślnie utworzonych przez poprzednie polecenie Wydanie komendy command. rrdtool --window-length 5.W pozostałej części przykładu użyto domyślnej długości okna 9 i domyślnego progu 7. W niektórych przypadkach, konieczne jest wyraźne utworzenie RRAJ Załóżmy, że technik sieci interesuje się tylko wygładzaniem zaobserwowanych serii czasowych, a nie pasmami zaufania lub nieprawidłowym wykrywaniem zachowań Algorytm Prognozowania Holta-Wintersa może być wyświetlany algorytm wygładzania W tym przypadku może wyraźnie utworzyć HWPREDICT i RASY SEZONOWE bez innych. Użyj tej składni. RRA HWPREDICT długość indeksu alfa beta SEASONAL. RRA SEASONAL okresu gamma indeksu HWPREDICT. Argumenty HWPREDICT są takie same jak poprzednio, z dodatkiem. index SEASONAL 1 oparte indeks tablicy SEASONAL w kolejności RRA są określone w poleceniu create. Argumentami RAS SEZONALNEGO są: liczba pierwszych punktów danych w okresie sezonowym Musi być zgodna z wartością określoną przez argument okresu HWPREDICT Musi ona być liczbą całkowitą większą niż 2.gamma jest parametrem adaptacyjnym dla współczynników sezonowych, który musi wynosić od 0 do 1.index indeksu HWPREDICT 1 HWPREDI Tablica CT w kolejności RRA są określone w poleceniu create. Pasmo niewłaściwe może być tworzone niezależnie od nieprawidłowej detekcji zachowania W tym przypadku należy utworzyć cztery RRAs HWPREDICT, SEZONAL, DEVSEASONAL i DEVPREDICT, ale pominąć FAILURES RRA. Use tę składnię. RRA Wskaźnik długości indeksu HWPREDICT indeksu alfa beta sezonu SEASONAL. RRA SEASONAL dla indeksu gamma HWPREDICT. RRA DEVSEASONAL dla indeksu tablicy długości HWPREDICT. RRA DEVPREDICT z DEVSEASONAL. Argumenty HWPREDICT i SEZONAL są takie same jak poprzednie Argumenty DEVSEASONAL i DEVPREDICT są okresy pierwszych punktów danych w okresie sezonowym Musi być zgodna z wartością określoną przez argument okresu w tablicach HWPREDICT i SEASONAL, że ograniczenie to może zostać zniesione w przyszłej implementacji Musi być liczbą całkowitą większą niż 2. długość reguły jest liczba odchyleń przechowywania przed owinaniem wokół tej liczby musi być dłuższa niż okres sezonowy. gamma jest parametrem adaptacyjnym dla sezonowych odchylenia, które muszą wynosić od 0 do 1 Nie musi odpowiadać parametru adaptacji dla tablicy SEZONOWANIE. indeks indeksu HWPREDICT 1 tablicy HWPREDICT w kolejności RRA są określone w poleceniu create. index indeksu opartego na DEVSEASONAL 1 tablicy DEVSEASONAL w kolejności RRA są określone w poleceniu create. Wreszcie, FAILURES RRA można utworzyć wyraźnie z składnią, ale przynajmniej utworzyć tablice HWPREDICT, SEASONAL i DEVSEASONAL Jeśli pasma zaufania są również pożądane, utwórz DEVPREDICT. Użyj tej składni. RRA FAILURES długość progu indeksu długości okna DEVSEASONAL. length jest liczbą wskaźników 0,1 wartości do przechowywania przed otaczaniem A 1 oznacza awarię, liczbę naruszeń w ostatnim okno obserwacji spełnia lub przekracza próg. próg jest minimalną liczbą naruszeń w oknie obserwowanych wartości poza granicami zaufania, które stanowią niepowodzenie. długość jest liczbą czasu po ints w oknie Określ liczbę całkowitą większą niż lub równa wartości progowej i mniejsza lub równa 28 maksymalnej wartości. index indeksu DEVSEASONAL 1 tablicy DEVSEASONAL w kolejności RRA są określone w poleceniu create. Aberratne zachowanie algorytm wykrywania nie wymaga niczego niezwykłego w przypadku polecenia RRDtool update, tak aby mechanizm zbierania danych, tj. Cricket wywołujący SNMP będzie normalnie działał. Załóżmy, że upłynie jakiś czas, a technik sieci monitoruje przepustowość wychodzącą w interfejsie routera. Może wyświetlać wykres codziennej aktywności, pasma i wszelkie błędy, przy następującym następstwie polecenia. rrdtool graph. TICK nie powiedzie się ffffa0 1 0 Błędy Średnia liczba bitów. LINE2 skaledobs 0000ff Średnia liczba bitów out. LINE1 skaledupper ff0000 Górna ograniczona średnia liczba bitów. LINE1 skaledlower ff0000 Lower Bound Average bits out. TICK is nowa opcja graficzna w narzędziu RRD Dla każdej z wartości niezerowych w argumencie DEF lub CDEF wykreśla się znak zaznaczenia Długość linii oznaczania jest określona ed przez trzeci argument po kodzie koloru, jako procent dziesiętny osi y 1 0 wynosi 100 długości osi y, więc znak zaznaczenia staje się pionową linią na wykresie. Oto przykład tego dziennika Wykres generowany na środzie, 31 maja 2000 r. dla docelowego celu routera opisanego wcześniej. Cienkie czerwone linie to pasmo ufności, a żółte pręty przedstawiają awarie w rzeczywistości wielokrotne awarie w kolejności, gdy obserwowana wartość wykracza poza zakresy ufności pozostające poza pasmami około dwóch godzin w obu przypadkach Opcja wykresu TICK wygenerowała żółte słupki z wykresu FAILURES RRA. Wykres sugeruje, że szerokość pasma dla tego wychodzącego połączenia rośnie szybciej niż oczekiwano przez model w przeszłości. To zależy od technika sieciowego, aby zdecydować, czy stanowi to nietrafne zachowanie zainteresowania Jednym z podejść, które technik może podjąć, jest przeglądanie szeregów czasowych dla tego interfejsu routera przez dłuższy okres czasu. Z perspektywy czasu łatwo jest wykazać coś unu sual jest kontynuowany i aberracyjny model wykrywania zachodzi w czasie rzeczywistym Oto seria czasu na tydzień i okres półroku od 24 maja 2000 r. do 2 czerwca 2000 r. Jest jasne, że Wed, 31 maja, jest niezwykła przepustowość wzrasta w dwóch etapach raz wcześnie rano i ponownie we wczesnym popołudniem W tym przypadku zanurzenie do 0 w godzinach porannych, a następny skok może być przypisany planowemu przestojowi sieci usługowej Być może reszta aktywności pasma na Wed ma taką samą przyczynę, w której wykryte nieprawidłowe zachowanie jest fałszywym pozytywem w oczach technika sieciowego. Dzięki przykładowi jest oczywiste, że wiele nieprawidłowości wynika z wykrywania zachowań, ale komplikuje wdrażanie i wpływ oprogramowania Wydajność robocza Te szczegóły są omówione w tej sekcji. W przypadku pięciu nieprawidłowych RRA wykrywania, za każdym razem, gdy rrdupdate oblicza się pierwotny punkt PDP danych, każdy z RRA jest aktualizowany. Przekłada się to na pięć additi na dysku twardym poszukuje operacji zapisu Ponadto, RASY SEZONOWE i DEVSEASONAL kaŜdy wymagają operacji odczytu poszukiwania Podczas gdy liczba dodatkowych operacji dysku jest niezaleŜna od liczby źródeł danych, a operacje te są wykonywane sekwencyjnie w miarę moŜliwości tj. chęć uniknięcia poruszania się do tyłu w obrębie pliku, operacje te powodują znaczne koszty IO w porównaniu z RRD bez nieprawidłowych RRA wykrywania W konwencjonalnym pliku RRD zazwyczaj jest tylko jedna rejestrator RRA, który jest aktualizowany dla każdej PDP, wymagający tylko jednego operatora wyszukiwania. Po aktualizacji, obszary cdpprep HWPREDICT i RASY SEZONALNE zawierają wystarczające informacje, aby przewidzieć przyszłe wartości Następna przewidywana wartość może być obliczona przy użyciu następującego wzoru. Przedmiotowość przechwycenia kolejności długości nieznanych wartości 1. Przechwyt jest przechowywany w elemencie CDPhwintercept w obszarze cdpprep HWPREDICT RRA oraz źródło danych zainteresowanych Nachylenie jest przechowywane w elemencie CDPhwslope obszar cdpprep HWPREDICT RRA Wyrażenie, długość sekwencji nieznanych wartości 1, jest zapisywane jako element CDPnullcount w obszarze cdpprep HWPREDICT RRA Wreszcie, współczynnik sezonowy jest przechowywany w składzie CDPhwszystkim obszaru CDpprep RASY SEZONALNEJ a źródło danych zainteresowania. Aberrant wykrywania zachowania nie musi obliczyć przewidywania do czasu przewidywanej wartości, ale jest możliwe, że inna aplikacja może chcieć przewidywania przed obserwacją wartości Jest to ułatwione w przyszłości przez dodanie nowego połączenia rrdpredict do odczytu odpowiednich buforów HWPREDICT i SEASONAL RRA i obliczenie przewidywania. Isolated lub sekwencje nieznanych wartości U nie są ogólnie problemem dla algorytmu Holt-Winters, zarówno podczas tworzenia prognoz, jak i aktualizacji wartości zasadniczo dla nieznanej wartości, nie ma aktualizacji Aktualizacja algorytmu może faktycznie przewidywać wiele kroków w przyszłości, pod warunkiem fazy inicjowania jest kompletna. Aktualizacja zbiorcza może wystąpić, gdy przedział czasowy między wartościami obserwowanymi przekracza wielkość kroku W tym przypadku obserwowana wartość generuje więcej niż jeden główny punkt danych Jeśli przedział przekracza tętno źródła danych, wszystkie najważniejsze punkty danych interweniujących zostanie ustawiona na nieznany U, w przeciwnym razie zostaną ustawione na tę samą wartość. Aktualizacje utworzone powodują komplikacje dla nieprawidłowych RRA wykrywania, które są aktualizowane dla każdego głównego punktu danych. Głównym problemem jest koszt obliczenia przewidywania i przewidywanego odchylenia W przeciwieństwie do konwencjonalnej funkcji konsolidacji, tj. Przeciętnej lub maksymalnej, przejściowe skumulowane punkty danych CDP dla nieprawidłowych RRA wykrywania nie są identyczne i muszą być obliczane osobno. Te koszty obliczeniowe są na marginesie, istnieją kwestie wdrożeniowe związane z zależnością między nieprawidłowym wykryciem RRA Zasadniczo, aby obliczyć przewidywania i przewidywane odchylenia w kolejności, każdy RRA wymaga jego zależnego R RAs to be synchronized at the same time point However, the architecture of the rrdupdate function is to process each RRA independently of the others This architecture is imposed by the optimization that writes to each RRA occur in sequence. Given in these issues, updates in excess of 2 CDPs per observed value that is, an observed value which translates into more than 2 PDPs are not currently supported by the aberrant detection implementation The intermediary CDPs are set to U In the future, the implementation may support bulk updates, especially as algorithm can handle sequences of U values as input. The implementation is designed to use bootstrap initialization The intercept coefficient is initialized to the first known value The slope is initialized to 0 this initialized is predicated on the assumption the linear trend over time is close to 0 If this is not the case, the time required for the Holt-Winters algorithm to gravitate away from 0 will depend on the seasonal adaptation paramet er, gamma During the first seasonal cycle of known values, seasonal coefficients are initialized During the second seasonal cycle of known values, seasonal deviations are initialized. The sensitivity of the algorithm to the initial values the first two cycles , declines over time as determined by the adaptation parameters The weight of the initial value persists longer than subsequent values For example, given a daily cycle, no periodic smoothing, and gamma 0 1, the weight of the initial value in the tenth iteration day seasonal component is 0 4 In contrast, the weight of the second day observation at the same point in the cycle is only 0 04.Unknown values during the first two seasonal cycles can complicate the cold-start The implementation initializes any coefficients it can during the first two cycles If some coefficients remain unknown due to unknown values, they are initialized during the first subsequent cycle with known value at that time point in the cycle As the first value of a COUNTER data source is always unknown, the minimum cold-start period for COUNTER data sources is three seasonal cycles. Reflecting the belief that seasonal coefficients and deviations are smooth periodic functions of time, the implementation periodically runs a moving-average smoother with a window of 5 of the period on the DEVSEASONAL and SEASONAL RRAs This operation requires reading all DEVSEASONAL and SEASONAL RRA values from disk, updating them, and flushing them back to disk. The smoother is run once per period, at an offset determined by a FNV hashing algorithm on the file name of the RRD file The intent of the hashing algorithm is to prevent temporal clumping of smoothing operations for multiple RRD files as RRDTOOL usually runs in a environment with multiple RRD files. The rradef parameters and cdpprep areas provided by the RRD structure definition are sufficient to store all necessary parameters on disk in and in memory for the aberrant behavior detection algorithm, previously t he dump and restore to from XML functions did not fully support the import export of these data structures The implementation now flushes all RRA parameters to XML using the param tag on dump and the restore function reads the new tags The contents of the cdpprep areas are written as before, marked by the ds tag To identify the new XML format, the implementation uses a version tag of 0002.The following list describes files modified from the current release 1 0 25 of RRDtool to implement aberrant behavior detection. rrdcreate c support for creation of HWPREDICT, SEASONAL, DEVSEASONAL, and DEVPREDICT RRAs. rrddump c support for exporting rradef par and cdpprep scratch variables. rrdrestore c support for importing rradef par and cdpprep scratch variables. rrdhw c main routines for updating Holt-Winters RRAs smoothing routines FIFO queue implemetation. rrdupdate c call routines in rrdhw c as appropriate rewrite for efficient bulk updates. rrdgraph c add data reduction support for HWPREDICT, SEAS ONAL, DEVSEASONAL, and DEVPREDICT RRAs adding the TICK graph element. rrdformat h add enumeration values for reference in RRA and CDP scratch arrays. rrdtool h function prototypes, FIFO queue method prototypes. hash32 c implementation of FNV hash. fnv32 h header file for FNV routines. Creating RRD graphs in PHP. Posted by Joshua Thijssen on February 23, 2017.You may not be familiar with the term RRD graph, but if I show you one you probably recognize them instantaneously They are used to plot all kind of data against time in a very easy way which is why they are used a lot in all kind of applications Even though many consider RRD as a library to create graphs, it is actually more than that it s a complete system to store aggregated data in a very efficient way. RRD stands for Round Robin Database It is a database for collecting all kinds of data against time The round robin stands for the fact that only a certain amount of data points can be stored When we reach the end of the database, it wi ll wrap back to the begin again This means that RRD database files will never grow in size. Every RRD works with a step rate , which tells us how far the data points are located from each other Normally this is 300 seconds 5 minutes so all data is stored in a 5 minute interval This doesn t mean you only can add data every 5 minutes though You can add as much data into the RRD and at any time you like The RRD will combine this data into a data point If you have a default step rate of 5 minutes but you add some data every minute to your RRD, it will average these 5 values into 1 data point As you can image, RRD s are not really for storing actual data, but just for graphical and statistical usages. Getting the extension. Before we can do something useful with RRD, we need to install the RRD extension If you are running on CentOS you are in luck The RPMForge repository provides a php5-rrdtool package which you can install with yum install php5-rrdtool On a Debian or Ubuntu system there is no default package but it s very easy to build from the source. If you cannot build the extension or you cannot find anything working, no fear You can still use the command line version of RRDTool to try all examples. Our RRD example. The best way to get acquainted with RRD is to actually create one Suppose you want to display some statistics of users that have logged into our web-application and we want to see the number of failures that have occurred, for instance, when a user has entered a wrong password We want to view this data in a daily graph, a weekly graph, a monthly graph and maybe a yearly graph as well. Creating our database file. As said, RRDtool is more or less a database so we much define some kind of schema In order to do this, we can use the rrdcreate function or the rrdtool create command line version There are two different things we need to configure the data sources and the round robin archives The data sources tells you what to store whereas the round robin archives tell s you how to store it. Setting up data sources. The data sources describe the actual data we want to store In our case we want to store 2 kind of data points the number of succeeded log-ins, and the number of failed log-ins We call them success and failed respectively These data sources are ABSOLUTE types, which means the data is reset after every point collection There are other types, depending on the type of data you want to store. Furthermore, we need to specify a heartbeat This means that when no data source is recorded in this amount of time, RRD will consider the data point as unknown which is something different than 0.The last 2 items we have to specify is the lower and upper boundary of the data source If we would have data source that is given in percentages for instance, your server s used disk space in percentage , we could specify an lower limit of 0, and an upper limit of 100 Since we deal with log-in attempts, we can only specify the lower boundaries We set the upper bound ary to U unknown. Setting up the RRA. Now that we know WHAT to store, we must tell RRD how to store the data As said, data is stored in a cyclic round robin way so we must define the amount of room we want to use We want to have 4 different graphs daily, weekly, monthly and yearly This however does not mean we need to have 4 RRA s RRD can decide which RRA s it will use to graph data. Each RRA is defined in the following format. The cf stands for consolidation function and can be either AVERAGE, LAST, MIN, MAX It defines how the data points get aggregated AVERAGE will average the points, LAST will store the last point, MIN will store the lowest point found and MAX the highest The xff should be set to 0 5, and steps decide how many points get consolidated, rows is the amount of points it will store eventually. I ve decided to create 3 RRA s one stores the single 5-minute samples for a period of 1 day 12 points per hour times 24 hours 288 points , one stores 1 hour samples 12 points for 1 week 24 7 points and one stores 1 day 288 points samples for a year 365 points. Off course, we could have stored each 5-minute point for a period of 1 year, but we would have to store 12 24 365 105120 points By storing in a consolidated way, we have an efficient way of storing the data while we still maintain enough information for plotting our graphs. Updating your data. RRD must collect data on fixed intervals We should have a separate system like a cronjob that collects the amount of data and updates the RRD accordingly If we don t update on time as specified by the heartbeat , we get unknown points which causes empty spots in our graphs later on The next snippet will simulate login successes and failures ranging back from 180 days ago until now. Now we have arrived at the coolest part of RRD the graphing of the data I create 4 basic graphs Each graph shows the successful attempts in green, and on top I ve specified the failed attempts There are many different ways of graphing the data as l ines, different shades, surfaces etc and almost every aspect of the graph is customizable. Our result should be something like this. RRDtool is a really great to generate graphs in a simple way, but don t get fooled by it s apparent simplicity It s capable of creating very complex graphs if needed We just scraped the basics which is more than enough to get you started in your own graphs Unfortunately, the PHP binding of RRDTool are not really well maintained, but since they are merely a shell around the command line version, they work properly enough to create cool graphs. More information about RRD and the RRDTool can be found on the main RRD website. About the author Joshua Thijssen is a senior software engineer at Enrise and owner of the privately held company NoxLogic His programming skills includes but is not limited to assembly, C, C , Java, Perl, Python and PHP and has experience on administering a wide range of operating systems One of his specialties is fine tuning MySQL databases and queries His personal blog can be found on. Related Posts.

No comments:

Post a Comment