<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta name=Generator content="Microsoft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.hoenzb
        {mso-style-name:hoenzb;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:3.0cm 2.0cm 3.0cm 2.0cm;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=DA link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Thanks for your response.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>It is not as much converting it into a form recognized by the Excel importer – I just use tabulator characters for that – but to get the data suited directly for further analysis by Excel.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>For instance I do not believe that the 2013-04-02 10:34:32,479 time stamp is immediately useful (and I also need timezone support), so I was looking at simply generating the number (fractional days since the Excel epoch) which Excel can then be told is a date and handle accordingly.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Do you have any experiences like that to share?<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Thanks <o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>/Thorbjørn<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> logback-user-bounces@qos.ch [mailto:logback-user-bounces@qos.ch] <b>On Behalf Of </b>Donald McLean<br><b>Sent:</b> 2. april 2013 16:37<br><b>To:</b> logback users list<br><b>Subject:</b> Re: [logback-user] Logs targeting Excel Pivot Tables<o:p></o:p></span></p></div><p class=MsoNormal><o:p> </o:p></p><div><div><div><p class=MsoNormal style='margin-bottom:12.0pt'>Wouldn't you want to just use a different pattern, one that has commas  between the fields?<o:p></o:p></p></div><p class=MsoNormal style='margin-bottom:12.0pt'>Something like this:<br><br>%date,%level,%thread,%logger{10},%file,%line],%msg%n<o:p></o:p></p></div><p class=MsoNormal style='margin-bottom:12.0pt'>I tried it and it produced content that looked like this:<br><br>2013-04-02 10:34:32,479,TRACE,Scanner-2,e.s.e.m.EFLContext,EFLContext.scala,220],services: Set(<a href="mailto:edu.stsci.efl.logging.LogbackService@2e751271">edu.stsci.efl.logging.LogbackService@2e751271</a>)<br>2013-04-02 10:34:32,483,TRACE,Scanner-2,e.s.e.m.EFLContext,EFLContext.scala,213],[main] (Tue Apr 02 10:34:32 EDT 2013): Set(<a href="mailto:edu.stsci.efl.logging.LogbackService@2e751271">edu.stsci.efl.logging.LogbackService@2e751271</a>)<br>2013-04-02 10:34:32,483,TRACE,Scanner-2,e.s.e.m.EFLContext,EFLContext.scala,213],looking for: edu.stsci.efl.services.LoggerFactoryService<br>2013-04-02 10:34:32,483,TRACE,Scanner-2,e.s.e.m.EFLContext,EFLContext.scala,213],Some(<a href="mailto:edu.stsci.efl.logging.LogbackService@2e751271">edu.stsci.efl.logging.LogbackService@2e751271</a>)<br>2013-04-02 10:34:32,484,DEBUG,Scanner-2,e.s.e.d.DBModule,DBModule.scala,35],Starting DBModule<br>2013-04-02 10:34:32,485,TRACE,Scanner-2,e.s.e.m.EFLContext,EFLContext.scala,213],[main] (Tue Apr 02 10:34:32 EDT 2013): Set(<a href="mailto:edu.stsci.efl.logging.LogbackService@2e751271">edu.stsci.efl.logging.LogbackService@2e751271</a>)<br>2013-04-02 10:34:32,485,TRACE,Scanner-2,e.s.e.m.EFLContext,EFLContext.scala,213],looking for: edu.stsci.efl.services.PropertyService<br>2013-04-02 10:34:32,486,TRACE,Scanner-2,e.s.e.m.EFLContext,EFLContext.scala,213],None<o:p></o:p></p></div><div><p class=MsoNormal style='margin-bottom:12.0pt'><o:p> </o:p></p><div><p class=MsoNormal>On Tue, Apr 2, 2013 at 3:59 AM, Thorbjørn Ravn Andersen <<a href="mailto:thunderaxiom@hotmail.com" target="_blank">thunderaxiom@hotmail.com</a>> wrote:<o:p></o:p></p><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Hi.<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'> <o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US>I want to create a log file which is not directly intended to be readable by humans but to use with Pivot Tables in Excel to generate reports (e.g. over http requests and their duration spread over the day for several months, that kind of thing).</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US> </span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US>I was wondering what the best approach for doing that would be.</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US> </span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US>My guess would be a tab-separated file (to allow Excel to read it in as a CSV-file), with the first field being the timestamp in an Excel compatible form (e.g. a number formatted as a timestamp), and the remaining fields the individual items I need to analyze.  (This is what I generate right now using ad-hoc Perl)</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US> </span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US>(We can calculate on that 99.99% of the time that the application will exit with System.exit(0) in my main method, so it is not super important with having a solution robust against e.g. OutOfMemoryError, but I would like one that does not build a large data structure in memory like using JExcel to generate a spread sheet on the fly).</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US> </span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US>Anyone who has experimented with this and have experiences to share?</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US> </span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US>Thanks</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='color:#888888'> </span><span style='color:#888888'><o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='color:#888888'>/Thorbjørn</span><span style='color:#888888'><o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='color:#888888'> </span><span style='color:#888888'><o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='color:#888888'> </span><span style='color:#888888'><o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='color:#888888'> </span><span style='color:#888888'><o:p></o:p></span></p></div></div><p class=MsoNormal><br>_______________________________________________<br>Logback-user mailing list<br><a href="mailto:Logback-user@qos.ch">Logback-user@qos.ch</a><br><a href="http://mailman.qos.ch/mailman/listinfo/logback-user" target="_blank">http://mailman.qos.ch/mailman/listinfo/logback-user</a><o:p></o:p></p></div><p class=MsoNormal><br><br clear=all><br>-- <br>Family photographs are a critical legacy for<br>ourselves and our descendants. Protect that<br>legacy with a digital backup and recovery plan. <o:p></o:p></p></div></div></body></html>