missing alert.log mystery (it's not what you think)

  • From: Charles Schultz <sacrophyte@xxxxxxxxx>
  • To: ORACLE-L <oracle-l@xxxxxxxxxxxxx>
  • Date: Sun, 15 May 2011 08:22:08 -0500

Good day, listers,

Environment: Oracle EE on Solaris 10

I know, the first thing that comes to mind "Oh yeah, the
binary_dump_destination is overridden by diag_destination in 11g". That's
not the problem here.
The next thing you think "Well, it could be an orphaned inode (ie, deleting
a file that is open by another process)". That is also not the problem.

We have an alert.log that was last updated by the database on May 6th.
Strangely enough, the log.xml in the alert directory of the diag destination
is being updated normally, it is just the plain text alert.log in the trace
directory that is not updated. We have bounced the database, changed the
diag_destination parameter and I have even grepped all the file descriptors
in /proc/*/fd for traces of a possibly opened alert.log - nothing, the
alert.log is still not being updated. I tried dbms_system.ksdwrt to force a
write to the alert.log - again, the log.xml is updated, the plain text is
not. My last resort was to file a case with Oracle Support, and they are
having me redo everything I have already done, even though I stated up front
that I did all these things already (see above).

So now I have a mystery. I could pull out the Microsoft solution and bounce
the entire host. But the curiosity inside me wants to figure out what is
going on before I do that. What could possibly explain why the alert.log is
not being written to? It looks, smells and feels like there is an underscore
parameter that prevents writing to the alert.log. But Oracle Support is
telling me no such parameter exists (and I have not found one).

Any thoughts from this collective of intelligence? :)

Charles Schultz

Other related posts: