Is it possible to write some code to intercept the process of adding Watchdog entries and filter them before adding to the log? Or is there a module that allows for watchdog filtering before adding to log? (I searched but nothing found) This would be useful if there are tons of well-known messages (like page not found from the same referrer or the same IP) that obfuscate the log.
hook_watchdog doesn't provide a return value which could block the insertion of the log entry in the database.
Note though that the responsible module for inserting the entry in the database is
dblog. You could disable that and write your own implementation of it, although you'd have to replicate lots of functionality.
Another idea is to have a frequent cron job deleting the relevant log entries from the database table.
Not sure if it's still relevant, but I've made a module where you can control logging per type per level: http://drupal.org/project/watchdog_filtering