Pid 당 하드 드라이브 I / O


9

pid / process 당 디스크 I / O를 볼 수있는 방법이 있습니까? Monitorix는 다음을 보여주고 내가 틀렸다면 수정하지만 하드 드라이브가 전체 시스템 속도를 늦추는 것처럼 보입니다. 여기에 이미지 설명을 입력하십시오

업데이트 # 1

꼭대기는 모든 것 위에 훌륭한 개요를 제공하는 것 같습니다.

  • 내가 빨간색으로 표시 한 대기가 무엇을 의미하는지 물어볼 수 있습니까?
  • 디스크 I / O의 대기 시간입니까?

여기에 이미지 설명을 입력하십시오


2
당신은 꼭대기에, iotop 또는 pidstat입니다
sebelk

1
@sebelk 이봐, 나는 질문을 업데이트했다, 당신이 볼 수 있다면 좋을 것입니다. :)
user2693017

1
최고의 답변을 선택하는 것이 실제로 불가능했기 때문에 가장 도움이되는 답변을 선택하고 다른 답변을 찬성했습니다.
user2693017

@ user2693017-OP는 귀하의 요구 사항에 가장 적합한 특권입니다.
slm

답변:


3

이 그림을 잘 보는 것은 어렵지만

맨 꼭대기에서 사람을 살펴보십시오.

CPU 섹션에서 마지막으로 다른 것을 요구하는지 궁금합니다.

Every  line contains the percentage of cpu time spent in kernel mode by all
active processes (`sys'), the percentage of cpu time consumed in user mode
(`user') for all active processes (including processes running with a nice
value larger than zero), the  percentage  of  cpu  time spent  for  interrupt
handling  (`irq')  including  softirq, the percentage of unused cpu time while
no processes were waiting for disk-I/O (`idle'), and the percentage of unused
cpu time while at least one process was waiting for disk-I/O (`wait').

In case of per-cpu occupation, the last column shows the cpu number and the
wait percentage (`w') for that cpu.  The number of lines showing the per-cpu
occupation can be limited.

어쨌든 디스크 별 통계를 읽을 수 있습니다.

d    Show disk-related output.

            When "storage accounting" is active in  the  kernel,  the  
            following  fields  are shown: process-id, amount of data read 
            from disk, amount of data written to disk, amount of data that 
            was written but has been withdrawn again (WCANCL), disk 
            occupation percentage and process name.

이러한 옵션뿐만 아니라

    D   Sort  the  current  list  in the order of disk accesses issued.  
        The one-but-last column changes to ``DSK''.
        ...

RDDSK

RDDSK   When the kernel maintains standard io statistics (>= 2.6.20):

        The  read  data  transfer issued physically on disk (so reading from 
        the disk cache is not accounted for).
        ...

WRDSK

WRDSK   When the kernel maintains standard io statistics (>= 2.6.20):

        The  write  data  transfer  issued physically on disk (so writing to 
        the disk cache is not accounted for).  This counter is maintained 
        for the  application process  that writes its data to the cache 
        (assuming that this data is physically transferred to disk later 
        on). Notice that disk I/O needed for swapping is not taken into 
        account.
        ....

LVM / MDD / DSK

LVM/MDD/DSK
        Logical volume/multiple device/disk utilization. 

        Per active unit one line is produced, sorted on unit activity.
        Such  line shows the name (e.g. VolGroup00-lvtmp for a logical
        volume or sda for a hard disk), the busy percentage i.e. the
        portion of time that the unit was busy handling requests
        (`busy'),  the  number  of  read  requests  issued  (`read'), the
        number of write requests issued (`write'), the number of KiBytes
        per read (`KiB/r'),  the  number of  KiBytes  per write
        (`KiB/w'), the number of MiBytes per second throughput for reads
        (`MBr/s'),  the  number  of  MiBytes  per second  throughput  for
        writes (`MBw/s'), the average queue depth (`avq') and the average
        number of milliseconds needed by a request (`avio') for seek,
        latency and data transfer.

        If the screen-width does not allow all of these counters, only a
        relevant subset is shown.

        The  number of lines showing the units can be limited per class
        (LVM, MDD or DSK) with the 'l' key or statically (see separate
        man-page of atoprc).  By specifying the  value  0  for  a
        particular class, no lines will be shown any more for that class.

매우 감사합니다. 크기 때문에 어려운 경우 직접 링크를 사용하십시오. i.stack.imgur.com/5ifJi.png
user2693017

8

도구가 많이 있다고 생각합니다. 그들 중 하나는 pidstat:

pidstat -d 5

5 초마다 프로세스의 I / O를 표시합니다.

$ pidstat -d 5
Linux 3.12.11-201.fc19.x86_64 (greeneggs.bubba.net)     03/04/2014  _x86_64_    (4 CPU)

06:19:05 PM   UID       PID   kB_rd/s   kB_wr/s kB_ccwr/s  Command
06:19:10 PM  1000     29486      0.00    317.93      0.00  chrome

06:19:10 PM   UID       PID   kB_rd/s   kB_wr/s kB_ccwr/s  Command
06:19:15 PM  1000     29486      0.00    368.00      0.00  chrome

06:19:15 PM   UID       PID   kB_rd/s   kB_wr/s kB_ccwr/s  Command
06:19:20 PM  1000     29486      0.00    591.62    836.73  chrome

06:19:20 PM   UID       PID   kB_rd/s   kB_wr/s kB_ccwr/s  Command
06:19:25 PM  1000      2410      0.00      0.80      0.00  mono
06:19:25 PM  1000     29486      0.00    262.40      0.00  chrome
^C

Average:      UID       PID   kB_rd/s   kB_wr/s kB_ccwr/s  Command
Average:     1000      2410      0.00      0.20      0.00  mono
Average:     1000     29486      0.00    385.02    209.29  chrome

Ctrl+ C(일명. ^C)가 표시되는 시점부터는 위의 실행 기간 동안의 총계입니다.


좋은, 그것은 1 시간 동안 실행하고 전체 결과를 얻을 수 있습니까?
user2693017

아마, 나는 그것을 아직 시도하지 않았다. 검사하려는 PID를 정의 할 수도 있습니다.

3

이 U & L Q & A ( Amazon EC2 마이크로 인스턴스 다수의 IO 요청 )를 살펴보십시오 fatrace. 또한 I / O에 책임이있는 특정 파일 결정 이라는 제목의이 Q & A에서 다룹니다 .

Fatrace

이것은 Linux Kernel에 새로 추가되고 환영받는 것이므로 Ubuntu 12.10과 같은 최신 배포판에만 있습니다. Fedora 14 시스템에는 8-)가 부족했습니다.

특정 디렉토리 및 / 또는 파일을 대상으로하지 않고도 inotify를 통해 얻을 수있는 것과 동일한 액세스를 제공합니다.

$ sudo fatrace
pickup(4910): O /var/spool/postfix/maildrop
pickup(4910): C /var/spool/postfix/maildrop
sshd(4927): CO /etc/group
sshd(4927): CO /etc/passwd
sshd(4927): RCO /var/log/lastlog
sshd(4927): CWO /var/log/wtmp
sshd(4927): CWO /var/log/lastlog
sshd(6808): RO /bin/dash
sshd(6808): RO /lib/x86_64-linux-gnu/ld-2.15.so
sh(6808): R /lib/x86_64-linux-gnu/ld-2.15.so
sh(6808): O /etc/ld.so.cache
sh(6808): O /lib/x86_64-linux-gnu/libc-2.15.so

위는 파일 액세스를 수행하는 프로세스 ID와 액세스하는 파일을 보여 주지만 전체 대역폭 사용량을 제공하지 않으므로 각 액세스는 다른 액세스와 구분할 수 없습니다.

참고 : 대신 원하는 경우 단일 PID를 보도록 지시 할 수 fatrace있는 -p PID인수를 사용할 수 있습니다.


정말 좋은 도구입니다.
sebelk

당신은 ftop 인 관련되고 멋진 도구를 가지고 있습니다
sebelk

@sebelk-yup 고맙습니다. 이미 설치되어 있습니다.
slm

나는이 도구를 좋아한다. 어떤 작업이 디스크의 어떤 파일에 액세스하는지 보여줍니다. 그러나 이러한 파일은 mmap 될 수 있으므로 버퍼 액세스 만 발생하고 IO 액세스는 없습니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.