TopN 6f6223a449 support linux and docker vor 6 Jahren
..
.gitignore 50789a773a the first commit vor 6 Jahren
LICENSE 50789a773a the first commit vor 6 Jahren
README.md 50789a773a the first commit vor 6 Jahren
allocated_string.h 50789a773a the first commit vor 6 Jahren
build.sh 6f6223a449 support linux and docker vor 6 Jahren
countlog.h 50789a773a the first commit vor 6 Jahren
hook.c 50789a773a the first commit vor 6 Jahren
span.h 50789a773a the first commit vor 6 Jahren

README.md

koala-libc

Old Version

If koala-recorder.so is loaded on php-fpm master process, fork() will break golang. Use koala-libc.so to load koala-recorder.so in the child process to circumvent this problem.

# compile https://github.com/v2pro/koala/tree/master/gateway/gw4libc to ~/koala-recorder.so
# compile https://github.com/v2pro/koala-libc to ~/koala-libc.so
KOALA_SO=~/koala-recorder.so LD_PRELOAD="~/koala-libc.so /usr/lib/x86_64-linux-gnu/libcurl.so.4" /usr/sbin/php-fpm7.0 -F
# ~/koala-libc.so will be loaded in master process
# ~/koala-recorder.so will be loaded in child process, at the first call to accept()

build

  • ./build.sh -> koala-libc.so