By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
437,851 Members | 1,729 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 437,851 IT Pros & Developers. It's quick & easy.

DB2 Event Monitor puts "?" for all the values

P: n/a
Is there any way in DB2 to get the exact command.
I have an event monitor I created for statments, and all the statment
values are filled with a question mark.
I was using this at another site (different application too) and the
values were filled in properly, but here it is not.
This is DB2 8.2 (8.1fp6) on AIX 5.3ml02

create event monitor LCACAPTURE for statements write to file
'/db2adm/mon' NONBLOCKED REPLACE ON NODE 1 LOCAL

update monitor switches using statement on

set event monitor lcacapture state=1

run my application

set event monitor lcacapture state=0

then from command line

db2evmon -path ./mon > montxt/1.txt

And in 1.txt I have things like

Text : INSERT INTO "EV5R14"."VPMPRODUCTCLASS" ("TYPE" , "OID" ,
"DATADOMAIN" , "CPROPERTIES" , "VAGGREGATED" , "CTIMESTAMP" , "CCREATED"
, "CMODIFIED" , "VEXTERNALID" , "VEXPOSED" , "VUSER" , "VORGANIZATION" ,
"VPROJECT0011" , "VHISTOID" , "VPREVIOUS" , "VPREVIOUS$" , "VPREVIOUS#"
, "V508APPDOMAINE" , "V508APPTYPE" , "VID" , "VNAME" , "VDESCRIPTION" ,
"VSTATUS" , "V506GRAPH" , "VLEVEL" , "VPC" , "VPRC" , "LASTUPDATEDATE" ,
"LASTMODIFIERID" , "LOCKTIMESTAMP" , "OWNERSITE" , "LOCKSTATUS" ,
"LOCKUSER") VALUES ( ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? ,
? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? ,
? , ? )
Anyway to capture the actual values here?

Thanks!

Ken
Nov 12 '05 #1
Share this Question
Share on Google+
4 Replies


P: n/a
yoyo wrote:
Is there any way in DB2 to get the exact command.
I have an event monitor I created for statments, and all the statment
values are filled with a question mark.
I was using this at another site (different application too) and the
values were filled in properly, but here it is not.
This is DB2 8.2 (8.1fp6) on AIX 5.3ml02

create event monitor LCACAPTURE for statements write to file
'/db2adm/mon' NONBLOCKED REPLACE ON NODE 1 LOCAL

update monitor switches using statement on

set event monitor lcacapture state=1

run my application

set event monitor lcacapture state=0

then from command line

db2evmon -path ./mon > montxt/1.txt

And in 1.txt I have things like

Text : INSERT INTO "EV5R14"."VPMPRODUCTCLASS" ("TYPE" , "OID" ,
"DATADOMAIN" , "CPROPERTIES" , "VAGGREGATED" , "CTIMESTAMP" , "CCREATED"
, "CMODIFIED" , "VEXTERNALID" , "VEXPOSED" , "VUSER" , "VORGANIZATION" ,
"VPROJECT0011" , "VHISTOID" , "VPREVIOUS" , "VPREVIOUS$" , "VPREVIOUS#"
, "V508APPDOMAINE" , "V508APPTYPE" , "VID" , "VNAME" , "VDESCRIPTION" ,
"VSTATUS" , "V506GRAPH" , "VLEVEL" , "VPC" , "VPRC" , "LASTUPDATEDATE" ,
"LASTMODIFIERID" , "LOCKTIMESTAMP" , "OWNERSITE" , "LOCKSTATUS" ,
"LOCKUSER") VALUES ( ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? ,
? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? ,
? , ? )

The venet monitor logs what the DB2 server received. It may be that your
cleinet (CLI) is stripping out the constants to re-use the package cache.
There is a way via db2trc to capture the statement as well as the bind
variables but it's a tad heavy for my taste.
If you want to intercept a complete workload I'm told the "Rational
Performance Tool" does a good job by intercepting the http-connection.
"Load Runner" is another (3. party) tool that can do the job.

Out of curiousity, may I ask what you are trying to achieve (in the
grand scheme, I mean). Is your purpose load capture, debugging, ... ?

Cheers
Serge
--
Serge Rielau
DB2 SQL Compiler Development
IBM Toronto Lab
Nov 12 '05 #2

P: n/a
Serge Rielau wrote:
yoyo wrote:
Is there any way in DB2 to get the exact command.
I have an event monitor I created for statments, and all the statment
values are filled with a question mark.
I was using this at another site (different application too) and the
values were filled in properly, but here it is not.
This is DB2 8.2 (8.1fp6) on AIX 5.3ml02

create event monitor LCACAPTURE for statements write to file
'/db2adm/mon' NONBLOCKED REPLACE ON NODE 1 LOCAL

update monitor switches using statement on

set event monitor lcacapture state=1

run my application

set event monitor lcacapture state=0

then from command line

db2evmon -path ./mon > montxt/1.txt

And in 1.txt I have things like

Text : INSERT INTO "EV5R14"."VPMPRODUCTCLASS" ("TYPE" , "OID" ,
"DATADOMAIN" , "CPROPERTIES" , "VAGGREGATED" , "CTIMESTAMP" ,
"CCREATED" , "CMODIFIED" , "VEXTERNALID" , "VEXPOSED" , "VUSER" ,
"VORGANIZATION" , "VPROJECT0011" , "VHISTOID" , "VPREVIOUS" ,
"VPREVIOUS$" , "VPREVIOUS#" , "V508APPDOMAINE" , "V508APPTYPE" , "VID"
, "VNAME" , "VDESCRIPTION" , "VSTATUS" , "V506GRAPH" , "VLEVEL" ,
"VPC" , "VPRC" , "LASTUPDATEDATE" , "LASTMODIFIERID" , "LOCKTIMESTAMP"
, "OWNERSITE" , "LOCKSTATUS" , "LOCKUSER") VALUES ( ? , ? , ? , ? , ?
, ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? ,
? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? )


The venet monitor logs what the DB2 server received. It may be that your
cleinet (CLI) is stripping out the constants to re-use the package cache.
There is a way via db2trc to capture the statement as well as the bind
variables but it's a tad heavy for my taste.
If you want to intercept a complete workload I'm told the "Rational
Performance Tool" does a good job by intercepting the http-connection.
"Load Runner" is another (3. party) tool that can do the job.

Out of curiousity, may I ask what you are trying to achieve (in the
grand scheme, I mean). Is your purpose load capture, debugging, ... ?

Cheers
Serge


I developing a transfer tool from one PLM application to another, and
I'm kinda of reverse engineering the new PLM tool to find out where it's
writing things when you do certain things in the application.
I can of course go retreive the inserted values from the table and fill
in, but that's a little labour intensive, I was hoping to just see the
full statment in the event monitor.
This is just a test database on my machine with me as the only one using
it right now.
Hmmmm..db2trc...I'll check into that one..what do you mean by heavy?

Thanks

Ken
Nov 12 '05 #3

P: n/a
If this is testing only for the moment, you might want to look at the output
of your db2audit command.
Since you can audit in context, it would audit an execute immediate which
would carry the values instead of the ? (or so I think).
This would be useful only if you do not need the values immediately as you
have to stop your auditor and then format the output log to be parsed.
HTH, Pierre.

--
Pierre Saint-Jacques
SES Consultants Inc.
514-737-4515
"yoyo" <yo**@ma.com> a écrit dans le message de news:
s4********************@centurytel.net...
Serge Rielau wrote:
yoyo wrote:
Is there any way in DB2 to get the exact command.
I have an event monitor I created for statments, and all the statment
values are filled with a question mark.
I was using this at another site (different application too) and the
values were filled in properly, but here it is not.
This is DB2 8.2 (8.1fp6) on AIX 5.3ml02

create event monitor LCACAPTURE for statements write to file
'/db2adm/mon' NONBLOCKED REPLACE ON NODE 1 LOCAL

update monitor switches using statement on

set event monitor lcacapture state=1

run my application

set event monitor lcacapture state=0

then from command line

db2evmon -path ./mon > montxt/1.txt

And in 1.txt I have things like

Text : INSERT INTO "EV5R14"."VPMPRODUCTCLASS" ("TYPE" , "OID" ,
"DATADOMAIN" , "CPROPERTIES" , "VAGGREGATED" , "CTIMESTAMP" , "CCREATED"
, "CMODIFIED" , "VEXTERNALID" , "VEXPOSED" , "VUSER" , "VORGANIZATION" ,
"VPROJECT0011" , "VHISTOID" , "VPREVIOUS" , "VPREVIOUS$" , "VPREVIOUS#"
, "V508APPDOMAINE" , "V508APPTYPE" , "VID" , "VNAME" , "VDESCRIPTION" ,
"VSTATUS" , "V506GRAPH" , "VLEVEL" , "VPC" , "VPRC" , "LASTUPDATEDATE" ,
"LASTMODIFIERID" , "LOCKTIMESTAMP" , "OWNERSITE" , "LOCKSTATUS" ,
"LOCKUSER") VALUES ( ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? ,
? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? ,
? , ? )


The venet monitor logs what the DB2 server received. It may be that your
cleinet (CLI) is stripping out the constants to re-use the package cache.
There is a way via db2trc to capture the statement as well as the bind
variables but it's a tad heavy for my taste.
If you want to intercept a complete workload I'm told the "Rational
Performance Tool" does a good job by intercepting the http-connection.
"Load Runner" is another (3. party) tool that can do the job.

Out of curiousity, may I ask what you are trying to achieve (in the grand
scheme, I mean). Is your purpose load capture, debugging, ... ?

Cheers
Serge


I developing a transfer tool from one PLM application to another, and I'm
kinda of reverse engineering the new PLM tool to find out where it's
writing things when you do certain things in the application.
I can of course go retreive the inserted values from the table and fill
in, but that's a little labour intensive, I was hoping to just see the
full statment in the event monitor.
This is just a test database on my machine with me as the only one using
it right now.
Hmmmm..db2trc...I'll check into that one..what do you mean by heavy?

Thanks

Ken


Nov 12 '05 #4

P: n/a
yoyo wrote:
Hmmmm..db2trc...I'll check into that one..what do you mean by heavy?

db2trc is very verbose. Even including a filter in my experience the
dump still chews up some 20k per statement.
Bounce me an email for more info.

Cheers
Serge
--
Serge Rielau
DB2 SQL Compiler Development
IBM Toronto Lab
Nov 12 '05 #5

This discussion thread is closed

Replies have been disabled for this discussion.