毎日さまざまな時間にいくつかのcronを実行しています。時折、いずれかが「スタック」し、そのプロセスが停止することはありません。これは一定ではありませんが、いくつかの cron がアクセスする別のファイルの関数を変更した後、回数が著しく増加しました。常に同じファイルではなく、常に同時にではなく、ファイルを手動で実行すると正常に動作します。
私の質問:
この外部ファイルを変更すると、実行中の cron が変更を取得するはずですよね? (試してみましたが機能しないので、機能しないか、コードのその時点に到達しなかったため、2番目の質問になります:)
実行中の cron のスタック トレースを出力して、どこでスタックしたかを確認するにはどうすればよいですか? Linux、Centos バージョン 7 で実行
編集: pstack
main() を提供してくれます - どうすればそれよりも先に進むことができますか?
#0 0x00007f710a129e0d in poll () from /lib64/libc.so.6
#1 0x00007f7102391ab9 in Curl_poll () from /lib64/libcurl.so.4
#2 0x00007f710238aa4d in curl_multi_wait () from /lib64/libcurl.so.4
#3 0x00007f7102383baf in curl_easy_perform () from /lib64/libcurl.so.4
#4 0x00007f71025c96f6 in zif_curl_exec () from /usr/lib64/php/modules/curl.so
#5 0x00007f71029e6a4d in xdebug_execute_internal (current_execute_data=0x7f710d8f14a0, return_value_used=1) at /var/tmp/xdebug/xdebug.c:1547
#6 0x00007f710dc61271 in zend_do_fcall_common_helper_SPEC ()
#7 0x00007f710dbde617 in execute ()
#8 0x00007f71029e5e3a in xdebug_execute (op_array=0x7f70fa316bc8) at /var/tmp/xdebug/xdebug.c:1435
#9 0x00007f710dc6190d in zend_do_fcall_common_helper_SPEC ()
#10 0x00007f710dbde617 in execute ()
#11 0x00007f71029e5e3a in xdebug_execute (op_array=0x7f710f89efb0) at /var/tmp/xdebug/xdebug.c:1435
#12 0x00007f710dc6190d in zend_do_fcall_common_helper_SPEC ()
#13 0x00007f710dbde617 in execute ()
#14 0x00007f71029e5e3a in xdebug_execute (op_array=0x7f710d921838) at /var/tmp/xdebug/xdebug.c:1435
#15 0x00007f710dbb727f in zend_execute_scripts ()
#16 0x00007f710db56656 in php_execute_script ()
#17 0x00007f710dc63548 in do_cli ()
#18 0x00007f710da1015e in main ()
助けてくれてありがとう!