The Debug pop3.log File Contains Non-printing Characters.
I am running with the debug environmental variable that produces a pop3.log file:
MOZ_LOG POP3:5,timestamp MOZ_LOG_FILE c:\Users\userid\Desktop\pop3.log
First, I noticed that in a recent update the log file name has changed to
pop3.log.moz_log
I am not sure why, as I told Mozilla what filename I wanted. But this is minor. The major problem is that the log file contains non-printable characters, and these characters make the file appear to the Unix Utilities on Windows (GOW [Gnu On Windows]) as a binary file. Before I process the file I have to translate null characters to blanks. This used to work to make the file appear as a character/text file. But now, there is a long, non-printable string of characters at the beginning of the file; I have to remove this first line to make GOW be able to process this file. Here is an example for a file that I have renamed and processed:
c:\Users\Userid\Desktop> head -1 pop3.201227.log | wc 1 12 550052793
c:\Users\Userid\Desktop> head -2 pop3.201227.log | wc 2 25 550052897
The first "line" has 1 line, 12 "words" and 550M characters. The second line has 13 "words" and 104 characters. Why is Thunderbird writing a line with 550,052,793 characters? To process the file, I have to use the command:
tr '\000' '\040' < pop3.log.moz_log | tail +2 > pop3.201227.log
Why is Thunderbird writing this first long line, and can that line be omitted from the log? I am assuming that the null (x'00') characters I convert to blanks are all in this first line. Thanks.
Thunderbird 78.6.0 (32-bit) on Windows 10 Professional 2004
所有回复 (2)
Given the file will be unicode and windows software is often ansi. issues sometime arise. But I really do not see why someone should change the text output format just because some unix utility with only minor penetration on windows does not like it. But it is not my call. I suggest you file a bug and see if it gets traction.
I believe that the Unix utilities will work on a file that contains Unicode characters. If a file is mainly ASCII characters, then these utilities will treat the file as a text file. But a file that begins with a line that contains 550 million characters, most (if not all are X'00'), then these utilities will treat the file as a non-text file. I looked at the source, and I was not sure where in the code this first line is created/written.