RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : Ответить на сообщение
Имя:
e-mail:
FIDO:
Home page:
сохранить данные о вас
Тема:
> > > > > Добрый день! > > > > > Крутится у меня маленький rexx-скрипт, который использует "netstat -t|rxqueue". Сейчас потребовалось уменьшить интервал опроса, но такая комбинация слишком ресурсоемкая. Подскажите, нет ли такой длл-ки, с помощью которой, можно добиться того-же.. Меня итересует(пока) только количество отправленных и принятых байт по TCP/IP .. > > > > > > > > Зукин IPSTAT ? > > > > > > > так он еще требует установки SFF. Или я чего-то не понял.... > > Или требует запускать специального демона ipstatd - который по словам самого > > Зуки сильно грузит машину... > Машина машине рознь. Достаточно попробовать. Для инетного сервера с процессором от целерона 1г и выше - не думаю, что это возможно обнаружить... > > имхо, чтоит попробовать ipstat|rxqueue. > Пример (от фонаря): > > /*********************************************************************** > * Программа вызывает аварийку при нулевом траффике на указанном * > * интерфейсе в течение указанного периода времени. * > * Предполагается, что демон ipstat предварительно стартован с режимом * > * pipe. * > ***********************************************************************/ > > Call rxfuncadd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs' > Call SysLoadFuncs /* activate rexxutil pack */ > > Parse arg interface abend time > If interface='' then interface='lan0' > If time='' then time=1 > If abend='' then abend=sayer > If right(time,1)='S' then time=left(time,length(time)-1) > If right(time,1)='M' then time=left(time,length(time)-1)*60 > If right(time,1)='H' then time=left(time,length(time)-1)*60*60 > If right(time,1)='D' then time=left(time,length(time)-1)*60*60*24 > > Do forever > call SysSleep time > Address cmd '@ipstat.exe stat' interface '|rxqueue' > If queued()=0 then interpret 'call' abend ',"no traffic on" interface time "sec."' > s=0 > p=0 > do queued() > Parse pull line > Parse var line YYYYMMDD HHMMSS YYYYMMDD HHMMSS iface src_ip dst_ip protocol src_port dst_port bytes packets > if packets='' then say line > else do > s=s+bytes > p=p+packets > end > end > SAy date('e') time()':' s 'bytes' p 'packets.' > end >
_, _, _, _, _ _ _,_
(_ | / \ |\ | | |_/
, ) | , \ / | \| | | \
~ ~~~ ~ ~ ~ ~ ~ ~
Programmed by
Dmitri Maximovich
,
Dmitry I. Platonoff
,
Eugen Kuleshov
.
25.09.99 (c) 1999,
RU/2
. All rights reserved.
Rewritten by
Dmitry Ban
. All rights ignored.