Re: [ADMIN] Monitoring error messages

2006-08-17 Thread Scott Marlowe
On Thu, 2006-08-17 at 08:33, [EMAIL PROTECTED] wrote:
> I am testing the monitoring of the postgresql 8.1.4 - I have found
> that I would like to suppress some things from the log
> 
> For example if I type some random rubbish into the database instead of
> select…. I get an error message logged into the server logfile like:-
> 
> 2006-08-17 14:19:00.965 BST 10109 # ERROR:  syntax error at or near
> "kshdfkjh" at character 1
> 2006-08-17 14:19:00.965 BST 10109 # STATEMENT:  kshdfkjh;
> 
> More importantly I have deleted a file from the database tables and
> when I try to query data in the file I get the error:-
> 
> 2006-08-17 14:14:30.922 BST 10085 # ERROR:  could not open relation
> 1663/16384/16385: No such file or directory
> 2006-08-17 14:14:30.922 BST 10085 # STATEMENT:  select * from
> rs_vacuum;
> 
> These are both logged as ERROR: which is easy to check for with
> automatic monitoring. However I wouldn't want to be called out to fix
> a non-existent error where someone has typed in some nonsense. Is it
> easy to suppress the syntax errors so that the real database errors
> are obvious?

I've had the same issue in the past.  A simple fix is to pipe the output
of your grep into a series of "grep -v" statements.

For instance, this line is how we used to check for errors in our
production logs:

b=`grep -c PANIC $e`;

Just add the grep -v in there:

b=`grep -c PANIC $e|grep -vi syntax`;

and now syntax errors aren't reported.

---(end of broadcast)---
TIP 4: Have you searched our list archives?

   http://archives.postgresql.org


Re: [ADMIN] Monitoring error messages

2006-08-17 Thread Peter Eisentraut
[EMAIL PROTECTED] wrote:
> These are both logged as ERROR: which is easy to check for with
> automatic monitoring. However I wouldn't want to be called out to fix
> a non-existent error where someone has typed in some nonsense. Is it
> easy to suppress the syntax errors so that the real database errors
> are obvious?

I think the short answer is "No", unless you do your own 
post-processing.  But note that syntax errors may also point to 
mistakes in your application code.

If you want to filter out randomness that occurs during interactive 
sessions, I'd rather attack the problem there.  You could, for example, 
alter the logging settings in your .psqlrc file.

-- 
Peter Eisentraut
http://developer.postgresql.org/~petere/

---(end of broadcast)---
TIP 6: explain analyze is your friend