root@wl ~ # wget http://blogs.sun.com/roller/resources/timc/nicstat/nicstat-1.21.tar.gz root@wl ~ # mkdir nicstat root@wl ~ # cd nicstat root@wl ~/nicstat # tar xvfz ../nicstat-1.21.tar.gz root@wl ~/nicstat # mv nicstat.Solaris.i386 /usr/local/bin/nicstat root@wl ~/nicstat # mv nicstat.1 /usr/local/man/man1소스설치
root@wl ~/nicstat # mv Makefile.Solaris Makefile
root@wl ~/nicstat # make
root@wl ~/nicstat # make install 1)
1) /usr/local에 설치된다. 위치를 바꾸려면 [make BASEDIR=/install/path install]와 같이 한다.
root@wl ~ # nicstat 5
Time Int rKB/s wKB/s rPk/s wPk/s rAvs wAvs %Util Sat
13:33:16 lo0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:33:16 bge0 0.03 0.01 0.21 0.16 125.5 88.07 0.00 0.00
13:33:16 bge1 0.00 0.00 0.01 0.00 136.8 68.89 0.00 0.00
Time Int rKB/s wKB/s rPk/s wPk/s rAvs wAvs %Util Sat
13:33:21 lo0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:33:21 bge0 0.12 0.15 1.00 1.00 119.0 156.2 0.00 0.00
13:33:21 bge1 0.00 0.01 0.00 0.20 0.00 64.00 0.00 0.00
Time Int rKB/s wKB/s rPk/s wPk/s rAvs wAvs %Util Sat
13:33:26 lo0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:33:26 bge0 0.01 0.08 0.20 0.20 64.00 430.0 0.00 0.00
13:33:26 bge1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Ctrl+C
root@wl ~ #
첫번째 라인은 시스템 부트 이후의 통계가 표시된다.
Time: 현재 시간 Int: 인터페이스명 rKB/s: 초당 수신 바이트 wKB/s: 초당 송신 바이트 rPk/s: 초당 수신 패킷 wPk/s: 초당 송신 패킷 rAvs: 수신 패킷당 평균 크기(바이트) wAvs: 송신 패킷당 평균 크기(바이트) %Util: 인터페이스 사용율 Sat: Saturation. 오류 회수. 포화 상태를 표시.
root@wl ~ # cat kstattest.c
// cc -lkstat -o kstattest kstattest.c
#include <kstat.h>
#include <stdio.h>
void my_module_display(kstat_t * ksp) {
printf("%s %s %s", ksp->ks_module, ksp->ks_name, ksp->ks_class);
}
void my_io_display(kstat_io_t kio) {
printf(" %d %d\n", kio.nread, kio.nwritten);
}
void main() {
kstat_ctl_t * kc;
kstat_t * ksp;
kstat_io_t kio;
kc = kstat_open();
for (ksp = kc->kc_chain; ksp != NULL; ksp = ksp->ks_next) {
if (ksp->ks_type == KSTAT_TYPE_IO) {
kstat_read(kc, ksp, &kio);
my_module_display(ksp);
my_io_display(kio);
}
}
kstat_close(kc);
}
root@wl ~ # cc -lkstat -o kstattest kstattest.c
root@wl ~ # ./kstattest
cmdk cmdk0 disk 338056704 0
cmdk cmdk1 disk 317503488 0
usba ehci0,total usb_byte_count 0 0
usba ehci0,ctrl usb_byte_count 0 0
usba ehci0,isoch usb_byte_count 0 0
usba ehci0,bulk usb_byte_count 0 0
usba ehci0,intr usb_byte_count 0 0
...
usba uhci3,total usb_byte_count 0 0
usba uhci3,ctrl usb_byte_count 0 0
usba uhci3,isoch usb_byte_count 0 0
usba uhci3,bulk usb_byte_count 0 0
usba uhci3,intr usb_byte_count 0 0
sd sd2 disk 88 0
nfs nfs1 nfs 0 0
root@wl ~ #
|
|
Copyright © 2004-2010 Jo HoSeok. All rights reserved. |