use SNMP get sysUpTime.0 - help, den68, 21-Фев-08, 03:36 [смотреть все]Попытки получить дату в читаемом формате ни кчему не превели,use SNMP; my $sess = new SNMP::Session(DestHost => '10.1.1.4', Community => $community, .... print $sess->get('sysUpTime.0'); выдает цифру типа 228881960, попытки преобразовать из unix стамп (я правильно понимаю что именно в этом формате оно и есть), ни к чему не превели: ($sec,$min,$hour,$mday,$mon) = ((localtime($sess->get('sysUpTime.0')))[1,2,3,4,5]); print "($sec,$min,$hour,$mday,$mon)\n"; =(,,,,) что это за тип ? и как попроще получить дату в читаемом формате ?
|
- use SNMP get sysUpTime.0 - help, allez, 08:14 , 21-Фев-08 (1)
>print $sess->get('sysUpTime.0'); выдает цифру типа 228881960, попытки преобразовать из unix стамп (я правильно понимаю что именно в этом формате оно и есть), ни к чему не превели:У меня Perl просто выругался на квадратные скобки, в которых вы указали нужные вам индексы. Насколько я помню, localtime() возвращает не массив, а структуру, поэтому можно попытаться сделать так (просто не используйте ненужные переменные):
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($sess->get('sysUpTime.0')); Кстати, интересно, если полученное вами число (а не цифра ;-)) обозначает дату, то дата эта очень уж "лохматая" получается: Sun Apr 3 02:19:20 UTC 1977. Если же это - количество секунд, прошедшее с момента запуска системы (а ничего другого у меня с sysUpTime не ассоциируется), то аптайм получается очень даже нехилый - 7 лет, 3 месяца и 2 дня с хвостиком. :-) P. S. А еще почитайте "perldoc Time::Local" - возможно, пригодится.
- use SNMP get sysUpTime.0 - help, Wulf, 10:24 , 21-Фев-08 (2)
sysUpTime - количество миллисекунд от старта системы.
- use SNMP get sysUpTime.0 - help, allez, 10:59 , 21-Фев-08 (3)
>sysUpTime - количество миллисекунд от старта системы. Спасибо. Значит, автору темы полученное значение нужно будет еще на 1000 разделить...
- use SNMP get sysUpTime.0 - help, idle, 12:02 , 21-Фев-08 (4)
>sysUpTime - количество миллисекунд от старта системы. Не совсем верно. SysUpTime - количество 1/100 секунд со старта системы.
- use SNMP get sysUpTime.0 - help, den68, 20:28 , 21-Фев-08 (5)
>>sysUpTime - количество миллисекунд от старта системы. > >Не совсем верно. >SysUpTime - количество 1/100 секунд со старта системы. А по понятнее :) ? это делить на что ? 1 сек = 100 едениц в этой цифири ?
- use SNMP get sysUpTime.0 - help, allez, 14:12 , 22-Фев-08 (6)
>>>sysUpTime - количество миллисекунд от старта системы. >> >>Не совсем верно. >>SysUpTime - количество 1/100 секунд со старта системы. > >А по понятнее :) ? >это делить на что ? 1 сек = 100 едениц в этой >цифири ? А что тут непонятного? Это количество сотых долей секунд и, следовательно, его надо делить на 100.
|