Skip to content

Instantly share code, notes, and snippets.

@tiye
Last active October 28, 2024 08:35
Show Gist options
  • Save tiye/1dc931aa8aa32a03925d5b1049fefbe1 to your computer and use it in GitHub Desktop.
Save tiye/1dc931aa8aa32a03925d5b1049fefbe1 to your computer and use it in GitHub Desktop.
strace curl 局部日志
socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
connect(3, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = 0
sendto(3, "\2\0\0\0\r\0\0\0\6\0\0\0hosts\0", 18, MSG_NOSIGNAL, NULL, 0) = 18
poll([{fd=3, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([{fd=3, revents=POLLIN|POLLHUP}])
recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="hosts\0", iov_len=6}, {iov_base="\310O\3\0\0\0\0\0", iov_len=8}], msg_iovlen=2, msg_control=[{cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data=[4]}], msg_controllen=20, msg_flags=MSG_CMSG_CLOEXEC}, MSG_CMSG_CLOEXEC) = 14
mmap(NULL, 217032, PROT_READ, MAP_SHARED, 4, 0) = 0x7fcecddc1000
close(4) = 0
close(3) = 0
socket(AF_INET, SOCK_STREAM|SOCK_CLOEXEC, IPPROTO_IP) = 3
connect(3, {sa_family=AF_INET, sin_port=htons(80), sin_addr=inet_addr("47.90.61.132")}, 16) = 0
setsockopt(3, SOL_SOCKET, SO_SNDTIMEO_OLD, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 16) = 0
sendto(3, "GET / HTTP/1.1\r\nHost: topix.im\r\n"..., 34, MSG_NOSIGNAL, NULL, 0) = 34
setsockopt(3, SOL_SOCKET, SO_RCVTIMEO_OLD, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 16) = 0
recvfrom(3, "HTTP/1.1 308 Permanent Redirect\r"..., 16384, 0, NULL, NULL) = 154
close(3) = 0
socket(AF_INET6, SOCK_DGRAM, IPPROTO_IP) = 3
close(3) = 0
openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=5699248, ...}) = 0
mmap(NULL, 5699248, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f0efce67000
close(3) = 0
openat(AT_FDCWD, "/home/chen/.curlrc", O_RDONLY) = -1 ENOENT (No such file or directory)
brk(0x559697f92000) = 0x559697f92000
brk(0x559697f8e000) = 0x559697f8e000
brk(0x559697f8d000) = 0x559697f8d000
ioctl(1, TCGETS, {B9600 opost isig icanon echo ...}) = 0
ioctl(0, TIOCGWINSZ, {ws_row=40, ws_col=101, ws_xpixel=850, ws_ypixel=655}) = 0
brk(0x559697fae000) = 0x559697fae000
socketpair(AF_UNIX, SOCK_STREAM, 0, [3, 4]) = 0
fcntl(3, F_GETFL) = 0x2 (flags O_RDWR)
fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK) = 0
fcntl(4, F_GETFL) = 0x2 (flags O_RDWR)
fcntl(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0
poll([{fd=3, events=POLLIN}], 1, 0) = 0 (Timeout)
socketpair(AF_UNIX, SOCK_STREAM, 0, [5, 6]) = 0
mmap(NULL, 8392704, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f0efc666000
mprotect(0x7f0efc667000, 8388608, PROT_READ|PROT_WRITE) = 0
clone(child_stack=0x7f0efce65d70, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tid=[479390], tls=0x7f0efce66700, child_tidptr=0x7f0efce669d0) = 479390
poll([{fd=5, events=POLLIN}, {fd=3, events=POLLIN}], 2, 1) = 0 (Timeout)
poll([{fd=5, events=POLLIN}, {fd=3, events=POLLIN}], 2, 1) = 1 ([{fd=5, revents=POLLIN}])
futex(0x559697f63380, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
futex(0x559697f63380, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0x7f0efce669d0, FUTEX_WAIT, 479390, NULL) = 0
close(6) = 0
close(5) = 0
socket(AF_INET, SOCK_STREAM, IPPROTO_TCP) = 5
setsockopt(5, SOL_TCP, TCP_NODELAY, [1], 4) = 0
setsockopt(5, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
setsockopt(5, SOL_TCP, TCP_KEEPIDLE, [60], 4) = 0
setsockopt(5, SOL_TCP, TCP_KEEPINTVL, [60], 4) = 0
fcntl(5, F_GETFL) = 0x2 (flags O_RDWR)
fcntl(5, F_SETFL, O_RDWR|O_NONBLOCK) = 0
connect(5, {sa_family=AF_INET, sin_port=htons(80), sin_addr=inet_addr("123.150.76.218")}, 16) = -1 EINPROGRESS (Operation now in progress)
poll([{fd=5, events=POLLOUT|POLLWRNORM}], 1, 0) = 0 (Timeout)
poll([{fd=5, events=POLLOUT}, {fd=3, events=POLLIN}], 2, 1) = 0 (Timeout)
poll([{fd=5, events=POLLOUT|POLLWRNORM}], 1, 0) = 0 (Timeout)
poll([{fd=5, events=POLLOUT}, {fd=3, events=POLLIN}], 2, 198) = 1 ([{fd=5, revents=POLLOUT}])
poll([{fd=5, events=POLLOUT|POLLWRNORM}], 1, 0) = 1 ([{fd=5, revents=POLLOUT|POLLWRNORM}])
getsockopt(5, SOL_SOCKET, SO_ERROR, [0], [4]) = 0
getpeername(5, {sa_family=AF_INET, sin_port=htons(80), sin_addr=inet_addr("123.150.76.218")}, [128->16]) = 0
getsockname(5, {sa_family=AF_INET, sin_port=htons(57966), sin_addr=inet_addr("10.26.140.176")}, [128->16]) = 0
sendto(5, "GET / HTTP/1.1\r\nHost: qq.com\r\nUs"..., 70, MSG_NOSIGNAL, NULL, 0) = 70
poll([{fd=5, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 0) = 0 (Timeout)
poll([{fd=5, events=POLLIN}, {fd=3, events=POLLIN}], 2, 153) = 1 ([{fd=5, revents=POLLIN}])
poll([{fd=5, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 0) = 1 ([{fd=5, revents=POLLIN|POLLRDNORM}])
recvfrom(5, "HTTP/1.1 302 Moved Temporarily\r\n"..., 102400, 0, NULL, NULL) = 323
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0), ...}) = 0
write(1, "<html>\r\n", 8<html>
) = 8
write(1, "<head><title>302 Found</title></"..., 39<head><title>302 Found</title></head>
) = 39
write(1, "<body>\r\n", 8<body>
) = 8
write(1, "<center><h1>302 Found</h1></cent"..., 37<center><h1>302 Found</h1></center>
) = 37
write(1, "<hr><center>stgw</center>\r\n", 27<hr><center>stgw</center>
) = 27
write(1, "</body>\r\n", 9</body>
) = 9
write(1, "</html>\r\n", 9</html>
) = 9
brk(0x559697faa000) = 0x559697faa000
brk(0x559697fa8000) = 0x559697fa8000
close(3) = 0
close(4) = 0
brk(0x559697f8f000) = 0x559697f8f000
brk(0x559697f8d000) = 0x559697f8d000
close(5) = 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment