Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #12413
| From | Novice <novice@example..com> |
|---|---|
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: Additional logging questions |
| Date | 2012-02-27 04:12 +0000 |
| Organization | Your Company |
| Message-ID | <XnsA005ED51BFCF7jpnasty@94.75.214.39> (permalink) |
| References | <XnsA005D74257FB0jpnasty@94.75.214.39> <4f4ae583$0$281$14726298@news.sunsite.dk> |
Arne Vajhøj <arne@vajhoej.dk> wrote in news:4f4ae583$0$281$14726298@news.sunsite.dk: > On 2/26/2012 9:02 PM, Novice wrote: >> I _think_ these supplementary questions will be a lot less of a >> struggle than the others in "Aspect questions" thread. That thread is >> getting on the long side so I thought I'd ask these in a new thread. >> >> Basically, I'm looking for advice on what should always be logged by >> every class. I understand now that every class is going to have its >> own logger but what should be logged? >> >> Or to put it another way, are there cases where a class won't log at >> all? >> >> I'm thinking of things like Enums. If I have an enum that lists the >> days of the week, there's not much to go wrong there and I'm not >> likely to throw exceptions or even have a try/catch block. So should >> it just be left so that it isn't logging at all? Or should there be >> some standard bare-minimum sort of logging, like an entering() and >> existing(), even if nothing else of interest goes on? >> >> What about holder classes? I'm not sure if I'm using the terminology >> correctly but I'm thinking of a class where you simply store related >> bits of data, like a Name class whose constructor insists on a first >> name and a last name and then supplies getters and setters so that >> another class can ask for just the first name or just the last name? >> (Let's pretend that everyone has exactly one given name and one >> surname, no exceptions, just to keep this simple). This could be an >> awfully barebones class if it only had a two line constructor and one >> line getters and setters. Should it log anyway? >> >> My feeling is that Lew would say NOT to log unless there was a good >> reason to log and then cite several good reasons to log. I'm not sure >> if something like an enum or a holder class (if I've used the term >> correctly) would EVER justify logging though. >> >> I may have completely misread Lew and, if so, I'm sorry. Maybe this >> is another premature leap.... >> >> Some of the rest of you may differ dramatically on what should be >> logged and when it is okay not to bother. I hope some of you can >> share those thoughts with me. >> >> Basically, I'm just about ready to start getting loggers for each and >> every class in the project I'm working on now (with plans to do the >> same in every project as I create it or return to it). But I don't >> want to do too much logging either..... > > You should log the information you expect potentially could be > useful when troubleshooting a problem. > > And as a general rule, then if any doubt then log, because it > is usually better to have too much logging than too little > logging. > > I do not see any need for logging in an enum or in a pure > data class (holder class). > > But please add a toString method in your data class, so > when the class with real login in that uses the data class > can log it and you get something useful in the log about the > data. > Sorry, I'm not following you. Are you saying that the toString() method needs to be there to turn things like references into meaningful information? I know that a reference to something like a JFrame is not going to be very meaningful and would rather display the name given the JFrame via setName(). Or are you saying something quite different? -- Novice
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar
Additional logging questions Novice <novice@example..com> - 2012-02-27 02:02 +0000
Re: Additional logging questions Arne Vajhøj <arne@vajhoej.dk> - 2012-02-26 21:08 -0500
Re: Additional logging questions Novice <novice@example..com> - 2012-02-27 04:12 +0000
Re: Additional logging questions Lew <noone@lewscanon.com> - 2012-02-26 22:13 -0800
Re: Additional logging questions Novice <novice@example..com> - 2012-02-27 19:14 +0000
Re: Additional logging questions Lew <noone@lewscanon.com> - 2012-02-27 12:32 -0800
Re: Additional logging questions Lew <noone@lewscanon.com> - 2012-02-27 13:06 -0800
Re: Additional logging questions Novice <novice@example..com> - 2012-02-28 01:48 +0000
Re: Additional logging questions Arne Vajhøj <arne@vajhoej.dk> - 2012-02-27 20:57 -0500
Re: Additional logging questions Lew <noone@lewscanon.com> - 2012-02-27 23:51 -0800
Re: Additional logging questions Arne Vajhøj <arne@vajhoej.dk> - 2012-02-27 20:50 -0500
Re: Additional logging questions Lew <noone@lewscanon.com> - 2012-02-27 23:57 -0800
Re: Additional logging questions Arne Vajhøj <arne@vajhoej.dk> - 2012-02-27 20:45 -0500
Re: Additional logging questions Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-02-28 01:52 -0600
Re: Additional logging questions Arne Vajhøj <arne@vajhoej.dk> - 2012-02-28 17:20 -0500
Re: Additional logging questions Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-02-28 20:26 -0400
Re: Additional logging questions Arne Vajhøj <arne@vajhoej.dk> - 2012-02-27 20:34 -0500
Re: Additional logging questions Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-02-27 12:36 -0800
Re: Additional logging questions Novice <novice@example..com> - 2012-02-28 01:43 +0000
csiph-web