В моем приложении Perl / FastCGI широко используется «print STDERR» для записи всех видов отладочной информации в файл журнала ошибок Apache.
Я сам вставляю частые разрывы строк, но Apache (или, возможно, FastCGI?) все еще чувствует необходимость вставлять дополнительные разрывы строк, обычно прямо в середине моего красиво отформатированного вывода.
Как я могу предотвратить это?
Вот пример:
[Sun Sep 19 12:51:49 2010] [warn] mod_fcgid: stderr: request OK: client / index :0.035902 wallclock secs ( 0.030 usr 0.000 sys + 0.000 cusr 0.000 csys = 0.030 CPU)
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: REQUEST pid:3569 ctr:4 time: 15 path:/client/index
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: REQUEST: /client/index log: 9473
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 1--45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 2--45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 3--45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 4--45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 5--45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 6--45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 7--45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 8--45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 9--4
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 5678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 10-45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 11-45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 12-45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 13-45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 14-45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 15-45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 16-45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 17-45678901234567890123456789012345678901234567890
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 18-4567890123456789012345678901234567890123456789
[Sun Sep 19 12:51:52 2010] [warn] mod_fcgid: stderr: 0
Каждая строка должна содержать 51 символ, включая \ n, без учета преамбулы apache.Каждая строка выводится в своем собственном вызове print (), поэтому это не является следствием одновременной выгрузки большого количества текста.
Кажется, это происходит каждые 504 символа, начиная с начала каждого запроса FastCGI.Если у меня в строке куча запросов, которые выводят очень мало информации, я никогда не увижу разрыв строки.