Is it possible to get timestamps in the ODBC trace file for UNIX systems?

Document ID : KB000054489
Last Modified Date : 14/02/2018
Show Technical Document Details

Description:

Customer wants to match information from SiteMinder Policy Server Log (smps.log), profiler and ODBC trace, however the ODBC trace doesn't show any timestamps and it's very difficult to match the information up.

Solution:

In order to get timestamps in the ODBC trace file the DataDirect Driver should be version 5.3 and the operating system should be on UNIX.

A new attribute is available in 5.3 SP1 for the trace library on UNIX/Linux. The new attribute is TraceOptions and has the following values:

0   -   Use standard ODBC tracing (the initial default).
1   -   Print the current timestamp, parent process id, process id, and thread id for all ODBC functions to the output file.

For example, the [ODBC] section of the system_odbc.ini file might include:

<- Begin
 
[ODBC]
Trace=1
TraceOpts=1
TraceFile=/space/logs/odbctrace.out
TraceDll=/opt/netegrity/siteminder/odbc/lib/odbctrac.so
InstallDir=/opt/netegrity/siteminder/odbc
 
-> End
 
Example of output:
 
<- Begin
 
2008-10-24 11:25:25.933464 ppid=7323:pid=7325:c         ENTER SQLSetEnvAttr
 
2008-10-24 11:25:25.933464 ppid=7323:pid=7325:c         SQLHENV             0x0044fc98
 
2008-10-24 11:25:25.933464 ppid=7323:pid=7325:c         SQLINTEGER  200 <SQL_ATTR_ODBC_VERSION->
 
2008-10-24 11:25:25.933464 ppid=7323:pid=7325:c         SQLPOINTER   3
 
2008-10-24 11:25:25.933464 ppid=7323:pid=7325:c         SQLINTEGER   0
 
-> End