SlideShare ist ein Scribd-Unternehmen logo
1 von 59
BTUG – BizTalk Tracking
Toon Vanhoutte – Integration Architect
Agenda
Configuration

Best Practices

Tools

Under the hood
Demo

Visualization

2
Demo

Setup
Specify unique reference for messages #search

Specify simulated response times of backend systems #sla

Specify customer and transporter names #inspiration

3
Configuration

4
Configuration
|

Port Tracking Configuration

Only track what’s really required #performance

5
Configuration
|

Pipeline Tracking Configuration

Bug BTS2010 CU2  CU5 #solved #CU6 #kb2728652

6
Configuration
|

Orchestration Tracking Configuration

Avoid Shape start and end
#performance #orchestrationdebug

7
Configuration
|

Property Schema Tracking Configuration

Make context properties searchable #troubleshooting
Global + specific property schema #generic #consistent
8
Configuration
|

Disable Global BizTalk Tracking

9
Under the hood

10
Under the hood
|

BizTalk Database Structure
Host Instance processes message
SQL Agent

11
Under the hood
|

BizTalk Database Structure
Host Instance processes message
SQL Agent

Message stored in MessageBox

12
Under the hood
|

BizTalk Database Structure
Host Instance processes message
SQL Agent

Message stored in MessageBox
TDDS copies events to DTA + BAM

13
Under the hood
|

BizTalk Database Structure
Host Instance processes message
SQL Agent

Message stored in MessageBox
TDDS copies events to DTA + BAM
SQL Agent copies bodies to DTA

14
Under the hood
|

Store messages in MessageBox database
|

Physical runtime message bodies are stored in:
|
|
|
|

Spool
MessageParts
Parts
Fragments

Fragmentation controlled by large message size

15
Under the hood
|

Process messages in MessageBox database
|

Per Host, these tables are created:
|

|

|
|

HostNameQ: Main queue: each host instance polls this queue table
to collect messages that are pending processing
HostNameQ_Suspended: Suspended queue: queue table that
holds supended messages
HostNameQ_Scheduled: Scheduled queue: not used
InstanceStateMessageReferences_Host: State queue: holds list of
messages that have been processed but are required later

Stores only reference to physical message in Spool table
16
Under the hood
|

Store messages in MessageBox database

#probts2006

17
Under the hood
|

Store tracking data in MessageBox database
|

#probts2006

Host Instance serializes data and stores it in the MessageBox
|

Message events:
|
|

|

TrackingData_0_x [x: 0 - 3]
TrackingData_1_x [x: 0 - 3]

Message bodies:
|
|
|
|

Spool
MessageParts
Parts
Fragments
18
Under the hood
|

Copy Events from MessageBox to DTA database
|

Tracked Message Events copied by TDDS Service:
|
|

Tracking Data Decode Service
Runs in each host instance with tracking enabled

Create a dedicated tracking host
19
Under the hood
|

Copy Events from MessageBox to DTA database
BizTalk MessageBox
TrackingData_0_0
TrackingData_0_1
TrackingData_0_2
TrackingData_0_3
TrackingData_1_0
TrackingData_1_1
TrackingData_1_2
TrackingData_1_3

TDDS

BAM Primary Import
Activity_Active
Activity_ActiveRelationships
Activity_Completed
Activity_CompletedRelantionships
Activity_Continuations

BizTalk DTA Database
Dta_MessageInOutEvents
Dta_ServiceInstances
...
20
Under the hood
|

Copy Events from MessageBox to DTA database
BizTalk MessageBox
TrackingData_x_x

TDDS

BAM Primary Import
TDDS_StreamStatus
TDDS_FailedTrackingData
BizTalk DTA Database
TDDS_StreamStatus
TDDS_FailedTrackingData

TDDS_StreamStatus contains last copied sequence n°
TDDS moves events with > sequence n° from TrackingData_x_x to DTA

TDDS_FailedTrackingData contains tracking failures
21
Under the hood
|

Copy Bodies from MessageBox to DTA database
|

Tracked Message Bodies copied by SQL Agent Job:
|
|

TrackedMessages_Copy_BizTalkMsgBoxDb
Scheduled by default each minute (development: 10 seconds)

Monitor the SQL Agent Jobs #SCOM #blog
22
Under the hood
|

Copy Bodies from MessageBox to DTA database
BizTalk MessageBox
Spool
MessageParts
Parts
Fragments

SQL
Agent

BizTalk DTA Database
Tracking_Spoolx
Tracking_Partsx
Tracking_Fragmentsx
[x: 1 - 2]:
Always one online / one offline

23
Under the hood
|

Remove data from MessageBox
|

This is performed by SQL Agent Jobs:
|

MessageBox_Message_ManageRefCountLog_BizTalkMsgBoxDb:
|
|

|

Runs continuously (due to former SQL limitation of 1 min job schedule)
This jobs checks weather a message is still referenced by instances

MessageBox_Message_Cleanup_BizTalkMsgBoxDb
|
|
|

Is disabled (keep it like this)
It’s called from with the infinite loop of the ManageRefCount Job
This job deletes physical messages from MessageBox that have no outstanding
references anymore

24
Under the hood
|

Remove data from DTA
|

|

Enable + Configure the DTA Purge and Archive Job #avoidlargeDTA

Remove data from BAM
|

SQL Agent Job BAM_DM_Activity moves data to BAMArchive
25
Under the hood
|

BizTalkDTADb Database model
|

No foreign keys #performance
|
|

|

Designed for fast insert
Results in slower query

No single chain ID
|

Difficult to reproduce the “route” within BizTalk

26
Under the hood
|

BizTalkDTADb Database model
|

No foreign keys #performance
|
|

|

Designed for fast insert
Results in slower query

No single chain ID
|

Difficult to reproduce the route within BizTalk

27
Under the hood
|

Create a chain of messages
Under the hood
dta_MessageInOutEvents
 Service Instance ID of messages
|
Create a chain
 Message Instance ID

SI = 1
MI = A

SI = 1
MI = B

SI = 2
MI = B

SI = 2
MI = C

SI = 3
MI = C

SI = 3
MI = D
29
Tools & SDK

30
Tools & SDK
|

BizTalk Administration Console #technical #notsexy

31
Tools & SDK
|

BizTalk MessageBox Viewer #troubleshooting

32
Tools & SDK
|

BizTalk Terminator #troubleshooting

Import MBV scripts

33
Tools & SDK
|

Performance Counters #troubleshooting
|
|

Throttling state  find reason on MSDN
TDDS

34
Tools & SDK
|

Retrieve tracked message body #3ways
|

Microsoft.BizTalk.Operations.dll

35
Visualization

36
Visualization
|

Bad practice
|

Develop a dashboard directly on BizTalkDTADb #performance
|
|
|

No control on user queries
Impacts directly the BizTalk runtime
Bad dashboard performance

37
Visualization
|

Bad practice
|

Develop custom tracking mechanism

38
Visualization
|

Good practice
|

Use default BizTalk Tracking #CID

39
Visualization
|

Good practice
|

Use BizTalk Tracking #CID

40
Visualization
|

Business Activity Monitoring? #notideal
|

Development impact
|
|

|

SQL Server Analysis Services
|

|
|
|
|

Tracking Profile Editor is limited
BAM API is rather complex
2008 R2 required, when using SQL 2012

Deprecated BAM portal
Impact on operations
Not ideal OLAP cube structure
Termination of activities not straightforward
41
Visualization
|

Use case #1: Message Search
|

BizTalk Administration Console

|

Codit Integration Dashboard
42
Visualization

Demo

|

Use case #1: Message Search
|

Search on context properties:
|
|
|
|
|

Application
Flow
Sender
Receiver
Reference

43
Demo

|

Visualization

Use case #1: Message Search

44
Visualization
|

Use case #2: Operational reports
|
|
|

#managedservices

Message Load
Message Size
Database Size

45
Visualization
|

Use case #3: Pro-Active Monitoring
|

#managedservices

Custom SCOM alert: monitoring non-events #vbs
|

E.g.: Just-In-Time ordering
|
|
|

Daily check on expected amount of received orders
Query on BizTAlkDTADb
Automated email alert / support ticket

46
Visualization
|

Use case #4: SLA Reporting
|

Processing times of web services
|
|
|

Total processing time
Processing time of every backend system
Processing time in BizTalk

47
Demo

|

Visualization

Use case #4: SLA Reporting
GetCustomer
GetCustomerItemList

sp_CRM_GetCustomer.WCF
ORCH

rp_MasterDataService.WCF

GetItem
GetEmployee

sp_SAP_GetItem.WCF

sp_AX_GetEmployee.WCF

48
Visualization

Demo

Use case #4: SLA Reporting
BizTalk Processing Time = Total Processing Time – SAP Processing Time
Same MessageID
1

2

3

rp_MasterDataService.WCF

8

4
sp_SAP_GetItem.WCF

7

6
Same MessageID

5

SAP Processing Time

Total Processing Time

|

49
Visualization

Demo

|

Use case #4: SLA Reporting
|

SQL Agent Job
|

BizTalkDTADB  Custom database #chaining

50
Demo

|

Visualization

Use case #4: SLA Reporting

51
Demo

|

Visualization

Use case #4: SLA Reporting

52
Visualization
|

Use case #5: Process Overview
|

Visualization of related integration flows

53
Demo

|

Visualization

Use case #5: Process Overview
|

Example: EDI Order Processing

54
Demo

|

Visualization

Use case #5: Process Overview

55
Visualization
|

Use case #6: Dashboards
|
|
|
|
|
|
|

BizTalk 360: Operational focus
AIMS for BizTalk: Behavior / trend analysis
Codit Integration Dashboard: Advanced message handling
Minotaur
Frends Helium
Moesion
…

56
Visualization

Demo

|

Use case #6: Dashboards
|

Codit Integration Dashboard
|
|
|

Friendly Naming of technical artifacts
Message Search
Message Resume / Resubmit
|
|

Editing
Multi selection

57
Demo

|

Visualization

Use case #6: Dashboards
|

Codit Integration Dashboard: resubmit

58
Questions?
You

BTUG
Microsoft

59

Weitere ähnliche Inhalte

Ähnlich wie 20131028 BTUG.be - BizTalk Tracking

Connections Administration Toolkit (CAT)
Connections Administration Toolkit (CAT)Connections Administration Toolkit (CAT)
Connections Administration Toolkit (CAT)TIMETOACT GROUP
 
Top 10 BizTalk Admin Tips
Top 10 BizTalk Admin TipsTop 10 BizTalk Admin Tips
Top 10 BizTalk Admin TipsDaniel Toomey
 
Sharding and things we'd like to see improved
Sharding and things we'd like to see improvedSharding and things we'd like to see improved
Sharding and things we'd like to see improvedIgor Donchovski
 
Observability for Integration Using WSO2 Enterprise Integrator
Observability for Integration Using WSO2 Enterprise IntegratorObservability for Integration Using WSO2 Enterprise Integrator
Observability for Integration Using WSO2 Enterprise IntegratorWSO2
 
Security threat analysis points for enterprise with oss
Security threat analysis points for enterprise with ossSecurity threat analysis points for enterprise with oss
Security threat analysis points for enterprise with ossHibino Hisashi
 
Introduction to BizTalk for Beginners
Introduction to BizTalk for BeginnersIntroduction to BizTalk for Beginners
Introduction to BizTalk for BeginnersAboorvaRaja Ramar
 
Integration with Dynamics CRM
Integration with Dynamics CRMIntegration with Dynamics CRM
Integration with Dynamics CRMBizTalk360
 
Understanding binder in android
Understanding binder in androidUnderstanding binder in android
Understanding binder in androidHaifeng Li
 
Deep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed MicroservicesDeep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed MicroservicesAaronLieberman5
 
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...MongoDB
 
BizTalk Server tips and tricks for developers and admins
BizTalk Server tips and tricks for developers and adminsBizTalk Server tips and tricks for developers and admins
BizTalk Server tips and tricks for developers and adminsBizTalk360
 
Migrating biz talk solutions to azure
Migrating biz talk solutions to azureMigrating biz talk solutions to azure
Migrating biz talk solutions to azureBizTalk360
 
Matrix - One-year in, Matthew Hodgson, Matrix.org
Matrix - One-year in, Matthew Hodgson, Matrix.orgMatrix - One-year in, Matthew Hodgson, Matrix.org
Matrix - One-year in, Matthew Hodgson, Matrix.orgAlan Quayle
 
How Pixid dropped Oracle and went hybrid with MariaDB
How Pixid dropped Oracle and went hybrid with MariaDBHow Pixid dropped Oracle and went hybrid with MariaDB
How Pixid dropped Oracle and went hybrid with MariaDBMariaDB plc
 
Audit your existing code in Domino - Collabsphere2022_v5.pdf
Audit your existing code in Domino  - Collabsphere2022_v5.pdfAudit your existing code in Domino  - Collabsphere2022_v5.pdf
Audit your existing code in Domino - Collabsphere2022_v5.pdfDominiquePerarnaud
 
[Webinar] WSO2 Enterprise Integrator 7.1.0 Release
[Webinar] WSO2 Enterprise Integrator 7.1.0 Release[Webinar] WSO2 Enterprise Integrator 7.1.0 Release
[Webinar] WSO2 Enterprise Integrator 7.1.0 ReleaseWSO2
 
Effective administration of IBM Integration Bus - Sanjay Nagchowdhury
Effective administration of IBM Integration Bus - Sanjay NagchowdhuryEffective administration of IBM Integration Bus - Sanjay Nagchowdhury
Effective administration of IBM Integration Bus - Sanjay NagchowdhuryKaren Broughton-Mabbitt
 
BizTalk Server Deep Dive Tips & Tricks for Developers and Admins
BizTalk Server Deep Dive Tips & Tricks for Developers and AdminsBizTalk Server Deep Dive Tips & Tricks for Developers and Admins
BizTalk Server Deep Dive Tips & Tricks for Developers and AdminsSandro Pereira
 
BizTalk Server Deep Dive Tips and Tricks For Developers and Admins at TUGA IT
BizTalk Server Deep Dive Tips and Tricks For Developers and Admins at TUGA ITBizTalk Server Deep Dive Tips and Tricks For Developers and Admins at TUGA IT
BizTalk Server Deep Dive Tips and Tricks For Developers and Admins at TUGA ITSandro Pereira
 
Kofax capture overview
Kofax capture   overviewKofax capture   overview
Kofax capture overviewSuresh Madhra
 

Ähnlich wie 20131028 BTUG.be - BizTalk Tracking (20)

Connections Administration Toolkit (CAT)
Connections Administration Toolkit (CAT)Connections Administration Toolkit (CAT)
Connections Administration Toolkit (CAT)
 
Top 10 BizTalk Admin Tips
Top 10 BizTalk Admin TipsTop 10 BizTalk Admin Tips
Top 10 BizTalk Admin Tips
 
Sharding and things we'd like to see improved
Sharding and things we'd like to see improvedSharding and things we'd like to see improved
Sharding and things we'd like to see improved
 
Observability for Integration Using WSO2 Enterprise Integrator
Observability for Integration Using WSO2 Enterprise IntegratorObservability for Integration Using WSO2 Enterprise Integrator
Observability for Integration Using WSO2 Enterprise Integrator
 
Security threat analysis points for enterprise with oss
Security threat analysis points for enterprise with ossSecurity threat analysis points for enterprise with oss
Security threat analysis points for enterprise with oss
 
Introduction to BizTalk for Beginners
Introduction to BizTalk for BeginnersIntroduction to BizTalk for Beginners
Introduction to BizTalk for Beginners
 
Integration with Dynamics CRM
Integration with Dynamics CRMIntegration with Dynamics CRM
Integration with Dynamics CRM
 
Understanding binder in android
Understanding binder in androidUnderstanding binder in android
Understanding binder in android
 
Deep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed MicroservicesDeep Visibility: Logging From Distributed Microservices
Deep Visibility: Logging From Distributed Microservices
 
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...
Ch-Ch-Ch-Ch-Changes: Taking Your MongoDB Stitch Application to the Next Level...
 
BizTalk Server tips and tricks for developers and admins
BizTalk Server tips and tricks for developers and adminsBizTalk Server tips and tricks for developers and admins
BizTalk Server tips and tricks for developers and admins
 
Migrating biz talk solutions to azure
Migrating biz talk solutions to azureMigrating biz talk solutions to azure
Migrating biz talk solutions to azure
 
Matrix - One-year in, Matthew Hodgson, Matrix.org
Matrix - One-year in, Matthew Hodgson, Matrix.orgMatrix - One-year in, Matthew Hodgson, Matrix.org
Matrix - One-year in, Matthew Hodgson, Matrix.org
 
How Pixid dropped Oracle and went hybrid with MariaDB
How Pixid dropped Oracle and went hybrid with MariaDBHow Pixid dropped Oracle and went hybrid with MariaDB
How Pixid dropped Oracle and went hybrid with MariaDB
 
Audit your existing code in Domino - Collabsphere2022_v5.pdf
Audit your existing code in Domino  - Collabsphere2022_v5.pdfAudit your existing code in Domino  - Collabsphere2022_v5.pdf
Audit your existing code in Domino - Collabsphere2022_v5.pdf
 
[Webinar] WSO2 Enterprise Integrator 7.1.0 Release
[Webinar] WSO2 Enterprise Integrator 7.1.0 Release[Webinar] WSO2 Enterprise Integrator 7.1.0 Release
[Webinar] WSO2 Enterprise Integrator 7.1.0 Release
 
Effective administration of IBM Integration Bus - Sanjay Nagchowdhury
Effective administration of IBM Integration Bus - Sanjay NagchowdhuryEffective administration of IBM Integration Bus - Sanjay Nagchowdhury
Effective administration of IBM Integration Bus - Sanjay Nagchowdhury
 
BizTalk Server Deep Dive Tips & Tricks for Developers and Admins
BizTalk Server Deep Dive Tips & Tricks for Developers and AdminsBizTalk Server Deep Dive Tips & Tricks for Developers and Admins
BizTalk Server Deep Dive Tips & Tricks for Developers and Admins
 
BizTalk Server Deep Dive Tips and Tricks For Developers and Admins at TUGA IT
BizTalk Server Deep Dive Tips and Tricks For Developers and Admins at TUGA ITBizTalk Server Deep Dive Tips and Tricks For Developers and Admins at TUGA IT
BizTalk Server Deep Dive Tips and Tricks For Developers and Admins at TUGA IT
 
Kofax capture overview
Kofax capture   overviewKofax capture   overview
Kofax capture overview
 

Mehr von BTUGbe

20140515 BTUG.be - Integration with SAP 101
20140515 BTUG.be - Integration with SAP 10120140515 BTUG.be - Integration with SAP 101
20140515 BTUG.be - Integration with SAP 101BTUGbe
 
20140515 BTUG.be - Introduction
20140515 BTUG.be - Introduction20140515 BTUG.be - Introduction
20140515 BTUG.be - IntroductionBTUGbe
 
20140211 BTUG.be - Introduction
20140211 BTUG.be - Introduction20140211 BTUG.be - Introduction
20140211 BTUG.be - IntroductionBTUGbe
 
20140211 BTUG.be - Workflow Manager
20140211 BTUG.be - Workflow Manager20140211 BTUG.be - Workflow Manager
20140211 BTUG.be - Workflow ManagerBTUGbe
 
20131028 BTUG.be - BizTalk Operations
20131028 BTUG.be - BizTalk Operations20131028 BTUG.be - BizTalk Operations
20131028 BTUG.be - BizTalk OperationsBTUGbe
 
20131028 BTUG.be - Introduction
20131028 BTUG.be - Introduction20131028 BTUG.be - Introduction
20131028 BTUG.be - IntroductionBTUGbe
 

Mehr von BTUGbe (6)

20140515 BTUG.be - Integration with SAP 101
20140515 BTUG.be - Integration with SAP 10120140515 BTUG.be - Integration with SAP 101
20140515 BTUG.be - Integration with SAP 101
 
20140515 BTUG.be - Introduction
20140515 BTUG.be - Introduction20140515 BTUG.be - Introduction
20140515 BTUG.be - Introduction
 
20140211 BTUG.be - Introduction
20140211 BTUG.be - Introduction20140211 BTUG.be - Introduction
20140211 BTUG.be - Introduction
 
20140211 BTUG.be - Workflow Manager
20140211 BTUG.be - Workflow Manager20140211 BTUG.be - Workflow Manager
20140211 BTUG.be - Workflow Manager
 
20131028 BTUG.be - BizTalk Operations
20131028 BTUG.be - BizTalk Operations20131028 BTUG.be - BizTalk Operations
20131028 BTUG.be - BizTalk Operations
 
20131028 BTUG.be - Introduction
20131028 BTUG.be - Introduction20131028 BTUG.be - Introduction
20131028 BTUG.be - Introduction
 

Kürzlich hochgeladen

Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 

Kürzlich hochgeladen (20)

Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 

20131028 BTUG.be - BizTalk Tracking

  • 1. BTUG – BizTalk Tracking Toon Vanhoutte – Integration Architect
  • 3. Demo Setup Specify unique reference for messages #search Specify simulated response times of backend systems #sla Specify customer and transporter names #inspiration 3
  • 5. Configuration | Port Tracking Configuration Only track what’s really required #performance 5
  • 6. Configuration | Pipeline Tracking Configuration Bug BTS2010 CU2  CU5 #solved #CU6 #kb2728652 6
  • 7. Configuration | Orchestration Tracking Configuration Avoid Shape start and end #performance #orchestrationdebug 7
  • 8. Configuration | Property Schema Tracking Configuration Make context properties searchable #troubleshooting Global + specific property schema #generic #consistent 8
  • 11. Under the hood | BizTalk Database Structure Host Instance processes message SQL Agent 11
  • 12. Under the hood | BizTalk Database Structure Host Instance processes message SQL Agent Message stored in MessageBox 12
  • 13. Under the hood | BizTalk Database Structure Host Instance processes message SQL Agent Message stored in MessageBox TDDS copies events to DTA + BAM 13
  • 14. Under the hood | BizTalk Database Structure Host Instance processes message SQL Agent Message stored in MessageBox TDDS copies events to DTA + BAM SQL Agent copies bodies to DTA 14
  • 15. Under the hood | Store messages in MessageBox database | Physical runtime message bodies are stored in: | | | | Spool MessageParts Parts Fragments Fragmentation controlled by large message size 15
  • 16. Under the hood | Process messages in MessageBox database | Per Host, these tables are created: | | | | HostNameQ: Main queue: each host instance polls this queue table to collect messages that are pending processing HostNameQ_Suspended: Suspended queue: queue table that holds supended messages HostNameQ_Scheduled: Scheduled queue: not used InstanceStateMessageReferences_Host: State queue: holds list of messages that have been processed but are required later Stores only reference to physical message in Spool table 16
  • 17. Under the hood | Store messages in MessageBox database #probts2006 17
  • 18. Under the hood | Store tracking data in MessageBox database | #probts2006 Host Instance serializes data and stores it in the MessageBox | Message events: | | | TrackingData_0_x [x: 0 - 3] TrackingData_1_x [x: 0 - 3] Message bodies: | | | | Spool MessageParts Parts Fragments 18
  • 19. Under the hood | Copy Events from MessageBox to DTA database | Tracked Message Events copied by TDDS Service: | | Tracking Data Decode Service Runs in each host instance with tracking enabled Create a dedicated tracking host 19
  • 20. Under the hood | Copy Events from MessageBox to DTA database BizTalk MessageBox TrackingData_0_0 TrackingData_0_1 TrackingData_0_2 TrackingData_0_3 TrackingData_1_0 TrackingData_1_1 TrackingData_1_2 TrackingData_1_3 TDDS BAM Primary Import Activity_Active Activity_ActiveRelationships Activity_Completed Activity_CompletedRelantionships Activity_Continuations BizTalk DTA Database Dta_MessageInOutEvents Dta_ServiceInstances ... 20
  • 21. Under the hood | Copy Events from MessageBox to DTA database BizTalk MessageBox TrackingData_x_x TDDS BAM Primary Import TDDS_StreamStatus TDDS_FailedTrackingData BizTalk DTA Database TDDS_StreamStatus TDDS_FailedTrackingData TDDS_StreamStatus contains last copied sequence n° TDDS moves events with > sequence n° from TrackingData_x_x to DTA TDDS_FailedTrackingData contains tracking failures 21
  • 22. Under the hood | Copy Bodies from MessageBox to DTA database | Tracked Message Bodies copied by SQL Agent Job: | | TrackedMessages_Copy_BizTalkMsgBoxDb Scheduled by default each minute (development: 10 seconds) Monitor the SQL Agent Jobs #SCOM #blog 22
  • 23. Under the hood | Copy Bodies from MessageBox to DTA database BizTalk MessageBox Spool MessageParts Parts Fragments SQL Agent BizTalk DTA Database Tracking_Spoolx Tracking_Partsx Tracking_Fragmentsx [x: 1 - 2]: Always one online / one offline 23
  • 24. Under the hood | Remove data from MessageBox | This is performed by SQL Agent Jobs: | MessageBox_Message_ManageRefCountLog_BizTalkMsgBoxDb: | | | Runs continuously (due to former SQL limitation of 1 min job schedule) This jobs checks weather a message is still referenced by instances MessageBox_Message_Cleanup_BizTalkMsgBoxDb | | | Is disabled (keep it like this) It’s called from with the infinite loop of the ManageRefCount Job This job deletes physical messages from MessageBox that have no outstanding references anymore 24
  • 25. Under the hood | Remove data from DTA | | Enable + Configure the DTA Purge and Archive Job #avoidlargeDTA Remove data from BAM | SQL Agent Job BAM_DM_Activity moves data to BAMArchive 25
  • 26. Under the hood | BizTalkDTADb Database model | No foreign keys #performance | | | Designed for fast insert Results in slower query No single chain ID | Difficult to reproduce the “route” within BizTalk 26
  • 27. Under the hood | BizTalkDTADb Database model | No foreign keys #performance | | | Designed for fast insert Results in slower query No single chain ID | Difficult to reproduce the route within BizTalk 27
  • 28. Under the hood | Create a chain of messages
  • 29. Under the hood dta_MessageInOutEvents  Service Instance ID of messages | Create a chain  Message Instance ID SI = 1 MI = A SI = 1 MI = B SI = 2 MI = B SI = 2 MI = C SI = 3 MI = C SI = 3 MI = D 29
  • 31. Tools & SDK | BizTalk Administration Console #technical #notsexy 31
  • 32. Tools & SDK | BizTalk MessageBox Viewer #troubleshooting 32
  • 33. Tools & SDK | BizTalk Terminator #troubleshooting Import MBV scripts 33
  • 34. Tools & SDK | Performance Counters #troubleshooting | | Throttling state  find reason on MSDN TDDS 34
  • 35. Tools & SDK | Retrieve tracked message body #3ways | Microsoft.BizTalk.Operations.dll 35
  • 37. Visualization | Bad practice | Develop a dashboard directly on BizTalkDTADb #performance | | | No control on user queries Impacts directly the BizTalk runtime Bad dashboard performance 37
  • 41. Visualization | Business Activity Monitoring? #notideal | Development impact | | | SQL Server Analysis Services | | | | | Tracking Profile Editor is limited BAM API is rather complex 2008 R2 required, when using SQL 2012 Deprecated BAM portal Impact on operations Not ideal OLAP cube structure Termination of activities not straightforward 41
  • 42. Visualization | Use case #1: Message Search | BizTalk Administration Console | Codit Integration Dashboard 42
  • 43. Visualization Demo | Use case #1: Message Search | Search on context properties: | | | | | Application Flow Sender Receiver Reference 43
  • 45. Visualization | Use case #2: Operational reports | | | #managedservices Message Load Message Size Database Size 45
  • 46. Visualization | Use case #3: Pro-Active Monitoring | #managedservices Custom SCOM alert: monitoring non-events #vbs | E.g.: Just-In-Time ordering | | | Daily check on expected amount of received orders Query on BizTAlkDTADb Automated email alert / support ticket 46
  • 47. Visualization | Use case #4: SLA Reporting | Processing times of web services | | | Total processing time Processing time of every backend system Processing time in BizTalk 47
  • 48. Demo | Visualization Use case #4: SLA Reporting GetCustomer GetCustomerItemList sp_CRM_GetCustomer.WCF ORCH rp_MasterDataService.WCF GetItem GetEmployee sp_SAP_GetItem.WCF sp_AX_GetEmployee.WCF 48
  • 49. Visualization Demo Use case #4: SLA Reporting BizTalk Processing Time = Total Processing Time – SAP Processing Time Same MessageID 1 2 3 rp_MasterDataService.WCF 8 4 sp_SAP_GetItem.WCF 7 6 Same MessageID 5 SAP Processing Time Total Processing Time | 49
  • 50. Visualization Demo | Use case #4: SLA Reporting | SQL Agent Job | BizTalkDTADB  Custom database #chaining 50
  • 53. Visualization | Use case #5: Process Overview | Visualization of related integration flows 53
  • 54. Demo | Visualization Use case #5: Process Overview | Example: EDI Order Processing 54
  • 55. Demo | Visualization Use case #5: Process Overview 55
  • 56. Visualization | Use case #6: Dashboards | | | | | | | BizTalk 360: Operational focus AIMS for BizTalk: Behavior / trend analysis Codit Integration Dashboard: Advanced message handling Minotaur Frends Helium Moesion … 56
  • 57. Visualization Demo | Use case #6: Dashboards | Codit Integration Dashboard | | | Friendly Naming of technical artifacts Message Search Message Resume / Resubmit | | Editing Multi selection 57
  • 58. Demo | Visualization Use case #6: Dashboards | Codit Integration Dashboard: resubmit 58