From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19951 invoked by alias); 13 Feb 2008 16:48:04 -0000 Received: (qmail 19931 invoked by uid 22791); 13 Feb 2008 16:48:02 -0000 X-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_36,J_CHICKENPOX_53,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (66.187.233.31) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 13 Feb 2008 16:47:44 +0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id m1DGlfCB021637 for ; Wed, 13 Feb 2008 11:47:41 -0500 Received: from pobox.corp.redhat.com (pobox.corp.redhat.com [10.11.255.20]) by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id m1DGlfH7029811; Wed, 13 Feb 2008 11:47:41 -0500 Received: from localhost.localdomain (sebastian-int.corp.redhat.com [172.16.52.221]) by pobox.corp.redhat.com (8.13.1/8.13.1) with ESMTP id m1DGldbG006414; Wed, 13 Feb 2008 11:47:39 -0500 Message-ID: <47B31EEE.6010400@redhat.com> Date: Wed, 13 Feb 2008 16:48:00 -0000 From: Andrew Cagney User-Agent: Thunderbird 2.0.0.9 (X11/20071115) MIME-Version: 1.0 To: Phil Muldoon CC: frysk@sourceware.org Subject: Re: [SCM] master: Add frysk.rsl loggin. References: <20080212200324.2256.qmail@sourceware.org> <47B2102D.2030804@redhat.com> <47B2C3D7.7080702@redhat.com> In-Reply-To: <47B2C3D7.7080702@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254 X-IsSubscribed: yes Mailing-List: contact frysk-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: frysk-owner@sourceware.org X-SW-Source: 2008-q1/txt/msg00067.txt.bz2 Phil Muldoon wrote: > Andrew Cagney wrote: >> Phil, >> >> There's a less leaky way to write this (if a specific sequence is >> missing in Log, just add it). > > Ok on the adding part, this will not work. Will add later: > > finest.log(this, > "peek'ed() 0x", ((long) (buffer[0] & 0xff)), > " from address 0x", address, " offset 0x", > offset, > " from file: " , metaLine.name); > > gets: > > gcj -C -fsource=1.4 -d classes -g -O -g -classpath > ../../frysk/frysk-core:.:../frysk-sys/frysk-sys.jar:../frysk-imports/jline.jar:../frysk-imports/antlr.jar:../frysk-imports/junit.jar:../frysk-imports/getopt.jar:../frysk-imports/jdom.jar:../frysk-imports/cdtparser.jar > -Wextraneous-semicolon \ > @./files-java.list \ > 2>&1 | tee frysk-core.log > ../../frysk/frysk-core/frysk/proc/dead/CorefileByteBuffer.java:128: > error: The method log(Object, String, Object, String, long, String, > long, String, int, String) in the type Log is not applicable for the > arguments (CorefileByteBuffer, String, long, String, long, String, > long, String, String) > finest.log(this, Ah, given: (CorefileByteBuffer, String, long, String, long, String, long, String, String) you'll want to add a method like: public void log(Object self, String p1, long p2, String p3, long p4, String p5, Object p6) { if (!loggging) return; prefix(self); print(p1); print(p2); print(p3); print(p4); print(p5); print(p6); suffix(); } to the growing list; they get added on-demand :-). Notice the general form. The parameters alternate between String and Object / int / long / ... . > But what I really want is a hex string, converted by long. I do not > want to convert every single peek() call from decimal to hex in my > head. I guess I could do, Object, String, String, String, String ... > and convert each Long in the log call, but the end log result would be > just as messy as concating strings together. Right; that is why a "long" parameter is always printed in hex, and an integer parameter in decimal. Hence, instead of: "address 0x" + Long.toHexString(address) + " ...." (which allocates at least two objects - Integer.toHexString() creates a String and "+" causes a StringBuffer to be created) try the simpler: "address", address, "..." It will most likely print what you want. If you've an integer and want it in hex; cast it to a long vis: "length", (long)length Andrew