/dev/tty
, 可以让它写到stderr
. 这样就要在启动时指定stderr
, 不能定向到/dev/null
.(ulimit -c unlimited && cd ${ROOT}; ${APP} -c ${CONFIG} >> $log_file 2>&1)
我们脚本是直接append到日志文件的.(ulimit -c unlimited && cd ${ROOT}; ${APP} -c ${CONFIG} >> $log_file.sys 2>&1)
// ensure glibc write error to stderr.
setenv("LIBC_FATAL_STDERR_", "1", 1);
// ensure glibc to do alloc check.
setenv("MALLOC_CHECK_", "1", 1);
我打开了glibc的内存检查,如果确认是野指针,我会编译个tcmalloc的内存检查模块去查。野指针是最难查的,不过大怪一般也难碰到。