![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 31.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam serdecznie,
pisze stronke która za pomocą snmpget odpytuje router o pewne dane klientów sieci i je wyswietla. Wszystko pięknie ladnie kiedy klient jest podłączony do sieci (wtedy router pokazuje syngał oraz tx/rx rate) ale juz mam problem kiedy jest niepodłaczony. Wtedy snmpget sypie innym komunikatem. Kod $a = snmpget("$host","$community",$linia['sygnal']); //sygnał $wynika=str_replace('INTEGER:', '', $a); ?> <i> <br><b><div style="text-indent: 10px; size="2"">Jakość połączenia :</div></front></i></b><center> <table border="1" width="60%" frame="void" cellpadding="10"> <tr bgcolor="aliceblue"> <td> Siła sygnału :<b> <?php print "$wynika"; ?> Tak wyglada ogolnie kod. Kiedy klient jest połączony do routera to snmpget wyswietla "integer: -65" co ja zamieniam str_replace by wyswietlało jako tylko "-65" Jednak kiedy Nie jest połaczony to Cytat Warning: snmpget() [function.snmpget]: Error in packet: (noSuchName) There is no such variable name in this MIB. in /var/www/strona/myaccount.php on line 81 Warning: snmpget() [function.snmpget]: This name does not exist: SNMPv2-SMI::enterprises.14988.1.1.1.2.1.3.0.17.34.51.68.85.9 in /var/www/strona/myaccount.php on line 81 I teraz mam pytanie , jak sobie z tym poradzić? Myślałem o pingowaniu klienta i jesli jest ok to wtedy dopiero snmpget, ale niestety nie wszystkich klientow da sie pingowac- niektorzy mimo ze zalogowani nie odpowiadaja na ping (zapewne firewall albo coś). Próbowałem zastosować try {} catch jednak to sie nie sprawdziło w moim przypadku. Druga sprawa to chciałem zrobić aby sygnał <-70 ( -68,-40 itd)pokazywało na zielono zaś powyżej na czerwono. Czy można zrobić to jakoś? Chodzi mi o to czy "-75" które będzie wynikiem snmpget'a można traktować jako liczbe a nie tekst ? I ostatnia sprawa to chciałem zrobić dla sygnału wykres. Znalazłem na internecie kilka funkcji rysujących wykres (mówie tutaj o prostym wykresie liniowym ) jednak w znalezionych skryptach dane wprowadzone w wykres są recznie wpisane w kod skryptu. Jeśli "-75" mozna traktować jako liczbe to jak "prosto" zapisywać co np 5min taka wartośc do pliku i nastepnie ją pobierać by "rysowac" wykres. Mam nadzieję, że wszystko opisałem w miare zrozumiale. Prosze o Waszą pomoc. Pozdrawiam Rafał Ten post edytował baxik20 8.01.2009, 22:07:08 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Druga sprawa to chciałem zrobić aby sygnał <-70 ( -68,-40 itd)pokazywało na zielono zaś powyżej na czerwono. Czy można zrobić to jakoś? Chodzi mi o to czy "-75" które będzie wynikiem snmpget'a można traktować jako liczbe a nie tekst ? Czy naprawde ciezko sprawdzic czy mozna traktowac jak liczbe?
Trudne? Jak chcesz możesz też jawnie zrzutować na liczbe:
Co do warningow to mozesz dac malpe @ przed snmpget() i je wyciszysz. Nie jest to jednak zbyt elegancke rozwiązanie. Mozesz podpiac wlasny error handler http://pl2.php.net/manual/en/function.set-error-handler.php I cos robic z tymi bledami Cytat eśli "-75" mozna traktować jako liczbe to jak "prosto" zapisywać co np 5min taka wartośc do pliku i nastepnie ją pobierać by "rysowac" wykres. Odpalasz cronem skrypt co 5 minut, ktory zczytuje te wartosci i zapisuje do bazy/pliku/gdziekolwiek Majac te dane mozesz rysowac |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 31.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Co do warningow to mozesz dac malpe @ przed snmpget() i je wyciszysz. Nie jest to jednak zbyt elegancke rozwiązanie. Mozesz podpiac wlasny error handler http://pl2.php.net/manual/en/function.set-error-handler.php I cos robic z tymi bledami Odpalasz cronem skrypt co 5 minut, ktory zczytuje te wartosci i zapisuje do bazy/pliku/gdziekolwiek Majac te dane mozesz rysowac Dziekie serdeczne za pomoc, @ mi wystarczy, chociaz mozliwe ze pobawie sie ze error handler Co do wykresu to masz może Ty albo ktoś prosty przykład na takie rysowanie wykresu ? Chodzi mi o przydład na pobieranie i zapisywanie do pliku oraz ich odczytu. Jeszcze raz dziekuje za pomoc, pozdrawiam Rafał |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 11:41 |