Spying on Apache and PHP with Strace

แชร์
ฝัง

ความคิดเห็น • 38

  • @thegripmaster666
    @thegripmaster666 10 ปีที่แล้ว +8

    Top quality demonstration. Thank You!

  • @warronfrench8163
    @warronfrench8163 7 ปีที่แล้ว +1

    Hi +elspuddo thanks for this demo. It did educate me a little bit on the mental process of reading an strace capture file. It's something I have been trying to learn for years. This was useful. I need to see more of these though. Thanks!

  • @mauroandreolini5278
    @mauroandreolini5278 4 หลายเดือนก่อน

    Awesome demo, thanks! What's the font? Where can I download the background image from?

  • @MathewSnyder
    @MathewSnyder 13 ปีที่แล้ว

    I'll have to apply this to Apache and Perl now. Good job on the video and thanks.

  • @statikeffeck
    @statikeffeck 13 ปีที่แล้ว

    very thorough and "extreme" web debugging. Might come in handy one day.

  • @BenjaminChodroff
    @BenjaminChodroff 13 ปีที่แล้ว

    Very informative - never used strace before so I learned a lot!

  • @dsterry
    @dsterry 13 ปีที่แล้ว

    Yes, so glad you're making more...

  • @danielharris7345
    @danielharris7345 9 ปีที่แล้ว +1

    Very helpful, although I ended up greping for my IP address rather than the PID but left me with a problem ... strace'ing the php script I'm troubleshooting shows the script outputs to the console in around 0.02 seconds ... but all the test I run over the internet show a TTFB of around 0.8 to 0.9 seconds - I've ruled out the network (pings are sub 20ms) and the server load average is very low - any ideas of how to troubleshoot this further?

  • @OscarCalcaterra
    @OscarCalcaterra 11 ปีที่แล้ว

    I really enjoy viewing this video!

  • @AppA
    @AppA 12 ปีที่แล้ว

    Damn this is interesting, I'm going to watch this later when I understand these topics better (especially Unix networking stuff).

  • @iamfaze
    @iamfaze 13 ปีที่แล้ว

    Did you bump up the Apache timeouts? IIRC you dont typically get that long to look for it.

  • @blu3h4t
    @blu3h4t 9 ปีที่แล้ว

    Cool, at 11:00 you just confirmed why my FOG servers interface without internet is slow-ish: DNS.

  • @bflance
    @bflance 13 ปีที่แล้ว

    Simply awesome video!
    I wonder if its possible to use STRACE to see if a process is trying to delete files/folders...

  • @illuminatiZ
    @illuminatiZ 9 ปีที่แล้ว

    If i understand well at 3:42, if we didn't have dual stack and IPv6 support we would be unable to find the corresponding httpd PID? strange! It is only possible to do that by pushing the Timeout of Apache. in httpd.conf you can put Timeout 8000 & RequestReadTimeout Header=8000 Body=8000

  • @pu3he
    @pu3he 13 ปีที่แล้ว

    Great and informative video, many thanks for your effort!

  • @jamiroph
    @jamiroph 10 ปีที่แล้ว +1

    What are you using as your terminal? I'd love to know what you did to rename your open windows and scroll through them in a list.

    • @ShyamRonline
      @ShyamRonline 10 ปีที่แล้ว

      man screen :)

    • @elspuddo
      @elspuddo  7 ปีที่แล้ว

      That's not the terminal doing that, it's GNU Screen.

  • @cmorrow132
    @cmorrow132 7 ปีที่แล้ว

    Does this not work with php-fpm and per site pools? I get the http worker pid but it doesn't match up to any actual pids on the system

  • @tomhardy5188
    @tomhardy5188 8 ปีที่แล้ว +1

    sort -k2 -rn /tmp/output | head :) saved TWO kittehs!

  • @sunical
    @sunical 6 ปีที่แล้ว

    This is amazing! Thanks for sharing it!

  • @pierre-olivierbenoit400
    @pierre-olivierbenoit400 10 ปีที่แล้ว

    This was very useful, thank you.

  • @rhohan
    @rhohan 13 ปีที่แล้ว

    video is very informative. please turn your volume up though :)

  • @CleberSLeite
    @CleberSLeite 8 ปีที่แล้ว

    Amazing explanation! My respect o/

  • @KenGuest_IE
    @KenGuest_IE 2 ปีที่แล้ว

    you can specify the file to cut instead of using cat and redirecting the output (and by using tail instead of head I don't have to type that one extra 'r':
    cut -c12-16 /tmp/output | sort -n | tail
    very cool demo though - I'd no idea about the -s argument that strace has - thank you!

    • @elspuddo
      @elspuddo  2 ปีที่แล้ว +2

      Glad you liked it! It's amazing that folks are still getting something out of a 10 year old video. I continue to employ the "useless use of a cat" paradigm simply because I like pipes, and I find the explicit cat satisfying.

    • @masterchief1520
      @masterchief1520 6 วันที่ผ่านมา

      ​@@elspuddo How do you deep dive into concepts? What's your process in understanding stuff?

    • @elspuddo
      @elspuddo  6 วันที่ผ่านมา

      @@masterchief1520 It's mostly a mix of reading and then trying to put what I've read into practice. I understand things a lot better after I try to use that knowledge for something practical. Writing about a topic in order to explain it to someone else is also super helpful for gaining a better understanding. This helps reveal things that you might have glossed over and only have a superficial understanding of.

  • @miggyshiggy
    @miggyshiggy ปีที่แล้ว

    awesome. thank you sir!

  • @2_Sec_C
    @2_Sec_C 10 ปีที่แล้ว

    Why doesn't this command work for me lsof -p `pidof telnet`? I'm use Debian Wheezy.

    • @jamiroph
      @jamiroph 10 ปีที่แล้ว

      Does your system have the "pidof" command? You can usually check by running which pidof

  • @cbttjm
    @cbttjm 10 ปีที่แล้ว

    top notch! thank you very much!

  • @OskarNendes
    @OskarNendes 9 ปีที่แล้ว

    Is it possible to strace all the processes for a specific call?

  • @nezarfadle7715
    @nezarfadle7715 10 ปีที่แล้ว

    Simply ... Amaaaaaaaazing ^____^

  • @pondyellow3286
    @pondyellow3286 4 ปีที่แล้ว

    Excellent!

  • @juancaicedo5208
    @juancaicedo5208 9 ปีที่แล้ว

    suuuubscribed... very awesome demo.. thanks!

  • @2_Sec_C
    @2_Sec_C 11 ปีที่แล้ว

    Any reason why this command doesn't work on my machine?
    root@master:~# lsof -p `pidof telnet`
    lsof: no process ID specified
    lsof 4.81

  • @scoomey
    @scoomey 11 ปีที่แล้ว

    Excellent technique. Sadly I'm still a vi holdout.