I am trying to implement dynamic message logging.
I have a database table that stores below.
SERVICE_NAME | COL1 | COL2
GETCUSTOMER InputRoot.XMLNSC.LOGMSG.CUST.NAME InputRoot.XMLNSC.LOGMSG.CUST.SSN
During runtime, I will select the appropriate message element to be logged based on service name from the table above. This values should refer to the actual element in the message tree.
Based on the input XML. I was expecting the actual values to be stored.
Instead, BROKER will store the values as is - InputRoot.XMLNSC.LOGMSG.CUST.NAME and InputRoot.XMLNSC.LOGMSG.CUST.SSN to the LOG_TBL table.
I've tried various ways but to no avail.
1) APPROACH 1
INSERT INTO Database.LOG_TBL(C1, C2)
2) APPROACH 2
DECLARE refcol1 REFERENCE TO Environment.Variables.CONFIG.COL1;
DECLARE refcol2 REFERENCE TO Environment.Variables.CONFIG.COL2;
INSERT INTO Database.LOG_TBL(C1, C2) VALUES(refcol1, refcol2)
Could anyone shed some light on the above.
Pinned topic Dynamic message logging
Answered question This question has been answered.
Unanswered question This question has not been answered yet.
Updated on 2012-10-12T10:24:40Z at 2012-10-12T10:24:40Z by email@example.com
firstname.lastname@example.org 120000CJSH515 Posts
Re: Dynamic message logging2012-10-12T10:24:40ZThis is the accepted answer. This is the accepted answer.Not sure what you're doing wrong. The best way to diagnose things like this is
- add a Trace node into the flow
- take a debug-level user trace using mqsichangetrace, mqsireadlog and mqsiformatlog ( in that order )
- read the resulting text file carefully to see what your flow has been doing. Compare that with what you expected your flow to do.
- Change flow and re-test
- Repeat until flow does what you need.