Process Detail(PD)
- 〈このページの構成〉
機能
Process Detail(PD)レコードには,プロセスについての,ある時点での状態を示すパフォーマンスデータが格納されます。システム内にあるプロセスIDにつき1件のレコードが作成されます。
このレコードに格納されるパフォーマンスデータは,Process Detail Interval(PD_PDI)レコードと同じです。しかし,ある時点に収集したパフォーマンスデータと1回前に収集したパフォーマンスデータが同じプロセスのものだった場合,同じレコードにパフォーマンスデータが格納され,値が上書きされるため,その点がProcess Detail Interval(PD_PDI)レコードと異なります。ただし,パフォーマンスデータを収集したある時点から,次に収集する間にプロセスが終了した場合,そのプロセスのパフォーマンスデータは,収集されません。また,実行中でないプロセスのパフォーマンスデータは,収集されません。
このレコードをリアルタイムで収集する場合,システムで実行中のすべてのプロセスについてのパフォーマンスデータが格納されます。このレコードは,複数インスタンスレコードです。
- 注意
-
-
プロセスに端末名がない場合,Terminal(TERMINAL_NAME)フィールドには,「??」が表示されます。
-
AIX,Solarisでは,<defunct>プロセスについて次に示すフィールドのデータだけが取得されます。これら以外のフィールドには,「0」または「n/a」が表示されます。
Accounting Flags,Argument List,Child Process List,End Time,Exit Status,Flags,Group,Group ID,Parent PID,Parent Process List,PID,Process Group ID,Program,Program/PID,Real Group,Real Group ID,Real User,Real User ID,Record Time,Record Type,Scheduler Class,Snapshot Time,Start Time,State,Terminal,User,User ID,Virtual Env ID(SolarisまたはAIX)
-
Priority(PRIORITY)フィールドでは,数字の大きさによってプロセスの優先順位が決まります。Solarisでは数字が大きい方が,高い優先順位を示します。AIX,Linuxでは数字が小さい方が,高い優先順位を示します。HP-UXでは,プロセスごとの設定によって,より高い優先順位を示す数字が異なります。次のコマンドを使用して,プロセスごとの設定を確認してください。
export UNIX95=1
ps -eo pid,cls,pri
clsが次の場合,数字が小さい方がより高い優先順位を示します。
FIFO
RR
RR2
clsが次の場合,数字が大きい方がより高い優先順位を示します。
HPUX
RT
-
Flags(FLAGS)フィールドに設定されるプロセスのフラグリストで,判定できるフラグは次のとおりです。
・AIXの場合
SLOAD,SNOSWAP,SFORKSTACK,STRC,SFIXPRI,SKPROC,SSIGNOCHLD,SSIGSET,SLKDONE,STRACING,SMPTRACE,SEXIT,SORPHANPGRP,SNOCNTLPROC,SPPNOCLDSTOP,SEXECED,SJOBSESS,SJOBOFF,SEXECING,SPSEARLYALLOC
・HP-UXの場合
SLOAD,SSYS,SLOCK,STRC,SWTED_PARENT,SDEACTSELF,SOMASK,SWEXIT,SVFORK,SSEQL,SUANOM,SOUSIG,SOWEUPC,SSEL,SWANTS_ALLCPU,SSERIAL,SFAULTING,SDEACT,SWAITIO,STRAPPING,SWTED_DEBUGGER
・Solarisの場合
SSYS,SITBUSY,SWATCHOK,SKILLED,SSCONT,SZONETOP,SEXTKILLED,SUGID,SEXECED,SJCTL,SNOWAIT,SVFORK,SEXITLWPS,SCOREDUMP,SMSACCT,SLWPWRAP
-
終了したプロセスのパフォーマンスデータは収集できません。
-
インスタンスの対象プロセスがゾンビプロセスの場合,AIXまたはHP-UXでは,Group,Group ID,Real Group,Real Group ID,User,User IDの各フィールドは,次のように表示されます。
OS
フィールド
表示内容
AIX
Group
IDが0のグループ名
Real Group
Group ID
0
Real Group ID
HP-UX
Group
N/A gid = -3
Real Group
User
N/A uid = -3
Group ID
-3
Real Group ID
User ID
-
デフォルト値および変更できる値
項目 |
デフォルト値 |
変更可否 |
---|---|---|
Collection Interval |
60 |
○ |
Collection Offset※ |
0 |
○ |
Log |
No |
○ |
LOGIF |
空白 |
○ |
Over 10 Sec Collection Time |
No |
× |
Realtime Report Data Collection Mode |
Reschedule |
○ |
- 注※
-
指定できる値は,0〜32,767秒(Collection Intervalで指定した値の範囲内)です。これは,複数のデータを収集する場合に,一度にデータの収集処理が実行されると負荷が集中するので,収集処理の負荷を分散するために使用します。なお,データ収集の記録時間は,Collection Offsetの値に関係なく,Collection Intervalと同様の時間となります。
Collection Offsetの値を変更する場合は,収集処理の負荷を考慮した上で値を指定してください。
ODBCキーフィールド
-
PD_START_TIME
-
PD_PID
ライフタイム
プロセスの実行から終了まで。
レコードサイズ
-
固定部:681バイト
-
可変部:2,747バイト
フィールド
PFM-View名 (PFM-Manager名) |
説明 |
要約 |
形式 |
デルタ |
サポート対象外 |
データソース |
---|---|---|---|---|---|---|
Accounting Flags(ACCOUNTING_FLAGS) |
プロセスの動作履歴情報。プロセスが終了している(End Timeが「n/a」でない)場合だけ有効。 |
− |
string(256) |
No |
HP-UX, Solaris, AIX, Linux |
− |
Argument List(ARGUMENT_LIST) |
プロセスの引数リスト。ps -efコマンドのCOMMAND(CMD)列に表示される文字列に相当する。 AIXでは,最大119バイトに制限される。Linuxでは,最大119バイトに制限される。HP-UXでは,最大63バイトに制限される。Solarisでは,最大79バイトに制限される。 |
− |
string(120) |
No |
− |
− |
Avg I/O Kbytes(AVG_IO_KBYTES) |
I/O処理の平均転送サイズ(キロバイト単位)。 |
− |
float |
No |
HP-UX, AIX, Linux |
TOTAL_IO_KBYTES / TOTAL_IO_OPS |
CPU %(CPU_PERCENT_USED) |
プロセスのCPU使用率をプロセッサ数で割った平均値(%)。 |
− |
float |
No |
− |
(((USER_CPU_TIME + SYSTEM_CPU_TIME) / ELAPSED_TIME) / processors-count) * 100 |
CPU % Each(CPU_PERCENT_EACH) |
プロセスのCPU使用率(%)。 |
− |
float |
No |
− |
((USER_CPU_TIME + SYSTEM_CPU_TIME) / ELAPSED_TIME)* 100 |
CPU Limit(CPU_LIMIT) |
プロセスのCPUリミット。この値は,setrlimitシステムコールのRLIMIT_CPUパラメーターで定義される。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Child Process List(CHILD_PROCESS_LIST) |
作成した子プロセスリスト。それぞれの子プロセスの間は,ブランクで区切られる。128バイト以上の場合,最後の文字は「>」。 |
− |
string(128) |
No |
− |
プロセスリストで子チェーンを検索する。 |
Context Switches(CONTEXT_SWITCHES) |
コンテキストスイッチが実行された回数。 |
− |
ulong |
Yes |
HP-UX, Linux |
− |
Core Size Limit(CORE_SIZE_LIMIT) |
プロセスが作成できるコア・ファイルの最大サイズ(バイト単位)。この値は,setrlimitシステムコールのRLIMIT_COREパラメーターで定義される。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Data Size Limit(DATA_SIZE_LIMIT) |
プロセスのデータサイズリミット(バイト単位)。この値は,setrlimitシステムコールのRLIMIT_DATAパラメーターで定義される。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Elapsed Time(ELAPSED_TIME) |
プロセスが開始した時点からProcess Detail(PD)レコードが格納された時点,またはプロセスが終了した時点までの経過時間(秒単位)。 |
− |
utime |
No |
− |
・プロセスが実行中の場合RECORD_TIME - START_TIME ・その他の場合− |
End Time(END_TIME) |
プロセスの終了時刻。プロセスが実行中であれば「n/a」。 |
− |
time_t |
No |
HP-UX, Solaris, AIX, Linux |
START_TIME + ELAPSED_TIME |
Executable Data Kbytes(EXECUTABLE_DATA_KBYTES) |
使用しているデータサイズ(キロバイト単位)。 このフィールドをSolarisで収集するためには,事前に環境変数SAUNIXPMAPを設定する必要があります。コマンドラインから次のコマンドを実行してください。 # SAUNIXPMAP=1 # export SAUNIXPMAP |
− |
ulong |
No |
Linux |
− |
Executable Text Kbytes(EXECUTABLE_TEXT_KBYTES) |
使用しているテキストサイズ(キロバイト単位)。 このフィールドをSolarisで収集するためには,事前に環境変数SAUNIXPMAPを設定する必要があります。コマンドラインから次のコマンドを実行してください。 # SAUNIXPMAP=1 # export SAUNIXPMAP |
− |
ulong |
No |
Linux |
− |
Exit Status(EXIT_STATUS) |
プロセスの終了状態。プロセスが終了している(End Timeが「n/a」でない)場合だけ有効。 |
− |
string(20) |
No |
HP-UX, Solaris, AIX, Linux |
− |
File Size Limit(FILE_SIZE_LIMIT) |
プロセスのファイルサイズリミット(バイト単位)。この値は,setrlimitシステムコールのRLIMIT_FSIZEパラメーターで定義される。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Flags(FLAGS) |
プロセスのフラグリスト。120バイト以上の場合,最後の文字は「>」。 |
− |
string(120) |
No |
Linux |
− |
Group(GROUP_NAME) |
プロセスの実効グループ名。 |
− |
string(256) |
No |
− |
− |
Group ID(GROUP_ID) |
プロセスの実効グループID。 |
− |
long |
No |
− |
− |
Hard CPU Limit(HARD_CPU_LIMIT) |
プロセスのハードCPUリミット(Hcpulimit)。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Hard Core Size Limit(HARD_CORE_SIZE_LIMIT) |
プロセスのハードコアサイズリミット(バイト単位)(Hcorelimit)。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Hard Data Size Limit(HARD_DATA_SIZE_LIMIT) |
プロセスのハードデータサイズリミット(バイト単位)(Hdatalimit)。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Hard File Size Limit(HARD_FILE_SIZE_LIMIT) |
プロセスのハードファイルサイズリミット(バイト単位)(Hfilesizelimit)。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Hard Open Files Limit(HARD_OPEN_FILES_LIMIT) |
プロセスのハードオープンファイルリミット(Hopenfileslimit)。 |
− |
double |
No |
HP-UX, Solaris, AIX, Linux |
− |
Hard Stack Size Limit(HARD_STACK_SIZE_LIMIT) |
プロセスのハードスタックサイズリミット(バイト単位)(Hstacklimit)。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Hard Virtual Mem Size Limit(HARD_VIRTUAL_MEMORY_SIZE_LIMIT) |
プロセスのハード仮想メモリーサイズリミット(バイト単位)(Hrsslimit)。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Heap Kbytes(HEAP_KBYTES) |
使用しているヒープサイズ(キロバイト単位)。 |
− |
ulong |
No |
HP-UX, AIX, Linux |
− |
Interval(INTERVAL) |
Process Detail(PD)レコードが格納されたインターバル時間(秒単位)。 |
− |
ulong |
Yes |
HP-UX, Solaris, AIX, Linux |
− |
Major Faults(MAJOR_FAULTS) |
物理的なI/Oを引き起こすページフォルトの回数。 |
− |
ulong |
Yes |
− |
− |
Mem Charge(MEMORY_CHARGE) |
プロセスのサービスユニットチャージ。プロセスが終了している(End Timeが「n/a」でない)場合だけ有効。 |
− |
ulong |
No |
HP-UX, Solaris, AIX, Linux |
− |
Minor Faults(MINOR_FAULTS) |
物理的なI/Oを引き起こさないページフォルトの回数。 |
− |
ulong |
Yes |
− |
− |
Niceness(NICENESS) |
プロセスのナイス値。プロセスに割り当てられたスケジューラークラスが値に影響する。例えば,タスクがスケジューラークラスRTに割り当てられている場合,ナイス値は「0」。 |
− |
long |
No |
− |
− |
Open Files Limit(OPEN_FILES_LIMIT) |
プロセスのオープンファイルリミット。この値は,setrlimitシステムコールのRLIMIT_NOFILEパラメーターで定義される。 |
− |
double |
No |
HP-UX, Solaris, AIX, Linux |
− |
PID(PID) |
プロセスID。 |
− |
long |
No |
− |
− |
Parent PID(PARENT_PID) |
親プロセスのプロセスID。 |
− |
long |
No |
− |
− |
Parent Process List(PARENT_PROCESS_LIST) |
プロセスの親プロセスリスト。例えば「3867<1<0」は, プロセス0が,プロセス1を作成し,プロセス1がプロセス3867を作成したことが示される。128バイト以上の場合,最後の文字は「>」。 |
− |
string(128) |
No |
− |
プロセスリストで親チェーンを検索する。 |
Priority(PRIORITY) |
プロセスの優先順位。 |
− |
long |
No |
− |
− |
Process Group ID(PROCESS_GROUP_ID) |
プロセスグループID。 |
− |
long |
No |
− |
− |
Program(PROGRAM_NAME) |
プログラム名。ps -eコマンドのCOMMAND(CMD)列に表示される文字列に相当する。AIXでは,最大32バイトに制限される。Linuxでは,最大15バイトに制限される。HP-UXでは,最大14バイトに制限される。Solarisでは,最大15バイトに制限される。 |
− |
string(256) |
No |
− |
− |
Program/PID(PROGRAM_PID) |
実行しているプログラム名とプロセスID。 |
− |
string(280) |
No |
− |
− |
Reads(READ_OPS) |
AIXでは,RAW読み取り処理が発生した回数。Solarisでは,Block読み取り処理が発生した回数。 |
− |
ulong |
Yes |
HP-UX, Linux |
− |
Reads/sec(READ_OPS_PER_SECOND) |
読み取り処理が発生した頻度(1秒当たりの回数)。 |
− |
float |
Yes |
HP-UX, Linux |
READ_OPS / ELAPSED_TIME |
Real Group(REAL_GROUP_NAME) |
プロセスの実グループ名。 |
− |
string(256) |
No |
− |
− |
Real Group ID(REAL_GROUP_ID) |
プロセスの実グループID。 |
− |
long |
No |
− |
− |
Real Mem Kbytes(REAL_MEMORY_KBYTES) |
使用している物理メモリーサイズ(キロバイト単位)。 |
− |
ulong |
No |
− |
− |
Real User(REAL_USER_NAME) |
プロセスの実ユーザー名。 |
− |
string(256) |
No |
− |
− |
Real User ID(REAL_USER_ID) |
プロセスの実ユーザーID。 |
− |
long |
No |
− |
− |
Record Time(RECORD_TIME) |
レコードが作成された時刻(グリニッジ標準時)。 |
− |
time_t |
No |
− |
− |
Record Type(INPUT_RECORD_TYPE) |
レコード種別。常に「PD」。 |
− |
char(8) |
No |
− |
− |
Scheduler Class(SCHEDULER_CLASS) |
スケジューリングクラス名。次の値が設定される。 TS,IA,FX,FSS,RT,SYS |
− |
string(12) |
No |
HP-UX, AIX, Linux |
− |
Shared Lib Kbytes(SHARED_LIBRARY_KBYTES) |
使用している共用ライブラリーサイズ(キロバイト単位)。 |
− |
ulong |
No |
HP-UX, Solaris, AIX, Linux |
− |
Shared Mem Kbytes(SHARED_MEMORY_KBYTES) |
使用している共用メモリーサイズ(キロバイト単位)。 |
− |
ulong |
No |
Solaris, AIX |
− |
Signals Rcvd(NUMBER_OF_SIGNALS_RECEIVED) |
受信したシグナル数。 |
− |
ulong |
Yes |
Linux |
− |
Snapshot Time(LAST_SNAPSHOT_TIME) |
最後にプロセステーブルの情報を取得した時刻。プロセステーブルに情報がない場合は,レコード時刻。 |
− |
time_t |
No |
− |
− |
Stack Kbytes(STACK_KBYTES) |
プロセスが使用しているスタックサイズ(キロバイト単位)。 |
− |
ulong |
No |
AIX |
− |
Stack Size Limit(STACK_SIZE_LIMIT) |
プロセスのスタックサイズリミット(バイト単位)。この値は,setrlimitシステムコールのRLIMIT_STACKパラメーターで定義される。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Start Time(START_TIME) |
プロセスの開始時刻。 |
− |
time_t |
No |
− |
− |
State(STATE) |
プロセスの状態。次の値が設定される。 ・AIXの場合 IDLE,ZOMBIE,STOP,RUN,SWAP,NONE ・HP-UXの場合 IDLE,OTHER,RUN,SLEEP,STOP,ZOMBIE,NONE ・Solarisの場合 IDLE,ONCPU,RUN,SLEEP,STOP,ZOMBIE,NONE ・Linuxの場合 IDLE,RUN,SLEEP,SWAP,STOP,ZOMBIE,NONE |
− |
string(10) |
No |
− |
− |
Swaps(SWAPS) |
スワップが発生した回数。 |
− |
ulong |
Yes |
Linux |
− |
System CPU(SYSTEM_CPU_TIME) |
カーネルモードで動作した時間(秒単位)。 |
− |
utime |
Yes |
− |
− |
Terminal(TERMINAL_NAME) |
実行された端末名。端末名を持たないプロセスの場合,「??」と表示される。 |
− |
string(40) |
No |
− |
− |
Throughput/sec(IO_KBYTES_PER_SECOND) |
I/O処理の速度(1秒当たりのキロバイト数)。 |
− |
float |
Yes |
AIX, Linux |
TOTAL_IO_KBYTES / ELAPSED_TIME |
Total I/O Kbytes(TOTAL_IO_KBYTES) |
I/O処理の合計転送サイズ(キロバイト単位)。 |
− |
float |
Yes |
AIX, Linux |
− |
Total I/O Ops(TOTAL_IO_OPS) |
I/O処理が発生した回数。 |
− |
ulong |
Yes |
HP-UX, AIX, Linux |
READ_OPS + WRITE_OPS |
Total I/O Ops/sec(TOTAL_IO_OPS_PER_SECOND) |
I/O処理が発生した頻度(1秒当たりの回数)。 |
− |
float |
Yes |
HP-UX, AIX, Linux |
TOTAL_IO_OPS / ELAPSED_TIME |
Total Process Kbytes(TOTAL_PROCESS_KBYTES) |
プロセスのサイズ(キロバイト単位)。このフィールドの値は,AIXでは,ps -lコマンドで得たSZ列に表示される値と同じ。HP-UX,Solarisでは,ps -lコマンドで得たSZ列に表示される値にページサイズを乗じた値と同じ。Linuxでは,"/proc/<PID>/statmの1列目*ページサイズ/1024"で得た値と同じ。 |
− |
ulong |
No |
− |
− |
User(USER_NAME) |
プロセスの実効ユーザー名。 |
− |
string(256) |
No |
− |
− |
User CPU(USER_CPU_TIME) |
ユーザーモードで動作した時間(秒単位)。 |
− |
utime |
Yes |
− |
− |
User ID(USER_ID) |
プロセスの実効ユーザーID。 |
− |
long |
No |
− |
− |
Virtual Env ID(VIRTUAL_ENV_ID) |
OSが提供する仮想化システムによって作成される仮想化環境のID。 |
− |
string(65) |
No |
HP-UX |
− |
Virtual Mem Kbytes(VIRTUAL_MEMORY_KBYTES) |
使用している仮想メモリーサイズ(キロバイト単位)。 |
− |
ulong |
No |
Solaris |
− |
Virtual Mem Size Limit(VIRTUAL_MEMORY_SIZE_LIMIT) |
プロセスの仮想メモリーサイズリミット(バイト単位)(rsslimit)。この値は,setrlimitシステムコールのRLIMIT_VMEMパラメーターで定義される。 |
− |
double |
No |
HP-UX, Solaris, Linux |
− |
Writes(WRITE_OPS) |
AIXでは,RAW書き込み処理が発生した回数。Solarisでは,Block書き込み処理が発生した回数。 |
− |
ulong |
Yes |
HP-UX, Linux |
− |
Writes/sec(WRITE_OPS_PER_SECOND) |
書き込み処理が発生した頻度(1秒当たりの回数)。 |
− |
float |
Yes |
HP-UX, Linux |
WRITE_OPS / ELAPSED_TIME |