But in this case we're viewing a previously/currently written log4j file, hence
the parsing.  If you use a socket appender you can have Chainsaw capture the
actual message events, just as you suggest.  However, that may not be possible,
nor even desirable, in many cases.  I'm sure Scott Deboy can tell you more.

Jake

On 7/26/2011 12:49 AM, Stadelmann Josef wrote:
> Are you saying you write a parser for log file entries? Hmm. Why not taking 
> log4j sources and find the point where you can catch the message events, the 
> real objects and massage this objects. I say that because you say: Everything 
> is displayed under Message column. Getting access to the Message Event 
> objects would allow you to check certain fields and then access much better 
> what you may call part of the message column content. So the question be 
> allowed; why parsin? What do you like to parse, find, filter out? And yes. 
> Unless you have a clear idea about how your real-messages must be structured 
> it is even hard to write a working parser.
> Josef
> 
> -----Ursprüngliche Nachricht-----
> Von: Ding, Qin [mailto:qin.d...@jpmchase.com] 
> Gesendet: Montag, 25. Juli 2011 17:28
> An: Log4J Users List
> Betreff: RE: Help Log4j Chainsaw - VFSLogFilePatternReceiver Usage
> 
> Thank you Scott.  It works for the local log file.  Everything is displayed 
> under Message column.  I guess I need to try the different format to see how 
> to parse the log file correctly. One reason it does not parse correctly is 
> that the log entries are not always consistent. Once in a while there is a 
> plain text entry shown up.
> 
> I will try sftp again soon.
> 
> Once again, thank you.
> 
> QD
> 
> -----Original Message-----
> From: Scott Deboy [mailto:scott.de...@gmail.com]
> Sent: Thursday, July 21, 2011 5:04 PM
> To: Log4J Users List
> Subject: Re: Help Log4j Chainsaw - VFSLogFilePatternReceiver Usage
> 
> Here you go..
> 
> 1. start chainsaw
> 2. Choose the file, load chainsaw configuration menu item
> 3. When the dialog opens, choose the 'process a log file' option
> 4. Click the 'open file' button and choose the local file you'd like to
> process, or manually enter the sftp:// URL you want to use (I'd first try
> with a local file just to make sure it works, but once it is working, you
> can just change this to your sftp URL).
> 5. Leave Log file format type as 'LogFilePatternReceiver LogFormat'
> 6. Click the down arrow next to the Log file format drop down and choose
> 'MESSAGE' (it will put the entire log line in the 'message' field but you
> won't have issues with mismatched log entries, so we will see events come in
> to a tab).
> 7.don't worry about Log file timestamp format, since you don't have
> TIMESTAMP field defined in your log format
> 8. Click 'save configuration as' and browse to where you want to save it and
> give it a name (I just entered 'c:\new-logfile-receiver-config.xml' in the
> box)
> 9. Click the 'always start chainsaw with this configuration button'
> 10. Press ok
> 
> Events should show up in a new tab, the tab name being the name of the log
> file you chose to process.
> 
> If you open the receiver panel you should see a receiver whose name is the
> log file you chose to process.
> 
> Here is the contents of 'new-logfile-receiver-config.xml' after I did this
> (it did create a tab for me, and I have a receiver defined)
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/";
> debug="true">
>     <plugin class="org.apache.log4j.chainsaw.vfs.VFSLogFilePatternReceiver"
> name="/C:/andyRILog.txt">
>         <param name="appendNonMatches" value="true"/>
>         <param name="autoReconnect" value="true"/>
>         <param name="fileURL" value="file:/C:/andyRILog.txt"/>
>         <param name="logFormat" value="MESSAGE"/>
>         <param name="name" value="/C:/andyRILog.txt"/>
>         <param name="promptForUserInfo" value="false"/>
>         <param name="tailing" value="true"/>
>         <param name="timestampFormat" value="yyyy-MM-dd HH:mm:ss,SSS"/>
>         <param name="waitMillis" value="2000"/>
>     </plugin>
> </log4j:configuration>
> 
> Again, if you are going to try sftp after this, change promptForUserInfo to
> true and change your fileURL.  You can play with the logFormat and
> timestampFormat once you have it working as well.
> 
> This worked for me out of the box with the developer snapshot you downloaded
> from http://people.apache.org/~sdeboy
> 
> Scott
> 
> On Thu, Jul 21, 2011 at 2:51 PM, Ding, Qin <qin.d...@jpmchase.com> wrote:
> 
>> Scott:
>>
>> 1. I manually downloaded mylog.log; and define a logfilePatternReceiver
>> within chainsaw. Pointing to mylog.log. after that, it just sits there, I
>> see nothing.  The last entry in the detail panel: setValueAt, 2, 1,
>> value=file:///C:\MyDocs\logs\mylog.log, valueClassclass java.lang.String
>>
>> 2. I copied the provided configuration file and modified the
>> VFSLogFilePatternReceiver and put it in a folder.  Use the instruction you
>> gave me to load it.  But on the receiver panel I did not see anything.
>>  Manually define a VFSLogFilePatternReceiver.  Don't see the GUI prompt for
>> id/pwd.
>>
>> Would you please give me a detailed the instruction or your working sample
>> configuration file?
>>
>> Thank you
>>
>> QD
>>
>> -----Original Message-----
>> From: Scott Deboy [mailto:scott.de...@gmail.com]
>> Sent: Thursday, July 21, 2011 1:36 PM
>> To: Log4J Users List
>> Subject: Re: Help Log4j Chainsaw - VFSLogFilePatternReceiver Usage
>>
>> Chainsaw settings are stored in $userhome/.chainsaw - in that folder has a
>> chainsaw-settings.xml file that is used to store application-wide
>> preferences.  Here is how you can get the 'configurationURL' field to be
>> set
>> in that file via the GUI:
>>
>> Use the file-load Chainsaw configuration menu option, then select 'use a
>> chainsaw config file' and browse to it, then check the 'always start
>> chainsaw with this configuration' check box.
>>
>> Scott
>>
>>
>> On Thu, Jul 21, 2011 at 11:29 AM, Ding, Qin <qin.d...@jpmchase.com> wrote:
>>
>>> Scott, I already tried by removing the id/pwd and then set true to the
>>> promptforuserinfo. However, I don't see the GUI. After restarting the
>> app, I
>>> still don't see the GUI. I think this issue might be related to the
>>> following problem:
>>>
>>> How does the app pick up receiver config file in my case log4j.xml?
>>>  Yesterday, I have a log4j.xml file defined and placed it in the chainsaw
>>> folder.  Today, after I download the new chainsaw and started the app, I
>>> didn't tell the app where to look for the log4j.xml, but it seems find it
>>> from the location (old chainsaw) I defined yesterday.  I redefined a new
>>> log4j.xml and place it under the new chainsaw folder. In application-wide
>>> preference, I remove the old log4j.xml and use the new log4j.xml.  After
>> I
>>> restarted the app, the log4j.xml in use is still the old one.
>>>
>>> I will remove the old the application including the log4j.xml.
>>>
>>> QD
>>>
>>> -----Original Message-----
>>> From: Scott Deboy [mailto:scott.de...@gmail.com]
>>> Sent: Thursday, July 21, 2011 1:14 PM
>>> To: Log4J Users List
>>> Subject: Re: Help Log4j Chainsaw - VFSLogFilePatternReceiver Usage
>>>
>>> Try this: set promptforuserinfo to 'true' and take your username and
>>> password out of the sftp URL.  You will get a GUI username/password
>>> prompt..maybe something with special characters in your password?
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/";
>>> debug="true">
>>>    <plugin class="org.apache.log4j.
>>> chainsaw.vfs.VFSLogFilePatternReceiver" name="sftp">
>>>        <param name="appendNonMatches" value="true"/>
>>>        <param name="autoReconnect" value="true"/>
>>>        <param name="fileURL"
>>> value="sftp://192.168.1.144/pathhere/log.txt<
>>> http://username:userpass@192.168.1.144/pathhere/log.txt>
>>> "/>
>>>        <param name="logFormat" value="TIMESTAMP PROP(OUTERLEVEL)
>>> PROP(OUTERLOGGER)- * [THREAD] LEVEL LOGGER - MESSAGE"/>
>>>        <param name="name" value="sftp"/>
>>>        <param name="promptForUserInfo" value="true"/>
>>>
>>>        <param name="tailing" value="true"/>
>>>        <param name="timestampFormat" value="yyyyMMdd HH:mm:ss.SSS"/>
>>>        <param name="waitMillis" value="2000"/>
>>>    </plugin>
>>> </log4j:configuration>
>>>
>>> Scott
>>>
>>>
>>> On Thu, Jul 21, 2011 at 10:58 AM, Ding, Qin <qin.d...@jpmchase.com>
>> wrote:
>>>
>>>> Thank you, Scott.  but I get use FileZilla sftp SSH File Transfer
>>> Protocol
>>>> to get file.  Use I guess I have to view the static file manually
>>>> downloaded.
>>>>
>>>> Thank you very much.
>>>>
>>>> QD
>>>>
>>>>
>>>> -----Original Message-----
>>>> From: Scott Deboy [mailto:scott.de...@gmail.com]
>>>> Sent: Thursday, July 21, 2011 11:36 AM
>>>> To: Log4J Users List
>>>> Subject: Re: Help Log4j Chainsaw - VFSLogFilePatternReceiver Usage
>>>>
>>>> If you are still having problems, the issue may be with your server.
>>>> VFSLogFilePatternReceiver uses Jakarta Commons VFS, which uses the JSch
>>>> library to support the 'sftp' protocol.  According to their website,
>> this
>>>> is:
>>>> *SSH File Transfer Protocol(version 0, 1, 2, 3)
>>>>
>>>> *I'd suggest verifying your server actually supports SFTP.  It may
>>> support
>>>> ssh connections but not support the SSH File Transfer Protocol.
>>>>
>>>> Scott
>>>>
>>>> On Thu, Jul 21, 2011 at 9:13 AM, Scott Deboy <scott.de...@gmail.com>
>>>> wrote:
>>>>
>>>>> Here is a configuration I just used to retrieve a log file from my
>> Mac
>>>>> using the latest developer snapshot of Chainsaw V2 running on Vista.
>>  I
>>>>> don't have a known hosts file (or .ssh folder) on my vista box in my
>>> home
>>>>> folder or under cygwin home.
>>>>>
>>>>> Modify this configuration and let me know if it works for you.
>>>>>
>>>>> The two differences I notice here:
>>>>> 1. I was using an IP address and not a name that needed to be
>> resolved
>>>>> 2. I only have a single slash after the IP address
>>>>>
>>>>> Change logFormat, timestampFormat and the specifics of fileURL as
>>> needed
>>>> of
>>>>> course:
>>>>>
>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/";
>>>>> debug="true">
>>>>>     <plugin
>>>> class="org.apache.log4j.chainsaw.vfs.VFSLogFilePatternReceiver"
>>>>> name="sftp">
>>>>>         <param name="appendNonMatches" value="true"/>
>>>>>         <param name="autoReconnect" value="true"/>
>>>>>         <param name="fileURL" value="sftp://
>>>>> username:userpass@192.168.1.144/pathhere/log.txt"/>
>>>>>         <param name="logFormat" value="TIMESTAMP PROP(OUTERLEVEL)
>>>>> PROP(OUTERLOGGER)- * [THREAD] LEVEL LOGGER - MESSAGE"/>
>>>>>         <param name="name" value="sftp"/>
>>>>>         <param name="promptForUserInfo" value="false"/>
>>>>>
>>>>>         <param name="tailing" value="true"/>
>>>>>         <param name="timestampFormat" value="yyyyMMdd HH:mm:ss.SSS"/>
>>>>>         <param name="waitMillis" value="2000"/>
>>>>>     </plugin>
>>>>> </log4j:configuration>
>>>>>
>>>>>
>>>>> Scott
>>>>>
>>>>>
>>>>> On Thu, Jul 21, 2011 at 6:51 AM, Ding, Qin <qin.d...@jpmchase.com>
>>>> wrote:
>>>>>
>>>>>> Scott,
>>>>>>
>>>>>> I downloaded new chainsaw and run it.  Still I could not get the log
>>>> file.
>>>>>>  Here is the exception trace:
>>>>>>
>>>>>> Level
>>>>>> INFO
>>>>>> Logger
>>>>>> org.apache.log4j.chainsaw.vfs.VFSLogFilePatternReceiver
>>>>>> Time
>>>>>> 2011-07-21 08:43:16,361 (ms delta: 328)
>>>>>> Thread
>>>>>> Thread-3
>>>>>> Message
>>>>>> sftp://
>>> username:passw...@xxx.yyy.net/complete/path/to/logs/MyLog.lognot
>>>>>> available - may be due to incorrect credentials, but will re-attempt
>>> to
>>>> load
>>>>>> after waiting 10000 millis
>>>>>> Marker
>>>>>>
>>>>>> Throwable
>>>>>> org.apache.commons.vfs.FileSystemException: Could not connect to
>> SFTP
>>>>>> server at "sftp://myId:my...@xxx.yyy.net/";.
>>>>>>        at
>>>>>>
>>>>
>>>
>> org.apache.commons.vfs.provider.sftp.SftpFileProvider.doCreateFileSystem(SftpFileProvider.java:99)
>>>>>>        at
>>>>>>
>>>>
>>>
>> org.apache.commons.vfs.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:81)
>>>>>>        at
>>>>>>
>>>>
>>>
>> org.apache.commons.vfs.provider.AbstractOriginatingFileProvider.findFile(AbstractOriginatingFileProvider.java:62)
>>>>>>        at
>>>>>>
>>>>
>>>
>> org.apache.commons.vfs.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:641)
>>>>>>        at
>>>>>>
>>>>
>>>
>> org.apache.commons.vfs.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:582)
>>>>>>        at
>>>>>>
>>>>
>>>
>> org.apache.log4j.chainsaw.vfs.VFSLogFilePatternReceiver$VFSReader.run(VFSLogFilePatternReceiver.java:358)
>>>>>>        at java.lang.Thread.run(Unknown Source)
>>>>>> Caused by: org.apache.commons.vfs.FileSystemException: Could not
>>> connect
>>>>>> to SFTP server at "xxx.yyy.net".
>>>>>>        at
>>>>>>
>>>>
>>>
>> org.apache.commons.vfs.provider.sftp.SftpClientFactory.createConnection(SftpClientFactory.java:214)
>>>>>>        at
>>>>>>
>>>>
>>>
>> org.apache.commons.vfs.provider.sftp.SftpFileProvider.doCreateFileSystem(SftpFileProvider.java:90)
>>>>>>        ... 6 more
>>>>>> Caused by: com.jcraft.jsch.JSchException: Auth cancel
>>>>>>        at com.jcraft.jsch.Session.connect(Session.java:451)
>>>>>>        at com.jcraft.jsch.Session.connect(Session.java:150)
>>>>>>        at
>>>>>>
>>>>
>>>
>> org.apache.commons.vfs.provider.sftp.SftpClientFactory.createConnection(SftpClientFactory.java:210)
>>>>>>        ... 7 more
>>>>>>
>>>>>> I use both Putty and FileZilla to get MyLog.log.  Credential is
>> good.
>>>>>>
>>>>>> Thank you for helping me.
>>>>>>
>>>>>> QD
>>>>>>
>>>>>> -----Original Message-----
>>>>>> From: Scott Deboy [mailto:scott.de...@gmail.com]
>>>>>> Sent: Wednesday, July 20, 2011 3:10 PM
>>>>>> To: Log4J Users List
>>>>>> Subject: Re: Help Log4j Chainsaw - VFSLogFilePatternReceiver Usage
>>>>>>
>>>>>> Are you using the latest developer snapshot of Chainsaw, available
>>> here?
>>>>>>
>>>>>> http://people.apache.org/~sdeboy
>>>>>>
>>>>>> If not, please try it and follow-up with your results.
>>>>>>
>>>>>> Thanks
>>>>>>
>>>>>> Scott
>>>>>>
>>>>>> On Wed, Jul 20, 2011 at 12:18 PM, Ding, Qin <qin.d...@jpmchase.com>
>>>>>> wrote:
>>>>>>
>>>>>>> I am trying to view the log4j log using
>>>>>>> VFSLogFilePatternReceiverNoUserInfoPrompt.
>>>>>>>
>>>>>>> Here is my log4j.xml:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> <plugin name="VFSLogFilePatternReceiverNoUserInfoPrompt"
>>>>>>> class="org.apache.log4j.chainsaw.vfs.VFSLogFilePatternReceiver">
>>>>>>>
>>>>>>>     <param name="fileURL" value="sftp://
>>>>>>> myid:my...@serverhost.xxx.yy.net//complete/path/to/logs/mylog.log
>>> "/>
>>>>>>>
>>>>>>>     <param name="timestampFormat" value="yyyy-MM-dd
>> HH:mm:ss,SSS"/>
>>>>>>>
>>>>>>>     <param name="logFormat" value="[TIMESTAMP] LEVEL THREAD
>>>>>>> (FILE:METHOD:LINE) -MESSAGE"/>
>>>>>>>
>>>>>>>     <param name="name" value="VFSLogFilePatternReceiver"/>
>>>>>>>
>>>>>>>     <param name="tailing" value="true"/>
>>>>>>>
>>>>>>>   </plugin>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Start the chainsaw with this log4j.xml. Get the following msg:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> attempting to load file: sftp://
>>>>>>> myid:my...@serverhost.xxx.yy.net//complete/path/to/logs/mylog.log
>>>>>>>
>>>>>>> file not available - will try again in 10 seconds
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> The file is there at the remote site, I can sftp to it.  Why can
>>>>>> chainsaw
>>>>>>> find it?
>>>>>>>
>>>>>>> I tried the following with or without port number:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> <param name="fileURL" value="sftp://
>>>>>>> myid:my...@serverhost.xxx.yy.net/complete/path/to/logs/mylog.log
>> "/>
>>>>>>>
>>>>>>> <param name="fileURL" value="sftp://
>>>>>>> myid:my...@serverhost.xxx.yy.net//complete/path/to/logs/mylog.log
>>> "/>
>>>>>>>
>>>>>>> <param name="fileURL" value="sftp://
>>>>>>>
>> myid:my...@serverhost.xxx.yy.net///complete/path/to/logs/mylog.log
>>> "/>
>>>>>>>
>>>>>>> <param name="fileURL" value="sftp://
>>>>>>>
>> myid:my...@serverhost.xxx.yy.net////complete/path/to/logs/mylog.log
>>>> "/>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> None of these work. I saw someone suggest to create a .ssh folder
>>>> under
>>>>>>> user home and create a known_hosts file with the host name it.  I
>>> did
>>>>>> that
>>>>>>> without help.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Please help. Thank you.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> QD
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> This communication is for informational purposes only. It is not
>>>>>>> intended as an offer or solicitation for the purchase or sale of
>>>>>>> any financial instrument or as an official confirmation of any
>>>>>>> transaction. All market prices, data and other information are not
>>>>>>> warranted as to completeness or accuracy and are subject to change
>>>>>>> without notice. Any comments or statements made herein do not
>>>>>>> necessarily reflect those of JPMorgan Chase & Co., its
>> subsidiaries
>>>>>>> and affiliates.
>>>>>>>
>>>>>>> This transmission may contain information that is privileged,
>>>>>>> confidential, legally privileged, and/or exempt from disclosure
>>>>>>> under applicable law. If you are not the intended recipient, you
>>>>>>> are hereby notified that any disclosure, copying, distribution, or
>>>>>>> use of the information contained herein (including any reliance
>>>>>>> thereon) is STRICTLY PROHIBITED. Although this transmission and
>> any
>>>>>>> attachments are believed to be free of any virus or other defect
>>>>>>> that might affect any computer system into which it is received
>> and
>>>>>>> opened, it is the responsibility of the recipient to ensure that
>> it
>>>>>>> is virus free and no responsibility is accepted by JPMorgan Chase
>> &
>>>>>>> Co., its subsidiaries and affiliates, as applicable, for any loss
>>>>>>> or damage arising in any way from its use. If you received this
>>>>>>> transmission in error, please immediately contact the sender and
>>>>>>> destroy the material in its entirety, whether in electronic or
>> hard
>>>>>>> copy format. Thank you.
>>>>>>>
>>>>>>> Please refer to http://www.jpmorgan.com/pages/disclosures for
>>>>>>> disclosures relating to European legal entities.
>>>>>>
>>>>>>
>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
>>>>>> For additional commands, e-mail: log4j-user-h...@logging.apache.org
>>>>>>
>>>>>>
>>>>>
>>>> This communication is for informational purposes only. It is not
>>>> intended as an offer or solicitation for the purchase or sale of
>>>> any financial instrument or as an official confirmation of any
>>>> transaction. All market prices, data and other information are not
>>>> warranted as to completeness or accuracy and are subject to change
>>>> without notice. Any comments or statements made herein do not
>>>> necessarily reflect those of JPMorgan Chase & Co., its subsidiaries
>>>> and affiliates.
>>>>
>>>> This transmission may contain information that is privileged,
>>>> confidential, legally privileged, and/or exempt from disclosure
>>>> under applicable law. If you are not the intended recipient, you
>>>> are hereby notified that any disclosure, copying, distribution, or
>>>> use of the information contained herein (including any reliance
>>>> thereon) is STRICTLY PROHIBITED. Although this transmission and any
>>>> attachments are believed to be free of any virus or other defect
>>>> that might affect any computer system into which it is received and
>>>> opened, it is the responsibility of the recipient to ensure that it
>>>> is virus free and no responsibility is accepted by JPMorgan Chase &
>>>> Co., its subsidiaries and affiliates, as applicable, for any loss
>>>> or damage arising in any way from its use. If you received this
>>>> transmission in error, please immediately contact the sender and
>>>> destroy the material in its entirety, whether in electronic or hard
>>>> copy format. Thank you.
>>>>
>>>> Please refer to http://www.jpmorgan.com/pages/disclosures for
>>>> disclosures relating to European legal entities.
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
>>>> For additional commands, e-mail: log4j-user-h...@logging.apache.org
>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
>>> For additional commands, e-mail: log4j-user-h...@logging.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
>> For additional commands, e-mail: log4j-user-h...@logging.apache.org
>>
>>
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
> For additional commands, e-mail: log4j-user-h...@logging.apache.org
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
> For additional commands, e-mail: log4j-user-h...@logging.apache.org
> 
> 
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
For additional commands, e-mail: log4j-user-h...@logging.apache.org

Reply via email to