[Zope-dev] Logging of ConflictError

Chris Withers chris at simplistix.co.uk
Fri Dec 2 09:16:16 EST 2005


Florent Guillaume wrote:
> It doesn't really matter, zLOG has a compatibility layer that ends up  
> doing the same thing.

python's logging module has a cleaner, nicer syntax.

> Please no. Don't put anything at INFO. A conflict error is either  
> something normal that should be at level BLATHER or below, or an  ERROR 
> that a sysadmin wants to see logged as such. 

Not so. If I'm getting 1,000 resolved conflict errors a day, that can be 
a big performance hit, and there are those of us who have hard 
performance targets to meet ;-) Turning on debug logging is, in itself, 
a performance hit, so I don't want to have to do that on a production 
service where I want to observe the number of conflict errors occurring 
over a long period of time, like, say, a month.

> INFO sucks for  recurring 
> stuff like that that in addition contain the word "error"  which it 
> isn't.

Well, that's a problem with the exception naming, and I agree with you, 
but I don't know how hard that is to change.

> I can't count the number of sysadmin/customers/ hosting providers 
> that freak out when something like that appears in  the log and call us 
> and we have to explain that yes, it's not logical  but...

Stupid sysadmins can't be helped. It's being logged at INFO, not ERROR 
or WARNING. I agree, the exception should be renamed to just Conflict, 
but that's a totally different discussion.

> Well, I told you on the list that I was already working on this. You  
> didn't pay attention I guess.

You made a vague comment on the 21st Nov.
I made a definite commitment on the 24th Nov.
On the 25th, you said you were working on it in response to my question.
Now, by yesterday, 6 days later, nothing had happened, so I fixed this 
and did some other work with stupid error messages along the way.
Then, suddenly, yesterday you commit. *sigh*

Anyway, I'm going to check in the changes because they're materially the 
same but the code is cleaner.

Whether resolved conflict errors are logged at INFO or DEBUG is a 
seperate discussion and one which I'd like to see a lot more comments on 
than have been seen so far. The +1s from people yesterday were about the 
general merging of the fix to 2.8, which I would also +1 to ;-)

However, changing from INFO to DEBUG is a change in functionality which 
_I_ strenuously object to. People _need_ to be aware that they are 
seeing conflict errors, even if they are resolved. I, for one, really 
really want to be able to look in the event log and see if _any_ 
conflict errors are occurring, resolved or not, and keep track of the 
number of them so I can spot any performance hotspots before they become 
critical. FWIW, the stuff I log at INFO makes it clearer as to which 
conflicts are resolved or not, so your sysadmin types should be happier.

What do people other than Florent, whose view I think we know, feel 
about this?

cheers,

Chris

-- 
Simplistix - Content Management, Zope & Python Consulting
            - http://www.simplistix.co.uk


More information about the Zope-Dev mailing list