Down the rabbit hole getting sqlnet client trace working



So I've been a 'non' DBA for getting on 2 years now but i still remember some stuff right...?

Or so i thought - so simple request just activate tracing for a client connection as we're trying to debug a problem - no issue i said that's easy - just set some flags in sqlnet.ora and away we go.....

Well it didn't turn out that way.

So to start with i just assumed i would set

trace_level_client=16 (or ADMIN)

and pretty much away you go

that didn't work and pretty much everything i tried after that point didn't work either...

I went through:

1) upper/lower case
2) number/text values
3) 12c vs 11g syntax
4) diag stuff on/off
5) myriad of different parameters
6) explicitly setting TNS_ADMIN
7) relinking oracle

Nothing would work and i was getting into more and more obscure solution territory.....

Then i decided to try this

strace sqlplus user/pass@db

Which revealed this little gem

access("/home/oracle/\r/cli\r_98962.trc", F_OK) = -1 ENOENT (No such file or directory)


where have those control characters come from.....?

lets have a look at the file again - no control characters are apparent when i open the file - however down in the bottom left of the vi window i see this



aargh dos

aargh

So someone at some point copied the file over from windows and it has control characters at the end of every line - previously I'm sure vi showed up the hidden characters but now it is somehow understanding its dos format and hiding them from me.....

if i now just do

dos2unix sqlnet.ora

And then retry everything works!

Sometimes the basic catch you out - always take a step back if you seem to be getting too deep into something - likelihood is you missed something obvious (that isn't always obvious)






Comments

Post a Comment