AFS는 3개의 기본 모니터 도구을 제공합니다.
AFS는 또한 AIX를 실행하는 파일 서버 시스템에 대한 AFS 이벤트를 감사하는 툴을 제공합니다.
이 장에서는 표시된 명령을 사용하여 다음 타스크를 수행하는 방법에 대해
설명합니다.
| scout 프로그램 시작 | scout |
| 추적 로그에 대한 정보 표시 | fstrace lslog |
| 이벤트 세트에 대한 정보 표시 | fstrace lsset |
| 추적 로그 크기 변경 | fstrace setlog |
| 이벤트 세트 상태 설정 | fstrace setset |
| 추적 로그 내용 덤프 | fstrace dump |
| 추적 로그 지우기 | fstrace clear |
| afsmonitor 프로그램 시작 | afsmonitor |
scout 프로그램은 파일 서버 시스템에서 실행중인 파일 서버 프로세스의 상태를 모니터합니다. 지정된 파일 서버 프로세스 세트에서 통계를 정기적으로 수집하며, 이들을 그래픽 형식으로 표시한 다음, 통계가 구성할 수 있는 임계치를 초과하면 경보를 보냅니다.
특히 scout 프로그램에는 다음 기능이 포함됩니다.
scout 프로그램은 curses 그래픽 패키지에 액세스하는 모든 AFS 클라이언트 시스템에서 실행되며, 대부분의 UNIX 제품에는 표준 유틸리티로서 포함됩니다. 이것은 더미 터미널과, 터미널을 에뮬레이트하는 창 표시 시스템 모두에서 실행될 수 있지만, 출력은 역상(reverse) 비디오와 커서 주소지정을 지원하는 시스템에서 가장 좋습니다. 최상의 결과를 얻기 위해서는, TERM 환경 변수를 정확한 터미널 유형이나 실제 것과 비슷한 특성을 가진 터미널로 설정합니다. AIX를 실행중인 시스템에서는, TERM을 vt100으로 설정하는 좋으며, 터미널이 vt100과 유사하다고 가정합니다. 다른 운영 체제의 경우, 사용할 수 있는 값의 범위는 xterm, xterms, vt100, vt200 및 wyse85입니다.
scout 프로그램을 실행하는 데에는 아무 특권도 필요하지 않으므로, 2진 파일이 있는 디렉토리(일반 구성에서는 /usr/afsws/bin 디렉토리)에 액세스할 수 있는 사용자는 누구나 이를 사용할 수 있습니다. 통계를 수집하기 위한 프로그램 조사가 파일 서버 프로세스에 심각하게 부담되는 것은 아니지만 디렉토리에 있는 2진 파일을 좀 더 제한적인 액세스 제어 목록(ACL)에 삽입함으로써 그 사용을 제한할 수 있습니다.
scout 프로그램의 여러 인스턴스들은 단일 클라이언트 시스템에서 실행될 수 있으며, 각각은 자신의 전용 연결을 갖습니다(자신의 창에서). 포어그라운드로 실행되어야 하므로, 실행되는 창은 인터럽트 신호를 제외한 더 이상의 입력은 받아들이지 않습니다.
중앙 시스템에서 다른 시스템으로의 텔넷 연결을 개설하고 각 원격 창에서 프로그램을 초기설정하면 여러 시스템에서 scout 프로그램을 실행하고 단일 시스템에서 그 출력을 볼 수 있습니다. 이 경우, -host 플래그를 scout 명령에 포함시켜 출력을 표시하는 창 맨위에 있는 배너 행에 각각의 원격 시스템 이름이 표시되도록 할 수 있습니다. 배너 행을 참조하십시오.
앞에서 설명한 바와 같이, scout 프로그램은 여러 파일 서버 시스템에서 파일 서버 프로세스를 모니터할 수 있습니다. 모든 시스템들이 같은 셀에 속하면, 이들의 호스트이름도 ABC 회사 셀의 abc.com처럼 모두 도메인 이름 접미어가 같습니다. 이 경우, -basename 인수를 scout 명령에서 사용할 수 있습니다. 이렇게 하면 여러가지 장점이 있습니다.
scout 프로그램은 전용 창이나, 창 환경을 사용할 수 없는 경우는 일반 화면에서 통계를 표시할 수 있습니다. 최상의 결과를 얻으려면, 역상으로 인쇄될 수 있고 커서를 지정할 수 있는 창이나 화면을 사용하십시오.
scout 프로그램 화면에는 3개의 기본 영역 즉, 배너 행, 통계 디스플레이 영역 및 조사/메시지 행이 있습니다. 이 절에서는 이들의 내용에 대해 설명하며, 명령 및 디스플레이 예에서는 그래픽 예도 있습니다.
기본적으로 창이나 화면의 맨 위에 있는 배너 행에서는 scout 문자열이 나타나 scout 프로그램이 실행중임을 표시합니다. 명령행에 적합한 옵션을 포함시켜 두 가지 유형의 정보를 표시할 수도 있습니다.
예를 들어 다음 배너 행은 client1.abc.com 시스템에서 scout 프로그램을 실행하고 -host 플래그를 사용할 때 나타납니다.
[client1.abc.com] scout
예를 들어 -basename 인수에 abc.com 값을 지정할 경우 배너 행은 다음과 같습니다.
scout for abc.com
통계 디스플레이 영역이 창의 대부분을 차지하며, 6개의 컬럼으로 나눠집니다. 다음 목록에서는 창의 왼쪽에서 오른쪽으로 나타나는 이들에 대해 설명합니다.
partition_letter:free_blocks
예를 들어 a:8949는 /vicepa 파티션에서 8,949 KB가 사용되지 않고 있음을 나타냅니다. 창이 모든 파티션 항목이 단일 행에 표시되기에 충분하지 않은 경우, scout 프로그램은 자동으로 여섯 번째 칼럼내에 있는 서브칼럼으로 파티션 항목을 쌓습니다.
Disk attn 컬럼에 있는 레이블은 컬럼내 항목이 강조표시되는 임계치를 나타냅니다. 기본적으로 scout 프로그램은 95% 이상이 차면 파티션을 강조표시하며, 이 경우 레이블은 다음과 같습니다.
Disk attn: > 95% used
이 임계치 및 강조표시 효과에 대해서는 주요 통계 강조표시의 내용을 참조하십시오.
다섯 번째(파일 서버 시스템 이름)를 제외한 모든 컬럼에서, -attention 인수를 사용하여 scout 프로그램이 통계를 강조표시하는 이상으로 임계치를 설정할 수 있습니다. 기본적으로 다섯 번째와 여섯 번째 컬럼에 있는 값만이 강조표시됩니다. -attention 인수 사용에 대해서는 주요 통계 강조표시 내용을 참조하십시오.
디스플레이 하단 행은 scout 프로그램이 통계를 위해 파일 서버 프로세스를 조사했던 횟수를 나타냅니다. 마지막 조사에서 수집한 통계는 통계 디스플레이 영역에 나타납니다. 기본적으로 scout 프로그램은 매 60초마다 파일 서버를 조사하지만, -frequency 인수를 지정하여 다른 조사 빈도를 지정할 수 있습니다.
현재 임계치 값을 초과하는 통계를 주목하기 위해, scout 프로그램은 이를 역상으로 (강조표시하여) 표시합니다. 대부분의 통계에서 임계치 값을 설정할 수 있으므로, 특별한 주의를 해야 하는 값과 일반 값을 결정할 수 있습니다.
강조표시를 제어할 수 없는 유일한 컬럼은 다섯 번째로서, 다른 컬럼에서 통계가 표시되는 파일 서버 시스템을 나타냅니다. scout 프로그램은 이 컬럼에서 강조표시를 사용하여 시스템에 있는 파일 서버 프로세스가 조사에 응답하지 않았음을 나타내고 자동으로 다른 컬럼은 공백이 됩니다. 조사에 응답하지 않았음은 파일 서버 프로세스, 파일 서버 시스템 또는 네트워크 정지를 나타낼 수 있으므로, 강조표시하면 사용자에 대한 서비스가 인터럽트되는 상황에 주목할 수 있습니다.
파일 서버 프로세스가 다시 한번 조사에 응답할 때, 이름은 정상적으로 표시되고 통계는 다른 컬럼에 다시 나타납니다. 모든 시스템 이름이 갑자기 강조표시되면, 네트워크 정지로 인해 파일 서버 시스템과 scout 프로그램을 실행중인 클라이언트 시스템간의 연결이 중단될 수 있습니다.
5개 통계 표시 컬럼 중 하나 이상에 대한 임계치를 설정하려면 -attention 인수를 사용하십시오. 임계치는 모니터하는 모든 파일 서버 프로세스에 적용됩니다(서로 다른 각 시스템에 대해 다른 임계치를 설정할 수 없습니다). 자세한 내용은 scout 프로그램 시작하기에 있는 구문 설명을 참조하십시오.
실행중인 scout 프로그램의 임계치는 변경할 수 없습니다. 현재 프로그램을 정지하고 새로운 프로그램을 시작하십시오. 또한 scout 프로그램은 재시작하는 동안 임계치를 유지하지 않으므로, 프로그램을 시작할 때마다 모든 임계치를 지정해야 합니다.
scout 프로그램이 실행되고 있는 동안에는 디스플레이 창의 크기를 재조정하지 마십시오. 크기를 증가시켜도 아무 해가 없지만 scout 프로그램이 새로운 차원으로 조정할 필요는 없습니다. 디스플레이의 폭을 줄이면 컬럼 정렬이 흐트러져 디스플레이를 읽기가 어려워 집니다. 어떤 유형의 크기 재조정이든, scout 프로그램은 다음 조사 결과를 표시할 때까지 어떤 방법으로든 디스플레이를 조정하지 않습니다.
디스플레이의 크기를 효과적으로 재조정하려면, scout 프로그램을 정지하고 창의 크기를 재조정한 다음 프로그램을 다시 시작하십시오. 이런 경우에서도 scout 프로그램의 응답은 디스플레이 환경에서 받은 정보의 정확도에 따라 달라집니다. 개발 도중의 검사에서는 디스플레이 환경이 창 크기 재조정을 위한 정보를 신용있게 제공하지 않음을 보여줍니다. X 창 시스템을 사용하는 경우, 때때로 scout 프로그램을 시작하기 전에 일련의 명령들을 실행하면(또는 이들을 쉘 초기설정 파일에 삽입하면) 크기를 제대로 재조정할 수 있게 됩니다.
% set noglob % eval '/usr/bin/X11/resize' % unset noglob
% scout [initcmd]
-server <FileServer name(s) to monitor>+ \
[-basename <base server name>] \
[-frequency <poll frequency, in seconds>] [-host] \
[-attention <specify attention (highlighting) level>+] \
[-debug <turn debugging output on to the named file>]
여기서
도메인 접미어와 시스템 이름의 초기 파트를 구분하는 점은 포함하지 마십시오. 그러나 접미어 자체에 있는 점은 포함하십시오(예를 들어 ABC 회사 셀에서 적합한 값은 .abc.com이 아닌 abc.com입니다).
사용자가 지정한 값은 뒤에 Disk attn 문자열이 오는 여섯 번째 컬럼 헤더에 나타납니다. 기본 임계치는 95%입니다.
percent_full에 적합한 값은 0 - 99 이내의 정수값이며, 이 통계를 min_blocks 값과 구분하려면 퍼센트 기호를 삽입해야 합니다. .
다음 예에서는 Conn 컬럼의 임계치를 100으로, Ws 컬럼은 50, Disk attn 컬럼은 75%로 설정합니다. Fetch 및 Store 컬럼의 임계치는 없습니다.
-attention conn 100 ws 50 disk 75%
다음 예는 Disk attn 컬럼의 임계치를 5000개 미사용 KB 블록으로 설정한 것을 제외하면 이전 예와 그 효과가 같습니다.
-attention disk 5000 ws 50 conn 100
이 절에서는 서로 다른 인수를 결합하고 그 결과를 표시하는 화면에 대해 설명하는 scout 프로그램 예를 제공합니다.
첫번째 예에서, ABC사에 있는 관리자는 선택적인 인수나 플래그를 제공하지 않고 scout 명령을 실행합니다. 여러 시스템 이름을 제공하므로 -server 인수를 포함합니다. -basename 인수를 사용하지 않는 경우라도 scout 프로그램이 연결을 설정하는 데 필요한 완전한 이름을 확인하는 셀의 이름 서비스에 따라 각 시스템 이름의 처음 파트를 지정하도록 선택합니다.
% scout -server fs1 fs2
그림 2에서는 결과 디스플레이에 대해 설명합니다. 먼저 다섯 번째(unlabeled) 컬럼에 있는 시스템 이름이 명령행에서 관리자가 사용했던 형식으로 나타남을 주의하십시오. 이제는 디스플레이 영역에 있는 두 번째 행을 살펴보십시오. 여기서 시스템 이름 fs2는 다섯 번째 컬럼에서 나타납니다. Conn과 Ws 컬럼은 함께 시스템 fs2에는 44 클라이언트 시스템에 대해 144개의 RPC 연결이 개설되어 있음을 보여주며, 클라이언트당 여러 연결이 가능함을 설명하고 있습니다. Fetch 컬럼에서는 클라이언트 시스템에서 파일 서버 프로세스가 마지막으로 시작된 뒤 fs2에 대해 2,734,278개의 패치 RPC가 작성되었음을 보여주며, Store 컬럼에서는 34,006개의 저장 RPC를 작성했음을 보여줍니다.
6개 파티션 항목은 Disk attn 컬럼에 표시되어, a - f 범위 이내로 표시됩니다(/vicepa - /vicepf). 이들은 차의 폭으로 인해 두 개의 서브칼럼에서 3개 행으로 표시되며, 창이 좀 더 넓으면 그 이상의 많은 서브칼럼이 있을 수 있습니다. 4개의 파티션 항목(a, c, d 및 e)은 역상으로 나타나 95%(Disk attn 헤더에 나타나는 파티션) 이상이 가득 찼음을 나타냅니다.
![]() |
두 번째 예에서, 관리자는 좀 더 많은 scout 프로그램 선택 인수를 사용합니다.
% scout -server fs1 fs2 -basename abc.com -host -frequency 5 -attention disk 5000
선택적인 인수를 사용하면 그림 3 및 그림 2에서 여러가지가 달라질 수 있습니다. 먼저, -host 플래그가 포함되지 않으므로, 배너 행에서는 scout 프로세스를 실행하는 시스템 이름을 -basename 인수로 지정된 기본이름이 abc.com인 [client52]로서 표시합니다.
또 다른 차이점은 값이 그림 2에서 처럼 거의 같은 경우라도 시스템 fs2의 파티션 4개 중 두 개가 역상으로 표시되는 것입니다. 이것은 관리자가 강조표시 임계치를 최소 5000 블록으로 변경했기 때문이며, Disk attn 컬럼의 헤더에서도 반영됩니다. 그리고 시스템 fs2의 파티션 /vicepa 및 /vicepd가 여전히 95%로 가득차 있는 동안, 5000 이상의 자유 블록이 남습니다. 파티션 /vicepc 및 /vicepe 는 5000 블록 이하가 사용되지 않은 것이므로 강조표시됩니다.
또한 조사 빈도를 변경한 결과는 디스플레이의 하단 왼쪽 코너에 있는 조사 보고 행에 반영됩니다. 이 예와 이전 예 모두에서는 관리자가 scout 명령을 실행한 뒤 1분의 경과 시간을 표현합니다. 그러나 이 예에서, scout 프로그램은 1번과는 대조적으로 파일 서버 프로세스를 12번 조사합니다.
![]() |
그림 4에서, 주립 대학 셀에서 관리자는 셀의 파일 서버 시스템 중 3개를 모니터합니다. 관리자는 -basename 인수를 사용하여 stateu.edu 도메인 이름을 지정합니다.
% scout -server server2 server3 server4 -basename stateu.edu
![]() |
그림 5에서는 scout 프로그램 기능 중 3개에 대해 설명합니다. 첫번째, 한 디스플레이에서 다른 셀에 있는 파일 서버 시스템(fs1.abc.com, server3.stateu.edu 및 sv7.def.com)을 모니터할 수 있습니다. 시스템은 서로 다른 셀에 속하므로, -basename 인수를 제공할 수 없습니다.
두 번째, 디스플레이가 다섯 번째 컬럼에 맞지 않는 시스템 이름을 축약하는 방법을 설명합니다. 이름 끝에서는 별표를 사용하여 이 이름이 축약되었음을 알려줍니다.
세 번째, scout 프로세스가 파일 서버 프로세스에 도달할 수 없을 때 발생하는 내용에 대해 설명합니다. 이 경우는 sv7.def.com 시스템상에 있는 것. 시스템 이름을 강조표시하고 다른 컬럼에서는 값을 공백처리합니다.
![]() |
이 절에서는 시스템 관리자가 디버그 목적으로 캐쉬 관리 프로그램 활동을 추적하기 위해 사용하는 fstrace 명령에 대해 설명합니다. 여기서는 독자가 클라이언트 시스템 및 캐쉬 관리 프로그램 관리에서 설명한 캐쉬 관리 프로그램의 개념에 익숙한 것으로 가정합니다.
fstrace 명령 집합은 캐쉬 관리 프로그램의 내부 활동을 모니터하고, 그 동작을 자세하게 기록 또는 추적할 수 있게 합니다. 이벤트라고 하는 동작들은 cm 이벤트 세트에 포함됩니다. cm 이벤트 예에서는 파일을 패치하고, UNIX ls 명령을 사용하여 파일 및 하위 디렉토리 목록에 대한 정보를 조사합니다.
다음은 fstrace 명령과 이들의 기능입니다.
fstrace 명령 집합은 fs debug 명령이 제공하는 앞의 기능들을 대체하며 확대합니다. 확장 사용은 특정 캐쉬 관리 프로그램 문자점, 예를 들면 클라이언트 시스템 정지, 캐쉬 일치 문제점, 시계 동기화 오류 및 볼륨 또는 AFS 파일에 대한 액세스 실패등을 진단하는 데 도움을 주기 위한 것입니다. 그러므로, AFS 서버 프로세스에 대한 로그와는 달리 항상 fstrace 로그를 사용가능으로 설정하지 않는 것이 좋습니다.
추적 로그에 있는 메시지 대부분은 하위 캐쉬 관리 프로그램 동작에 해당됩니다. AFS 소스 코드에 익숙한 개인만이 이들을 해석할 수 있습니다. AFS 소스 사용권을 가지고 있는 경우, 스스로 추적을 해석하기 위해 시도하거나, AFS 제품 지원 그룹에 대해 작업하여 기본 문제점을 해결할 수 있습니다. AFS 소스 사용권이 없으면, 문제가 발생한 경우 즉시 AFS 제품 지원 그룹에 접속하는 것이 가장 효과적입니다. 해당되면 fstrace 추적을 활성화하도록 지시할 수도 있습니다.
로그의 크기는 매우 빠르게 성장할 수 있습니다. 이것은 로컬 파일 공간에 있는 파일로 기록할 때 사용가능한 디스크 공간을 사용할 수 있습니다. 뿐만 아니라 로그 크기가 너무 크면, 관련 정보에 대한 결과를 해석하기가 어려워질 수 있습니다.
When AFS 추적이 사용 가능할 경우, cm 이벤트가 발생할 때마다 메시지는 추적 로그 cmfx로 기록됩니다. 문제점을 진단하려면, 추적 로그의 출력을 읽고 캐쉬 관리 프로그램이 실행한 동작을 분석하십시오. 추적 로그의 기본 크기는 60KB이지만, 증가 또는 축소시킬 수 있습니다.
fstrace 명령 집합을 사용하려면, 먼저 추적을 사용 가능으로 설정하고 fstrace setset 명령을 사용하여 추적 로그에 대한 공간을 예약 또는 할당해야 합니다. 이 명령을 사용하면 cm 이벤트 세트를 세 가지 상태 중 하나로 설정하고 이벤트 세트에 대한 추적을 사용가능 또는 불능으로 설정한 뒤 커널에서 추적 로그에 대한 공간을 할당 또는 할당해제할 수 있습니다.
이벤트 세트와 추적 로그 모두는 영속적인 것으로 지정될 수 있으며, 이벤트 세트 상태가 갑자기 재설정되거나 추적 로그가 지워지지 않도록 합니다. 대상은 커널이 컴파일되고 나면 결정되고, 변경될 수 없습니다.
cm과 같은 이벤트 세트가 영속적이면, -set 인수를 fstrace setset 명령에 포함시켜야만 그 상태를 변경시킬 수 있습니다(즉, 인수없이 fstrace setset 명령을 실행하면 다른 모든 이벤트 세트 상태와 함께 그 상태를 변경할 수 없습니다). 이처럼, cmfx과 같은 추적 로그가 영속적이면, -set 또는 -log 인수를 fstrace clear 명령에 포함시켜야만 지울 수 있습니다(인수없이 fstrace clear 명령을 실행하면 다른 모든 추적 로그와 함께 이것을 지울 수 없습니다.)
문제가 발생하면, fstrace setset 명령을 사용하여 cm 이벤트 세트를 활성화로 설정하십시오. 사용중인 AFS 클라이언트에 대해 추적이 가능할 경우 기록되는 이벤트 볼륨은 중요합니다. 그러므로 문제를 진단할 때, 가능한 최대로 AFS 활동을 제한하여 로그에 있는 최대 추적양을 최소화하십시오. 추적은 시스템 성능에 역효과를 줄 수 있으므로, 문제점을 진단하지 않을 때 cm 추적을 휴면중으로 설정하십시오.
문제를 다시 생성할 수 없으면, fstrace clear 명령으로 cmfx 추적 로그를 지우고 문제를 다시 생성하십시오. 문제점을 쉽게 다시 생성할 수 없으면, 문제가 발생할 때까지 이벤트 세트 상태를 활성화로 유지하십시오.
추적 로그 내용을 보고 cm 이벤트를 분석하려면, fstrace dump 명령을 사용하여 추적 로그의 내용 행들을 표준 출력(STDOUT)이나 파일로 복사하십시오.
| 주: | 특별한 명령이나 프로세스로 인해 문제가 발생하면, 이것의 프로세스 ID(PID)를 판별하십시오. PID가 문제와 연관된 행만을 찾을 수 있도록 fstrace dump 명령의 출력을 탐색하십시오. |
특별한 권한이 필요없는 fstrace help 및 fstrace apropos 명령은 제외하고, fstrace 명령을 실행하려면 실행자가 로컬 클라이언트 시스템에 로컬 수퍼유저 루트로서 로그인해야 합니다. fstrace 명령을 실행하기 전에. 필요한 특권을 가지고 있는 지 확인하십시오.
로그가 발생할 수 있으려면 캐쉬 관리 프로그램 카탈로그가 있어야 합니다. fstrace 명령 집합에서는 표준 UNIX 카탈로그 유틸리티를 사용합니다. 이것의 기본 위치는 /usr/vice/etc/C/afszcm.cat입니다. 파일을 다른 위치에 두고 해당 NLSPATH 및 LANG 환경 변수를 사용하면 다른 디렉토리에 둘 수도 있습니다.
fstrace 명령을 가장 효과적으로 사용하려면, 다음과 같이 이들을 구성하십시오.
AFS 클라이언트 시스템에서 캐쉬 관리 프로그램 추적을 시작하려면 먼저 다음을 구성해야 합니다.
fstrace setlog 명령은 cmfx 커널 추적 로그의 크기를 킬로바이트 단위로 설정합니다. 기본적으로 추적 로그는 커널의 60 킬로바이트를 차지합니다. 추적 로그가 이미 있으면, 이 명령이 실행될 때 지워지고 지정된 크기의 새로운 로그가 작성됩니다. 그렇지 않으면 원하는 크기의 새로운 로그가 작성됩니다.
fstrace setset 명령은 cm 커널 이벤트 세트의 상태를 설정합니다. cm 이벤트 세트의 상태는 그 이벤트 세트가 기록되는 이벤트에 대한 정보를 결정합니다.
AFS 클라이언트 시스템에서 커널 추적을 설정한 뒤에는, 이벤트 세트의 상태와, 추적 로드에 할당된 커널 버퍼의 크기를 체크할 수 있습니다. cm 이벤트 세트 상태에 대한 정보를 표시하려면 fstrace lsset 명령을 실행하십시오. cmfx 추적 로그에 대한 정보를 표시하려면, fstrace lslog 명령을 사용하십시오. 추적 로그 또는 이벤트 세트의 상태 표시에서 그 설명을 참조하십시오.
% su root Password: root_password
# fstrace setlog [-log <log_name>+] -buffersize <1-kilobyte_units>
다음 예에서는 cmfx 추적 로그의 크기를 80KB로 설정합니다.
# fstrace setlog cmfx 80
% su root Password: root_password
% fstrace setset [-set <set_name>+] [-active] [-inactive] \
[-dormant]
다음 예에서는 cm 이벤트 세트를 활성화합니다.
# fstrace setset cm -active
이벤트 세트가 추적 로그에 포함되려면 활성화 상태에 있어야 합니다. 이벤트 세트의 상태를 표시하려면, fstrace lsset 명령을 사용하십시오. 그 상태를 설정하려면, 이벤트 세트 설정하기에서 설명한 것처럼 fstrace setset 명령을 실행하십시오.
추적 로그에 대한 크기 및 할당 정보를 표시하려면, fstrace lslog 명령을 -long 인수와 함께 실행하십시오.
% su root Password: root_password
# fstrace lsset [-set <set_name>+]
다음 예에서는 로컬 시스템에 있는 이벤트 세트 및 그 상태를 표시합니다.
# fstrace lsset cm Available sets: cm active
이 명령의 출력에서는 이벤트 세트와 그 상태를 나열합니다. cm 이벤트 세트에 대한 3가지 이벤트 상태는 다음과 같습니다.
% su root Password: root_password
# fstrace lslog [-set <set_name>+] [-log <log_name>] [-long]
다음 예에서는 -long 플래그를 사용하여 cmfx 추적 로그에 대한 추가 정보를 표시합니다.
# fstrace lslog cmfx -long Available logs: cmfx : 60 kbytes (allocated)
이 명령의 출력에서는 추적 로그에 대한 정보를 나열합니다. -long 플래그 없이 실행될 때 fstrace lslog 명령은 로그 이름만을 나열합니다. -long 플래그와 함께 실행될 때, fstrace lslog 명령에서는 로그, 킬로바이트 단위의 로그 크기 및 로그의 할당 상태를 나열합니다.
커널 추적 로그에 대한 두 가지 할당 상태입니다.
추적하려는 캐쉬 관리 프로그램 동작이 완료되면, fstrace dump 명령을 사용하여 표준 출력 문자열로 또는 -file 인수가 지정한 파일로 추적 로그를 덤프하십시오. 또는 추적 로그를 연속적으로 덤프하려면, -follow 인수를 사용하십시오(원하면 -file 인수와 이를 결합하십시오). 연속적인 덤프를 정지시키려면, <Ctrl-c>와 같은 인터럽트 신호를 누르십시오.
더 이상 추적 로그에 있는 데이터가 필요없을 때 추적 로그를 지우려면, fstrace clear 명령을 실행하십시오(fstrace setlog 명령은 이를 사용하여 로그 크기를 변경할 때 자동으로 기존 추적 로그를 지웁니다).
% su root Password: root_password
# fstrace dump [-set <set_name>+] [-follow <log_name>] \
[-file <output_filename>] \
[-sleep <seconds_between_reads>]
각 덤프의 출력 처음에는 덤프가 시작된 날짜와 시간을 지정하는 헤더가 옵니다. 덤프되는 로그 수는 -follow 인수가 지정되지 않은 경우 표시됩니다. 헤더는 다음과 같습니다.
AFS Trace Dump -- Date: date time Found n logs.
여기서 date는 추적 로그 덤프의 시작 날짜이고, time은 추적 로그 덤프의 시작 시간이며, n은 fstrace dump 명령으로 발견한 로그 수를 지정합니다.
다음은 추적 로그 덤프 헤더의 예입니다.
AFS Trace Dump -- Date: Fri Apr 16 10:44:38 1999 Found 1 logs.
로그 내용은 헤더 다음에 오며, 활성화된 이벤트 세트에서 로그로 기록된 메시지로 구성됩니다. 로그에 기록된 메시지에는 다음의 세 구성요소가 포함됩니다.
추적 로그 메시지의 형식은 다음과 같습니다.
time timestamp, pid pid:event message
여기서 timestamp는 임의 시작 지점에서 부터의 초 수이며, pid는 캐쉬 관리 프로그램 이벤트의 프로세스 ID 번호이며, event message는 AFS 소스 코드로 된 기능에 해당하는 캐쉬 관리 프로그램 이벤트입니다.
다음은 덤프된 추적 로그 메시지의 예입니다.
time 749.641274, pid 3002:Returning code 2 from 19
추적 로그에 있는 메시지를 읽기 쉽도록 하려면, 캐쉬 관리 프로그램 카탈로그 파일이 클라이언트 시스템의 로컬 디스크에 설치되어야 합니다. 보통 그 위치는 /usr/vice/etc/C/afszcm.cat입니다. 다음과 같이 raw op 문자열로 시작되는 로그 메시지는 카탈로그가 설치되지 않았음을 나타냅니다.
raw op 232c, time 511.916288, pid 0 p0:Fri Apr 16 10:36:31 1999
매 1024 초마다 현재 메시지가 각 로그로 기록됩니다. 이 메시지의 형식은 다음과 같습니다.
time timestamp, pid pid: Current time: unix_time
여기서 timestamp는 임의 시작 지점에서 부터의 초 수이며, pid는 프로세스 ID 번호이며, unix_time은 1970년 1월 1일 이후의 표준 시간 형식입니다.
현재 메시지는 각 로그 메시지와 연관된 실제 시간을 결정하는 데 사용될 수 있습니다. 다음과 같이 실제 시간을 결정하십시오.
로그 데이터는 한정된 원형 버퍼에 저장되므로, 일부 데이터는 읽혀지기 전에 변경될 수 있습니다. 이런 경우, 다음 메시지는 덤프의 해당 위치에 나타납니다.
Log wrapped; data missing.
| 주: | 과부하된 작업 로드하에서 발생할 수 있는 이 메시지가 덤프 중간에 나타나면, 이는 모든 로그 데이터가 로그에 기록된 것이 아니거나 몇몇 데이터가 변경되었음을 나타냅니다. fstrace setlog 명령으로 로그 크기를 증가시키면 이 문제가 완화될 수 있습니다. |
% su root Password: root_password
# fstrace clear [-set <set_name>+] [-log <log_name>+]
다음 예에서는 로컬 시스템상의 cm 이벤트 세트에서 사용하는 cmfx 로그를 지웁니다.
# fstrace clear cm
다음 예에서도 로컬 시스템상의 cmfx 로그를 지웁니다.
# fstrace clear cmfx
이 절에는 fstrace 명령 집합의 확장된 사용 예가 들어 있으며, AFS 제품 지원에 대해 작업하여 문제점을 진단하는 경우 캐쉬 관리 프로그램 활동에 대한 자세한 추적을 수집할 때 유용합니다. 제품 지원 담당자는 추적에 적합한 매개변수 설정을 선택하도록 지도할 수 있습니다.
커널 추적 로그를 시작하기 전에, 파일 액세스 문제점을 경험하는 캐쉬 관리 프로그램을 AFS 클라이언트 시스템에서 분리하려 합니다. 필요하면, 이 시스템에서 캐쉬 관리 프로그램 활동을 최소화할 때 처럼 사용자에게 다른 시스템으로 이동하도록 합니다. 추적 로그에 기록된 관련없는 AFS 활동양을 줄이려면, fstrace 2진 파일 및 덤프 파일 모두가 AFS가 아닌 로컬 디스크에 있어야 있어야 합니다. fstrace 명령을 실행하려면 로컬 수퍼유저 루트로서 로그인해야 합니다.
커널 추적을 시작하기 전에, fstrace lsset 명령을 실행하여 cm 이벤트 세트의 상태를 체크하십시오.
# fstrace lsset cm
이전에 추적이 사용 가능으로 설정되지 않았거나 추적이 클라이언트 시스템에서 오프로 설정되었으면, 다음 출력이 표시됩니다.
Available sets: cm inactive
추적이 오프로 설정되어 있고 클라이언트 시스템에 있는 추적 로그용으로 커널 메모리가 할당되지 않았으면, 다음 출력이 표시됩니다.
Available sets: cm inactive (dormant)
cm 이벤트 세트의 현재 상태가 비활성화 또는 비활성화(휴면중)인 경우는 fstrace setset 명령을 -active 플래그와 함께 실행하여 커널 추적을 온으로 설정하십시오.
# fstrace setset cm -active
현재 클라이언트 시스템에서 추적이 가능한 경우, 다음 출력이 표시됩니다.
Available sets: cm active
추적이 현재 가능한 경우는 fstrace setset 명령을 사용할 필요가 없습니다. fstrace clear 명령을 실행하여 기존 추적 로그의 내용을 지우고, 현재 문제와 연관되지 않은 이전 추적은 제거하십시오.
# fstrace clear cm
이벤트 세트의 상태를 체크한 다음, -long 플래그를 fstrace lslog 명령과 함께 실행하여 커널 추적 로그의 현재 상태와 크기를 체크하십시오.
# fstrace lslog cmfx -long
이전에 추적이 사용가능으로 설정되어 있지 않고 cm 이벤트 세트가 이전에 활성화 또는 비활성화로 설정되어 있으면, 다음과 비슷한 출력이 표시됩니다.
Available logs: cmfx : 60 kbytes (allocated)
fstrace 추적 유틸리티는 기본적으로 60 킬로바이트 메모리를 추적 로그에 할당합니다. 이를 fstrace setlog 명령을 설정하여 커널 추적 로그에 할당된 메모리 양을 줄이거나 늘릴 수 있습니다. -buffersize 인수로 지정된 숫자는 커널 추적 로그에 할당된 킬로바이트 수를 나타냅니다. 커널 추적 로그의 크기를 100 킬로바이트로 증가시키려면 다음 명령을 실행하십시오.
# fstrace setlog cmfx 100
커널 추적 로그가 사용자 요구에 맞게 구성된 다음에는 커널 추적 로그를 덤프할 수 있는 파일을 설정할 수 있습니다. 예를 들어 다음 fstrace dump 명령을 사용하여 cmfx.dump.file.1 이름으로 덤프를 작성하십시오. -follow 및 -sleep 인수를 추가하여 연속적인 프로세스로서 명령을 실행하십시오. -sleep 인수를 10으로 설정하면 커널 추적 로그의 출력이 매 10초 마다 파일로 덤프됩니다.
# fstrace dump -follow cmfx -file cmfx.dump.file.1 -sleep 10
AFS Trace Dump -
Date: Fri Apr 16 10:54:57 1999
Found 1 logs.
time 32.965783, pid 0: Fri Apr 16 10:45:52 1999
time 32.965783, pid 33657: Close 0x5c39ed8 flags 0x20
time 32.965897, pid 33657: Gn_close vp 0x5c39ed8 flags 0x20 (returns
0x0)
time 35.159854, pid 10891: Breaking callback for 5bd95e4 states 1024
(volume 0)
time 35.407081, pid 10891: Breaking callback for 5c0fadc states 1024
(volume 0)
. .
. .
. .
time 71.440456, pid 33658: Lookup adp 0x5bbdcf0 name g3oCKs fid (756
4fb7e:588d240.2ff978a8.6)
time 71.440569, pid 33658: Returning code 2 from 19
time 71.440619, pid 33658: Gn_lookup vp 0x5bbdcf0 name g3oCKs (returns
0x2)
time 71.464989, pid 38267: Gn_open vp 0x5bbd000 flags 0x0 (returns 0x
0)
AFS Trace Dump - Completed
afsmonitor 프로그램을 사용하면 통계 정보를 수집하여 지정된 파일 서버 및 캐쉬 관리 프로그램 프로세스의 상태와 성능을 모니터할 수 있습니다. 또 다른 사용 용도는, afsmonitor 프로그램이 캐쉬 관리 프로그램 구성을 조정하고 파일 서버를 로드 밸런스하는 데 사용될 수 있다는 것입니다.
afsmonitor 프로그램을 사용하면 다음 타스크를 수행할 수 있습니다.
다음 소프트웨어는 afsmonitor 프로그램이 실행중인 시스템에서 액세스할 수 있어야 합니다.
afsmonitor 화면은 소위 더미 터미날과, 터미널을 에뮬레이트하는 창 시스템 모두에서 형식화됩니다. 최상의 출력을 얻으려면, 표시 환경에서 역상 비디오와 커서 주소지정을 지원해야 합니다. TERM 환경 변수를 정확한 터미널 유형으로 설정하거나, 실제 터미널 유형과 유사한 특성을 갖는 값으로 설정하십시오. 표시 창 또는 터미널은 적어도 80 컬럼, 12행이어야 합니다.
afsmonitor 프로그램은 포어그라운드로 별도의 전용창 또는 터미널에서 실행되어야 합니다. 창이나 터미널은 afsmonitor 프로그램이 실행되는 동안에는 다른 활동에 사용할 수 없습니다. 임의 갯수의 afsmonitor 프로그램 인스턴스들은 단일 시스템에서 수행될 수 있으며, 그 동안 각각의 인스턴스들은 자신의 전용 창 또는 터미널에서 실행됩니다. 추가로 인스턴스를 시작하려면 최대 3분이 소용될 수 있음을 기억하십시오.
afsmonitor 프로그램을 실행하는 데에는 아무런 특권이 필요하지 않습니다. 일반적으로, 이 프로그램은 /usr/afsws/bin 디렉토리에 있으면, 디렉토리에 액세스할 수 있는 모든 사용자는 파일 서버와 캐쉬 관리 프로그램을 모니터할 수 있습니다. 수백명이 프로그램을 실행하지 않는다면 이 afsmonitor 프로그램이 통계를 수집하는 조사로 인해 파일 서버나 캐쉬 관리 프로그램에 심한 부담이 주어지는 것은 아닙니다. 그 사용을 제한하려면, 인증받은 사용자만 사용할 수 있는 디렉토리에 2진 파일을 두십시오.
afsmonitor 프로그램은 3개의 화면에서 그 데이터를 표시합니다.
모든 화면 코너에 있는 필드들은 다음 정보를 표시합니다.
afsmonitor 디스플레이 화면 선택진행
앞에서 설명한 바와 같이 모든 디스플레이 화면의 왼쪽 하단 코너에서는 대체 화면으로 이동하는 데 사용할 수 있는 명령 이름이 표시됩니다. 이것은 다른 유형이 될 수도, 현재 유형의 통계나 시스템을 표시할 수도 있습니다. 명령을 실행하려면, 그 이름에 있는 첫번째 문자의 소문자를 입력하십시오. 몇몇 명령에는 다음 목록에서 설명하는 것처럼 다소 효과가 다른 대문자 버전도 있습니다.
시스템 개요 화면은 afsmonitor 프로그램이 시작되면 자동으로 나타납니다. 이 화면에서는 현재 창에 표시될 수 있는 가능한 많은 파일 서버 및 캐쉬 관리 프로그램 프로세스의 상태를 표시하며, 화면을 아래로 이동시켜 추가 정보를 얻을 수 있습니다.
이 화면에 있는 정보는 왼쪽의 파일 서버 정보와, 오른쪽의 캐쉬 관리 프로그램 정보로 구분됩니다. 각 그룹의 헤더에서는 다음 두 정보를 보고합니다.
모니터되는 시스템 목록이 옵니다. 시스템에 경보가 없으면, 호스트 이름 왼쪽에 대괄호로 경보 수가 표시됩니다. 프로세스가 최종 조사에 대한 응답에 실패했으면, 호스트 이름의 왼쪽에 괄호로 문자 PF(조사 실패)가 나타납니다.
다음 그래픽은 시스템 개요 화면 예입니다. afsmonitor 프로그램은 6개의 파일 서버와 7개의 캐쉬 관리 프로그램을 모니터하고 있습니다. 호스트 fs1.abc.com에 있는 파일 서버 프로세스와 호스트 cli33.abc.com에 있는 캐쉬 관리 프로그램은 각각 [ 1]로 표시되어 한 개의 임계치가 초과되었음을 나타냅니다. 호스트 fs6.abc.com 상에 있는 [PF] 표시자는 이것의 파일 서버 프로세스가 최종 조사에 응답하지 않았음을 나타냅니다.
![]() |
파일 서버 화면에서는 파일 서버 화면 통계를 위한 가장 최근의 조사에서 수집된 값들을 표시합니다.
화면 맨 위에 있는 요약 행(표준 프로그램 버전 및 화면 제목 블록 바로 아래)에서는 모니터되는 파일 서버 수, 경보 수, 그리고 경보에 영향을 받는 시스템 수를 지정합니다.
첫번째 컬럼에서는 항상 모니터되는 파일 서버를 실행중인 시스템의 호스트명을 표시합니다.
호스트 이름 컬럼의 오른쪽에는 표시 화면 또는 창의 현재 폭내에서 표시할 수 있는 많은 통계의 칼럼이 표시되며, 각 컬럼에는 10자 공간이 필요합니다. 통계 이름은 각 컬럼 맨 위에 나타납니다. 시스템에 있는 파일 서버가 가장 최근의 조사에 응답하지 않았으면, 한 쌍의 대쉬(--)가 각 컬럼에 나타납니다. 값이 구성된 임계치를 초과하면, 역상으로 강조표시됩니다. 값이 할당된 컬럼 너비에 비해 너무 크면, 같은 컬럼의 다음 행으로 오버플로우됩니다.
사용가능한 파일 서버 통계 목록에 대해서는 부록 C, afsmonitor 프로그램 통계의 내용을 참조하십시오.
다음 그래픽에서는 이전에 설명했던 시스템 개요 예 다음에 오는 파일 서버 화면에 대해 설명합니다. 그러나, 하나의 추가 서버 조사가 완료되었습니다. 이 예에서, fs1에 있는 파일 서버 프로세스는 수신된 성능 호출의 갯수로 구성된 임계치를(numPerfCalls 통계)를 초과하며, 이 필드는 역상으로 나타납니다. 호스트 fs6은 조사 10에 응답하지 않았으므로, 모든 필드에 대쉬(-)가 나타납니다.
![]() |
파일 서버와 캐쉬 관리 프로그램 화면(다음 절에서 설명함) 모두에서는 수백개의 데이터 컬럼을 표시할 수 있으므로, 왼쪽 오른쪽 화면이동할 수 있도록 지정됩니다. 이전 그래픽에서, 화면은 가장 왼쪽에 있는 화면을 표시하며, 화면 제목 블록에서는 235개 중 컬럼 1이 표시됨을 보여줍니다. 화면의 상단 오른쪽 코너에 >>> 기호가, 명령 블록에 right 명령이 표시되면 이는 오른쪽으로 화면이동하여 추가 데이터를 사용할 수 있음을 나타냅니다(사용가능한 통계에 대해서는 부록 C, afsmonitor 프로그램 통계의 내용을 참조하십시오).
right 명령이 실행되면, 화면은 다음 예와 같이 표시됩니다. 수평 화면이동 기호는 왼쪽(<<<)과 오른쪽(>>>) 모두를 나타내며, left 및 right 명령 모두가 표시됨을 기억하십시오. 이것은 왼쪽과 오른쪽 모두로 화면이동하면 추가 데이터를 사용할 수 있음을 나타냅니다.
그림 8. 1페이지 오른쪽으로 이동한 afsmonitor 파일 서버 화면
![]() |
캐쉬 관리 프로그램 화면에서는 캐쉬 관리 프로그램 통계에 관한 가장 최근의 조사에서 수집된 값들을 표시합니다.
화면 맨 위에 있는 요약 행(표준 프로그램 버전 및 화면 제목 블록 바로 아래)에서는 모니터되는 캐쉬 관리 프로그램 수, 경보 수, 그리고 경보에 영향을 받는 시스템 수를 지정합니다.
첫번째 컬럼에서는 항상 모니터되는 캐쉬 관리 프로그램을 실행중인 시스템의 호스트명을 표시합니다.
호스트 이름 컬럼의 오른쪽에는 표시 화면 또는 창의 현재 폭내에서 표시할 수 있는 많은 통계의 칼럼이 표시되며, 각 컬럼에는 10자 공간이 필요합니다. 통계 이름은 각 컬럼 맨 위에 나타납니다. 시스템에 있는 캐쉬 관리 프로그램이 가장 최근의 조사에 응답하지 않았으면, 한 쌍의 대쉬(--)가 각 컬럼에 나타납니다. 값이 구성된 임계치를 초과하면, 역상으로 강조표시됩니다. 값이 할당된 컬럼 너비에 비해 너무 크면, 같은 컬럼의 다음 행으로 오버플로우됩니다.
사용가능한 캐쉬 관리 프로그램 통계 목록에 대해서는 부록 C, afsmonitor 프로그램 통계의 내용을 참조하십시오.
다음 그래픽에서는 이전에 설명했던 시스템 개요 화면 다음에 오는 캐쉬 관리 프로그램 화면에 대해 설명합니다. 이 예에서, cli33에 있는 캐쉬 관리 프로그램 프로세스는 접속할 수 있는 셀의 갯수에 대해 구성된 임계치(numCellsContacted 통계)를 초과하므로, 이 필드는 역상으로 나타납니다.
그림 9. afsmonitor 캐쉬 관리 프로그램 화면
![]() |
afsmonitor 프로그램을 사용자 정의하려면, ASCII 형식의 구성 파일을 작성하고 이에 대해 -config 인수를 사용하십시오. 구성 파일에서 다음을 지정할 수 있습니다.
다음 목록에서는 구성 파일에 표시될 수 있는 명령에 대해 설명합니다.
매개변수 fs, cm, field_name, threshold_val 및 arg1 - argn은 thresh 행에서 이름이 같은 값에 해당됩니다. host_name 매개변수는 통계치가 임계치를 넘는 파일 서버나 클라이언트 시스템을 식별하며, actual_val 매개변수는 임계값과 같거나 초과하는 field_name의 실제 값입니다.
thresh 행을 사용하여 전역 임계치를 설정하십시오. 이는 fs 행에 나열된 모든 파일 서버 시스템 및 구성 파일에서 cm 행에 나열된 클라이언트 시스템에 적용됩니다. 또는 시스템 고유의 임계치를 설정하십시오. 이것은 하나의 파일 서버 또는 클라이언트 구성 파일에만 적용됩니다.
구성 파일에 show 행이 없으면, 화면에서는 캐쉬 관리 프로그램과 파일 서버 모두에 대한 모든 통계치를 표시합니다. 이처럼 show fs 행이 없으면, 파일 서버 화면에서는 모든 파일 서버 통계치를 표시하며, show cm 행이 없는 경우 캐쉬 관리 프로그램 화면에서는 모든 클라이언트 통계치를 표시합니다.
show 명령의 field/group/section 필드에 표시될 수 있는 값 목록은 부록 C, afsmonitor 프로그램 통계의 내용을 참조하십시오.
다음 예에서는 가능한 구성 파일에 대해 설명합니다.
thresh cm dlocalAccesses 1000000 thresh cm dremoteAccesses 500000 handleDRemote thresh fs rx_maxRtt_Usec 1000 cm client5 cm client33 cm client14 thresh cm dlocalAccesses 2000000 thresh cm vcacheMisses 10000 cm client2 fs fs3 fs fs9 fs fs5 fs fs10 show cm numCellsContacted show cm dlocalAccesses show cm dremoteAccesses show cm vcacheMisses show cm Auth_Stats_group
처음 3개의 thresh 명령문이 fs 또는 cm 명령문 앞에 나타나므로, 이들은 전역 임계치를 설정합니다.
4개의 cm 명령어들은 시스템 client5, client33, client14 및 client2에서 캐쉬 관리 프로그램을 모니터합니다. 처음 3개는 전역 임계치 모두를 사용합니다.
client2에 있는 캐쉬 관리 프로그램은 dremoteAccesses 통계에 대한 전역 임계치를 사용하지만 dlocalAccesses 통계에 대해서는 다른 값을 사용합니다. 뿐만 아니라 client22는 vcacheMisses 통계에 대해 설정한 임계치를 사용하는 유일한 캐쉬 관리 프로그램입니다.
fs 명령은 시스템 fs3, fs9, fs5 및 fs10에서 파일 서버를 모니터합니다. 이들 모두는 rx_maxRtt_Usec 통계에 대한 전역 임계치를 사용합니다.
show fs 명령이 없으므로, 파일 서버 화면에서는 모든 파일 서버 통계를 표시합니다. 캐쉬 관리 프로그램 화면에서는 show cm 명령으로 지정한 통계만을 표시하며, 이들은 왼쪽으로 오른쪽으로 정렬됩니다. Auth_Stats_group에는 여러 개의 통계가 포함되며, 이들 모두가 표시됩니다(curr_PAGs, curr_Records, curr_AuthRecords, curr_UnauthRecords, curr_MaxRecordsInPAG, curr_LongestChain, PAGCreations, TicketUpdates, HWM_PAGS, HWM_Records, HWM_MaxRecordsInPAG 및 HWM_LongestChain).
afsmonitor 프로그램에 의해 수집되어 표시되는 모든 통계 정보들은 이를 출력 파일로 기록하여 보존될 수 있습니다. afsmonitor 프로세스를 시작할 때 -output 인수를 사용하여 출력 파일을 작성할 수 있습니다. 출력 파일을 사용하여 장기간 동안의 프로세스 성능을 추적할 수 있으며, 사전처리 기법을 적용하여 시스템 경향을 분석할 수 있습니다.
afsmonitor 프로그램 출력 파일은 파일 서버 및 캐쉬 관리 프로그램 화면에서 알려주는 정보를 기록하는 간단한 ASCII 파일입니다. 출력 파일의 형식은 다음과 같습니다.
time host_name CM|FS list_of_measured_values
출력 파일에서는 host_name에 있는 캐쉬 관리 프로그램(CM) 또는 파일 서버(FS)에서 list_of_measured_values 값이 수집되는 time을 지정합니다. 조사에 실패하는 경우, -1 값이 list_of_measured_values 대신 보고됩니다.
이 파일의 형식에는 여러가지 장점이 있습니다.
% afsmonitor [initcmd] [-config <configuration file>] \
[-frequency <poll frequency, in seconds>] \
[-output <storage file name>] [-detailed] \
[-debug <turn debugging output on to the named file>] \
[-fshosts <list of file servers to monitor>+] \
[-cmhosts <list of cache managers to monitor>+]
afsmonitor Collecting Statistics...
여기서
afsmonitor 프로그램 세션을 종료하려면, <Ctrl-c> 인터럽트 신호나 대문자 Q를 입력하십시오.
afsmonitor 프로그램은 xstat 데이터 모음 기능을 사용하여(afsmonitor 프로그램이) 그 기능을 수행하기 위해 사용하는 데이터를 모아 계산합니다. 또한 xstat 기능을 사용하여 자신만의 데이터 디스플레이 프로그램을 작성할 수도 있습니다. 그런 경우 다음을 기억하십시오. 파일 서버는 RPC 루틴을 호출하는 프로그램을 캐쉬 관리 프로그램으로 생각하므로, 파일 서버 인터페이스를 직접 호출하는 프로그램은 캐쉬 관리 프로그램의 콜백 인터페이스를 직접 반출해야 합니다. 호출하는 프로그램은 필요한 콜백 상태를 에뮬레이트할 수 있어야 하며, 파일 서버로부터의 정기적인 생존 메시지에 응답해야 합니다. 뿐만 아니라, 호출하는 프로그램은 수집된 데이터를 집적할 수도 있어야 합니다.
xstat 기능으로 사용자 레벨 응용 프로그램에서 사용할 수 있는 두 개의 C 언어 라이브러리로 구성됩니다.
라이브러리를 사용하면 호출자가 다음을 등록할 수 있습니다.
라이브러리는 모든 가벼운 프로세스, 콜백 동작 및 데이터 모음과 연관된 시간 사항 모두를 처리합니다. 사용자는 도착하는 대로 데이터를 처리해야 합니다.
libxstat_fs.a 및 libxstat_cm.a 라이브러리는 콜백 요구조건과, 파일 서버 및 캐쉬 관리 프로그램의 데이터 모음과 연관된 기타 복잡한 내용을 처리합니다. 사용자는 원하는 데이터를 누적시키는 방법만을 제공합니다. 각각의 xstat 라이브러리에서는 3개 루틴을 구현합니다.
파일 서버 및 캐쉬 관리 프로그램 각각은 클라이언트가 패치할 수 있는 데이터 모음을 정의합니다. 데이터 모음은 단순히 하나의 단위로서 수집될 수 있는 관련 번호 세트입니다. 예를 들어 파일 서버와 캐쉬 관리 프로그램은 프로파일링 및 성능 데이터 모음을 정의합니다. 프로파일링 모음에서는 서버내에서 내부 기능이 호출되는 횟수를 유지하여 병목 현상 분석을 수행할 수 있도록 합니다. 성능 모음에서는 파일 서버에 대한 내부 디스크 입/출력 통계와 캐쉬 관리 프로그램에 대한 캐쉬 효율성 그림을 기록하여 성능을 분석할 수 있도록 합니다.
xstat 기능, 그 라이브러리 및 라이브러리에 있는 루틴에 대한 추가 이용 정보를 제공하는 자세한 스펙 사본은 AFS 제품 지원 부서에 문의하십시오.
AFS는 두 개의 하위 예 명령인 xstat_fs_test 및 xstat_cm_test를 제공합니다. 이 명령을 사용하면 xstat 기능을 시험할 수 있습니다. 이것은 파일 서버 또는 캐쉬 관리 프로그램에 사용가능한 정보를 수집하고 데이터 모음을 표시합니다. 이들은 단순히 xstat를 통해 수집될 수 있는 데이터 유형의 예를 제공하기 위한 것입니다. 실제 데이터 모음에서 사용하기 위한 것은 아닙니다.
% xstat_fs_test [initcmd] \
-fsname <File Server name(s) to monitor>+ \
-collID <Collection(s) to fetch>+ [-onceonly] \
[-frequency <poll frequency, in seconds>] \
[-period <data collection time, in minutes>] [-debug]
여기서
다음의 두 가지 사용가능한 값입니다.
% xstat_cm_test [initcmd] \
-cmname <Cache Manager name(s) to monitor>+ \
-collID <Collection(s) to fetch>+ \
[-onceonly] [-frequency <poll frequency, in seconds>] \
[-period <data collection time, in minutes>] [-debug]
여기서
다음의 두 가지 사용가능한 값입니다.
감사 정보를 AFS에서 AIX 감사 시스템으로 전송하는 AFS 메카니즘을 사용하여 AIX 파일 서버에서 AFS 이벤트를 감사할 수 있습니다. 다음의 AFS 이벤트 일반 클래스를 감사할 수 있습니다. 특정 AFS 감사 이벤트에 관한 완전한 목록은 부록 D, AIX 감사 이벤트의 내용을 참조하십시오.
| 주: | 이 절에서는 AIX 감사 시스템에 익숙한 것으로 가정합니다. 자세한 내용은 사용하는 AIX 버전의 AIX 시스템 관리 안내서를 참조하십시오. |
/usr/afs/local/audit 디렉토리에는 AFS 이벤트를 감사하도록 AIX 파일 서버를 구성하는 데 필요한 정보가 들어있는 3개의 파일이 포함됩니다.
일단 AFS 관련 정보를 포함하도록 이들 파일을 구성했으면, AIX 감사 시스템을 사용하여 감사를 구동 및 종료하십시오.
AFS_AUDIT_AllEvents