none
MessageTracking Properties in send Port Biztalk 2013 R2 RRS feed

  • Question

  • Hi,

    I need to track the time and content of messages coming in and going out of Biztalk. I am trying to set property in Send Port Filter as

    MessageTracking.AdapterReceiveBeginTime == System.DateTime

    But it is throwing error. Can any one please suggest what is the value needs to be set for above property.

    Thanks,

    ChanderDP

    Monday, March 27, 2017 7:06 AM

Answers

All replies

  • Hi Chander,

    As far as I Know, you cant Track the Properties by Using Filters on Send Port.  Filters are used to create Subscriptions or Receive the Message from Receive port or Orchestration when it is true.

    If you want to have Tracking with you messages going in and out of BizTalk then you can Implement BAM. You can Refer below Article

    https://www.codeproject.com/Articles/868640/BizTalks-Business-Activity-Monitoring-BAM

    Thanks,

    Sujith.


    Sujith

    Monday, March 27, 2017 7:16 AM
  • Hi ChanderDP,

    There are few ways to do this,

    You can enable the message tracking on the SendPorts, Receive Ports, Orchestration and track the message context and

    message bodies. To enable tracking refer  Configuring Tracking Using the BizTalk Server Administration Console 

    Another elagent way to handle this is to use the the Business Acitvity Monitoring which is made for this purpose only.

    To get started with the concept of BAM, refer below articles

    Using Business Activity Monitoring

    Business Activity Monitoring

    BizTalk Server: Business Activity Monitoring (BAM) Survival Guide

    PS: what you are trying to do with 

    MessageTracking.AdapterReceiveBeginTime == System.DateTime

    will cause the send port to subscribe to message which has the value of AdapterReceiveBeginTime value equal to the System.DateTime

    Regards,


    Mandar Dharmadhikari

    Monday, March 27, 2017 7:39 AM
    Moderator
  • Thanks every one for the precious inputs.

    I have enabled tracking in all ports, created seperate host instance for tracking. Enabled SQL jobs. 

    In which table do I need to see the logs in SQL Server BiztalkDTADB?

    Regards,

    ChanderDP

    Monday, March 27, 2017 8:59 AM
  • Hi ChanderDp,

    You actually do not need to visit the tables in the Biztalk Databases. IN Order to track messages in Biztalk, Please do the following

    1) Open Biztalk Admin Console

    2) Select ypur Biztalk Group where you wish to see the message details

    3) IN The middle Pane, Select New QUery

    4) Create a new Query by Selecting the Tracked Service Instances in the THird column of Search For row..

    When You run this query you will get the details of the tracked messages..

    Regards


    Mandar Dharmadhikari

    Monday, March 27, 2017 9:23 AM
    Moderator
  • Hi Mandar,

    I am aware of the traditional tracking in console. I need entire request message, dateTime coming and going out of biztalk.

    Thanks,

    ChanderDP

    Monday, March 27, 2017 10:27 AM
  • HI ChanderDp,

    As soon as You click on the tracked instance, you can select to see the tracked messages instances to see the message details related to that tracked instance, if you have enabled the message body as well as the context properties, you will be able to see them in the the show tracked message instances for the highlighted message.

    Regards,


    Mandar Dharmadhikari

    Monday, March 27, 2017 10:44 AM
    Moderator
  • Hi ChanderDp,

    AS Mandar said, You Don't need the Tables to get the Properties. You can go to Tracked message Instances and See it.

    IF you want the Body as well Just Right Click on it and Save to File. You will have your xml too.

    Thanks,

    Sujith.


    Sujith

    Monday, March 27, 2017 11:53 AM
  • Sujith/Mandar,

    I am in different situation where my client is stress testing the applications and they need all the requests which are coming in to Biztalk. In this case I cannot right click and manually save in console. I need an auotmated process which logs all the files.

    Thanks!

    Monday, March 27, 2017 12:10 PM
  • Hi Mandar,

    I am aware of the traditional tracking in console. I need entire request message, dateTime coming and going out of biztalk.

    Thanks,

    ChanderDP

    Hi

    You can also programmatically extract a message body from the BizTalk tracking database instead of manual effort.

    Refer: http://btsguru.blogspot.co.uk/2011/08/3-ways-of-programmatically-extracting.html

    https://www.connected-thoughts.com/2008/04/02/3-ways-of-programatically-extracting-a-message-body-from-the-biztalk-tracking-database/


    Rachit Sikroria (Microsoft Azure MVP)


    Monday, March 27, 2017 12:11 PM
    Moderator
  • HOLD ON!

    @ChanderDP, can you describe in general terms what you're trying to accomplish from a business or dev cycle perspective?  Meaning without asking about specific BizTalk features.

    Once concern, if they are stress testing, you definitely not be tracking everything.

    Monday, March 27, 2017 12:18 PM
    Moderator
  • What files do you need? All the input messages during the stress test?

    In that case create a FILE adapter SendPort with FILTER on BTS.ReceivePortName = <Name of ReceivePort from which you are receiving>.

    It will dump all input files in the path that you specify in the FILE SendPort.

    In case you want to save all messages with their timestamps, you can leverage BAM (you have to design the BAM Activity first)-

    https://social.msdn.microsoft.com/Forums/en-US/236d30ab-8c27-4c51-af3d-e8fcbbe193a9/capture-whole-xml-message-using-bam?forum=biztalkgeneral


    Thanks Arindam

    Monday, March 27, 2017 6:43 PM
    Moderator