python 2.7记录日志的问题IOError: [Errno 24] Too many open files
伊谢尔伦
伊谢尔伦 2017-04-18 10:07:15
0
4
1218
伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

membalas semua(4)
PHPzhong
fh =logging.FileHandler(BASE_DIR+'/log/'+username+'_'+GetNowTime()+'_'+str(random.random())+'.log')

这个你每一次创建的handler对象有没有调用`fh.close()`来清除此hander的所拥有的资源。
大家讲道理

Terlalu banyak fail dibuka Secara umumnya, lalai ialah maksimum 1024 fail
Anda perlu meningkatkan nilai ini dan mengesahkan bilangan fail yang boleh dilaksanakan dengan melaksanakan ulimit -a. dalam
Lebih banyak tersedia Rujukan: http://askubuntu.com/question...

阿神

logger = logging.getLogger('mylogger'+str(time.time()))
Ada masalah dengan ayat ini Jika anda tidak menjalankan get_task2 sekali, anda akan mendapat pemegang fail anda menjalankannya terlalu banyak kali, sudah tentu ia akan melebihi!

洪涛
logger = logging.getLogger('mylogger'+str(time.time()))

Cara penulisan ini sememangnya buruk dan potensi risikonya terlalu tinggi. Adalah tidak munasabah untuk menjana log berasingan untuk setiap permintaan. Sistem Linux sendiri juga mempunyai had bilangan fail dalam direktori Jika terdapat terlalu banyak permintaan, had atas akan dicapai dan ralat akan berlaku.

Mengenai sama ada pengendali ditutup atau tidak, ia hanya boleh dikatakan sebagai ralat pengaturcaraan, tetapi mempunyai log berasingan untuk setiap permintaan adalah cara berfikir yang salah.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan