Re: Re: Question for using ASM to log the method invocation trace.
Sai Zhang <[email protected]>
| Newsgroups | gmane.comp.java.objectweb.asm |
|---|---|
| Message-ID | <[email protected]> |
Hi all:
Setting up a shutdown hook for "cleaning" the instrumentation tasks seems to
be a good practice. However, I am
wondering could I insert "any" code to the code block of the shutdown hook ?
that is:
Runtime.getRuntime().addShutdownHook(new Thread() {
public void run() {
//Could i insert arbitrary code here as normal Java programs?
//Could I do some sophisticated post-execution program analysis tasks
here without producing a trace file?
}});
It seems that the shutdown hook may have some "side-effect". I have a fairly
complex procedure m() which
throws no exception when calling directly from main. However, it behaves
strangely when putting into the hook code block.
I am just guessing is there any special side-effects here?
thanks. Any comments are highly appreciated.
-
Sai
On Wed, Jun 30, 2010 at 3:13 AM, Paul Keeble <[email protected]> wrote:
> Say you have a class:
> class Tracer {
> public static void trace(String )
>
> public static void close()
> }
>
> Then you can happily insert the calls to Tracer.trace for the
> instrumenting. You can also right at the beginning of the program (before
> you instrument anything and when you set-up the FileWriter to begin with)
> set-up a shutdown hook using something like:
>
> Runtime.getRuntime().addShutdownHook(new Thread() {
> public void run() {
> Tracer.close();
> }});
>
> Its not a concern of the tracing to get the file stream closed, it is for
> the shutdown of the program.
>
> PK
>
> ------------------------------
> *From:* Zhongxian Gu <[email protected]>
> *To:* [email protected]
> *Sent:* Wed, 30 June, 2010 5:10:33
> *Subject:* [asm] Question for using ASM to log the method invocation
> trace.
>
> Hi all,
>
> I wish to use ASM to instrument the code and during the run, record the
> method invocation trace. I use AdviceAdapter to do that. To enhance the
> performance,
> I use BufferedWriter to print info to the log file. The problem is that I
> don't know how to instrument the code to close the BufferedWriter. I must
> call it until all the
> methods called which is only known at run-time. Without calling close
> method will cause information missing in the buffer.
>
> I wonder if some of you have also experienced this condition and could you
> give me some hints. Thanks
>
> Best
>
> Zhongxian
>
> --
> Zhongxian Gu
> http://wwwcsif.cs.ucdavis.edu/~gu/ <http://wwwcsif.cs.ucdavis.edu/%7Egu/>
> Ph.D. Student in Computer Science, UC Davis
> 2249 Kemper Hall
>
>
>
> --
> You receive this message as a subscriber of the [email protected] mailing list.
> To unsubscribe: mailto:[email protected]
> For general help: mailto:[email protected]?subject=help
> OW2 mailing lists service home page: http://www.ow2.org/wws
>
>
message-footer.txt
(text/plain, 238 B)
-- You receive this message as a subscriber of the [email protected] mailing list. To unsubscribe: mailto:[email protected] For general help: mailto:[email protected]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws