ablog

不器用で落着きのない技術者のメモ

Oracle Netトレース・ファイルを出力する

  • Oracle Database の sqlnet.ora にトレース・レベルを設定する
$ cat /home/oracle/app/oracle/product/11.2.0/dbhome_2/network/admin/sqlnet.ora 
TRACE_LEVEL_SERVER=16
  • サーバープロセスの PID を確認する。
$ ps auxw|grep [o]racleorcl
oracle    3204  0.1  6.6 621024 60600 ?        Ss   07:56   0:01 oracleorcl (LOCAL=NO)
  • トレース・ファイルのパスを確認する。
$ ls -l /proc/3204/fd
total 0
lr-x------ 1 oracle oracle 64 Apr 20 08:08 0 -> /dev/null
l-wx------ 1 oracle oracle 64 Apr 20 08:08 1 -> /dev/null
lr-x------ 1 oracle oracle 64 Apr 20 08:08 10 -> /home/oracle/app/oracle/product/11.2.0/dbhome_2/rdbms/mesg/oraja.msb
lr-x------ 1 oracle oracle 64 Apr 20 08:08 11 -> /home/oracle/app/oracle/product/11.2.0/dbhome_2/rdbms/mesg/oraus.msb
lrwx------ 1 oracle oracle 64 Apr 20 08:08 14 -> socket:[8341]
l-wx------ 1 oracle oracle 64 Apr 20 08:08 2 -> /dev/null
lrwx------ 1 oracle oracle 64 Apr 20 08:08 256 -> /home/oracle/app/oracle/oradata/orcl/system01.dbf
lrwx------ 1 oracle oracle 64 Apr 20 08:08 257 -> /home/oracle/app/oracle/oradata/orcl/sysaux01.dbf
lr-x------ 1 oracle oracle 64 Apr 20 08:08 3 -> /dev/null
lr-x------ 1 oracle oracle 64 Apr 20 08:08 4 -> /dev/null
lr-x------ 1 oracle oracle 64 Apr 20 08:08 5 -> /home/oracle/app/oracle/product/11.2.0/dbhome_2/rdbms/mesg/oraus.msb
lr-x------ 1 oracle oracle 64 Apr 20 08:08 6 -> /proc/3204/fd
l-wx------ 1 oracle oracle 64 Apr 20 08:08 7 -> /home/oracle/app/oracle/diag/rdbms/orcl2/orcl/trace/orcl_ora_3204.trc
l-wx------ 1 oracle oracle 64 Apr 20 08:08 8 -> /home/oracle/app/oracle/diag/rdbms/orcl2/orcl/trace/orcl_ora_3204.trm
lr-x------ 1 oracle oracle 64 Apr 20 08:08 9 -> /dev/zero
  • トレース・ファイルの内容を確認する。
$ grep sdu /home/oracle/app/oracle/diag/rdbms/orcl2/orcl/trace/orcl_ora_3204.trc
2013-04-20 07:56:54.369683 : nsopen:lcl[0]=0xf4ffe9ff, lcl[1]=0x0, gbl[0]=0x7ebf, gbl[1]=0x0, tdu=65535, sdu=8192
2013-04-20 07:56:54.371471 : nsopen:lcl[0]=0xf4ffe9ff, lcl[1]=0x10000000, gbl[0]=0x7eff, gbl[1]=0x41, tdu=65535, sdu=8192
2013-04-20 07:56:54.373293 : nsconneg:vsn=308, lov=300, opt=0xc01, sdu=2048, tdu=32767, ntc=0x4f98
2013-04-20 07:56:54.373503 : nsconneg:vsn=308, gbl=0xc01, sdu=2048, tdu=32767

おまけ

  • Oracle SQL Developer の[接続]のプロパティで[接続タイプ]で「拡張」を選択して、カスタムJDBC URL に以下を入力する。
jdbc:oracle:thin:@(DESCRIPTION=(SDU=7300)(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL2)))
  • 接続してトレース・ファイルの内容を確認してみる。
$ grep sdu /home/oracle/app/oracle/diag/rdbms/orcl2/orcl/trace/orcl_ora_3736.trc
2013-04-20 08:54:48.067327 : nsopen:lcl[0]=0xf4ffe9ff, lcl[1]=0x0, gbl[0]=0x7ebf, gbl[1]=0x0, tdu=65535, sdu=8192
2013-04-20 08:54:48.069332 : nsopen:lcl[0]=0xf4ffe9ff, lcl[1]=0x10000000, gbl[0]=0x7eff, gbl[1]=0x41, tdu=65535, sdu=8192
2013-04-20 08:54:48.070440 : nsconneg:vsn=308, lov=300, opt=0xc01, sdu=7300, tdu=32767, ntc=0x4f98
2013-04-20 08:54:48.070810 : nsconneg:vsn=308, gbl=0xc01, sdu=7300, tdu=32767