vrijdag 25 november 2011

Perfomance monitor for BizTalk administrators

Just found a blog with an overview of useful counters to monitor the BizTalk performance.

Blog: Perfomance monitor for BizTalk administrators - BizTalk Administrator Blog

dinsdag 22 november 2011

Cumulative update package 4 for BizTalk Server 2009

Microsoft released a new update package for BTS 2009. Cumulative update package 4 is now available here.


Content:
  • BizTalk Server EDI support: FIX: A TA1 interchange acknowledgement is not returned when you use a two-way receive port to receive EDI interchanges in BizTalk Server
  • BizTalk Server Design Tools: FIX: Visual Studio crashes when you build a project in BizTalk Server 2009 if message types are classes from a referenced .NET project
  • Microsoft BizTalk Server Adapters: FIX: "Error encountered while querying virtual server state for URL" error when you configure WSS adapter in BizTalk Server 2009


!! Important Note:
After you apply this cumulative update, the settings for the DTA Purge and Archive Job roll back to default. This may cause backlog in the BizTalk Tracking (BizTalkDTADb) database. It is recommended to re-configure the job. For more information, visit the following Microsoft Web site: How to Configure the DTA Purge and Archive Job

Error 0xC0002A1F in BizTalk installation

During the BizTalk installation I got the error code '0xC0002A1F' when configuring the installation using the Microsoft BizTalk Server Configuration Wizard. There wasn't any error description given, only the code 0xC0002A1F which of course didn't was of much help.

Turned out this error code meant the following:

Error Code: 0xC0002A1F, Cannot perform encryption or decryption because the secret is not available from the master secret server. See the event log for related errors.

This of course was much clearer. It was clear I needed to restore the Master Secret needed of the SSO (Single Sign-on).

After restoring the master secret, all worked well.

maandag 21 november 2011

Error when configuring the BizTalk runtime

I was installing BizTalk 2010 at home and ran into an error when configuring my BizTalk Server installation with the Microsoft BizTalk Server Configuration wizard. Configuring the BizTalk Runtime gave me following error:

The Microsoft Distributed Transaction Coordinator (MSDTC) may not be configured correctly. Ensure that the MSDTC service is running and DTC network access is allowed on the BizTalk, SQL and SSO Master servers. For more information, see "MSDTC Configuration settings required for BizTalk Server" in the BizTalk Server Help.

To solve this issue, I did the following:

Go to Component Services (Click Start, click Run, and type dcomcnfg to launch the Component Services Management console).
Next, Click to expand My Computer, click to expand Distributed Transaction Coordinator, right-click Local DTC, and click Properties, as shown below.



Now Click the Security tab of the Local DTC Properties dialog.

If either the Mutual Authentication Required or the Incoming Caller Authentication Required configuration options are enabled then the client(s) computer account must be granted the Access this computer from the network user right. If the computer account for a client computer is not granted the Access this computer from the network user right, or is included in the Deny access to this computer from the network user right, then DTC communication between the client and server computer will fail.



These changes caused to give me following error:

New transaction cannot enlist in the specified transaction coordinator

The solution for this is to change the setting under Transaction Manager Communication to “No Authentication Required".
So the MSDTC Security configuration now looks like this:

woensdag 9 november 2011

Cumulatieve updatepakket 2 for BizTalk Server 2010

Microsoft released the Cumulatieve updatepakket 2 for BizTalk 2010

This cumulative update package for Microsoft BizTalk Server 2010 contains hotfixes for the BizTalk Server 2010 issues that were resolved after the release of BizTalk Server 2010.

More info: Cumulatieve updatepakket 2 for BizTalk Server 2010

Some neat tools for Biztalk / .NET developers

I bundled some handy free tools to help you develop and / or debug your (BizTalk) applications.

soapUI

soapUI is a free and open source cross-platform Functional Testing solution, a tool for SOA testing.
soapUI allows you to easily and rapidly create and execute automated functional, regression, compliance, and load tests. In a single test environment, soapUI provides complete test coverage and supports all the standard protocols and technologies.

http://www.eviware.com/soapUI/soapui-products-overview.html

linqpad

LINQPad lets you interactively query databases in a modern query language: LINQ.

LINQPad supports everything in C# 4.0 and Framework 4.0:
  • LINQ to Objects
  • LINQ to SQL and Entity Framework
  • LINQ to XML
  • Parallel LINQ

http://www.linqpad.net/

testdriven.net

TestDriven.Net makes it easy to run unit tests with a single click, anywhere in your Visual Studio solutions. It supports all versions of Microsoft Visual Studio and it integrates with the best .NET development tools.

http://www.testdriven.net/

ssmstoolspack

SSMS Tools Pack is an add-in for Microsoft SQL Server Management Studio. It contains a few upgrades to the SSMS IDE

http://www.ssmstoolspack.com/

deployment framework for biztalk

The Deployment Framework for BizTalk eliminates the pain associated with BizTalk application deployments, and goes far beyond BizTalk’s out-of-the-box deployment functionality. It also includes additional tools to enhance developer productivity, such as binding file management.

http://biztalkdeployment.codeplex.com/

biztalkcop

A set of FxCop rules for enforcing coding standards on BizTalk projects. First release includes configurable naming rules based on Scott Colestock's published conventions.

http://biztalkcop.codeplex.com/

smsniff

SmartSniff is a network monitoring utility that allows you to capture TCP/IP packets that pass through your network adapter, and view the captured data as sequence of conversations between clients and servers.

http://www.nirsoft.net/utils/smsniff.html

bizunit

BizUnit is a flexible and extensible declarative test framework targeted that rapidly enables the automated testing of distributed systems, for example it is widely used to test BizTalk solutions. BizUnit is fully extensible. Its approach is to enable test cases to be constructed from generic reusable test steps, test cases are defined in XML which allows them to be auto-generated and also enables the ‘fixing up’ of Url’s for different environments, e.g. test, staging and production environments. Defining test cases in XML enables test cases to be auto-generated.

http://bizunit.codeplex.com/

resharper

ReSharper is a renowned productivity tool that makes Microsoft Visual Studio a much better IDE.

http://www.jetbrains.com/resharper/

dansharp xmlviewer

DanSharp XmlViewer is a lightweight XPath generation and testing tool, making it easy to generate and test XPath queries. It also allows for validation of Xml documents against schemas, display of Xml documents in tree-view format, and generation of BizUnit test cases.

http://dansharpxmlviewer.codeplex.com/

bts terminator

A tool which allows for common biztalk problems to be addressed by scripts provided by the biztalk team. Replaces terminate.vbs with more functionality including the ability to suspend, resume and terminate by date range. Powershell script functionality provided for performance tuning. Integration with mbvcleanupscripts.xml from the messagebox viewer utility

http://www.microsoft.com/download/en/details.aspx?id=2846
Guideline on biztalkadminsblogging.com

debugview

DebugView is an application that lets you monitor debug output on your local system, or any computer on the network that you can reach via TCP/IP. It is capable of displaying both kernel-mode and Win32 debug output.

http://technet.microsoft.com/en-us/sysinternals/bb896647

msbuild explorer extension

The MSBuild Extension Pack provides a collection of over 400 MSBuild Tasks, MSBuild Loggers and MSBuild TaskFactories.

http://msbuildextensionpack.codeplex.com/

ilspy

ILSpy is the open-source .NET assembly browser and decompiler.

http://wiki.sharpdevelop.net/ILSpy.ashx

biztalk map documenter

The BizTalk Map Documenter stylesheet will transform a a BizTalk map into an HTML view containing the following information:
  • The node links between source and destination schemas.
  • All functoids used in the map are displayed with their parameters.
  • Chained functoids are displayed as nested “function” calls.
  • Labels
  • Constants
  • For HL7 schemas where source and desitnation are the same message type, links between different nodes are highlighted.

http://biztalkmapdoc.codeplex.com/

msxsl.exe

The msxsl.exe command line utility enables you to perform command line Extensible Stylesheet Language (XSL) transformations using the Microsoft XSL processor.

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=21714

Microsoft BizTalk LoadGen 2007

Microsoft LoadGen 2007 generates message transmission loads to run performance and stress tests for your Microsoft BizTalk Server applications, and provides performance counters to monitor the performance of the infrastructure running BizTalk Server.

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=14925

BizTalk Server Best Practices Analyzer

he BizTalk Server Best Practices Analyzer V1.2 examines a BizTalk Server 2006, BizTalk Server 2006 R2, or BizTalk Server 2010 deployment and generates a list of issues pertaining to best practices standards for BizTalk Server deployments.

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=15963

Performance Analysis of Logs (PAL)

The PAL (Performance Analysis of Logs) tool is a new and powerful tool that reads in a performance monitor counter log (any known format) and analyzes it using complex, but known thresholds (provided). The tool generates an HTML based report which graphically charts important performance counters and throws alerts when thresholds are exceeded.

http://pal.codeplex.com/

Log Parser 2.2

Log parser is a powerful, versatile tool that provides universal query access to text-based data such as log files, XML files and CSV files, as well as key data sources on the Windows® operating system such as the Event Log, the Registry, the file system, and Active Directory.

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=24659

Process Explorer

The unique capabilities of Process Explorer make it useful for tracking down DLL-version problems or handle leaks, and provide insight into the way Windows and applications work.

http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx

Message Box Viewer

The goal of MBV is to retrieve the maximum amount of information from a BizTalk System in one click in the minimum amount of time, identify all possible issues which could be critical or need attention and present them in a user friendly format.

More info: http://blogs.technet.com/b/jpierauc/archive/2008/07/22/msgboxviewer-mbv-q-a.aspx%22
http://blogs.technet.com/b/jpierauc/archive/2007/12/18/msgboxviewer.aspx

TCP Trace

Used to monitor text based network traffic between client and server. Useful while using adapters like SOAP,HTTP,POP3 etc to see the message travelling via the wire.

http://www.pocketsoap.com/tcptrace/

DTCPing

This tool is designed to assist with troubleshooting Microsoft DTC Firewall Issues, which you'll often see in a multiserver BizTalk deployment.

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=2868
BizTalk Message Decompressor

This tool enables you to decompress BizTalk messages/context from a screen that looks like SQL Query Analyzer.

http://btsdecompress.codeplex.com/

maandag 7 november 2011

Using DocumentSpecName of the pipeline configuration

A schema can be defined in the 'DocumentSpecName' attribute of the pipeline configuration properties (in the dissamble stage).
When no schema is defined and there are multiple schema's with the same combination for 'Target Namespace' (optional) and 'Root Name', you 'll get following error in the receive pipeline:

There was a failure executing the receive pipeline: "<ReceivePipeline>" Source: "XML disassembler" Receive Port: "<ReceivePortName>" URI: "<URI>\*.xml" Reason: Cannot locate document specification because multiple schemas matched the message type "<TargetNameSpace><RootName>".

The use of "DocumentSpecName" attribute in the configuration section of the pipelines is there to direct the pipeline to validate the message against a specific schema in the given assembly. The attibute should be filled with the schema full name ('<schema type>, <schema assembly>') as shown in below figure. This should solve the above error.


The issue becomes more complex when using multi-part schemas. In htis situation you'll get following error:

There was a failure executing the receive pipeline: "<ReceivePipeline>" Source: "XML disassembler" Receive Port: "<ReceivePort>" URI: "<URI>\*.xml" Reason: No Disassemble stage components can recognize the data .

What BizTalk want to tell us is that at this stage, given the specific configuration of DocumentSpecName Attribute, in the well known syntax of "<schema type> ,<schema assembly full name>" is not enough for multipart schemas.

Turns out that there should be an additional value is needed in the DocumentSpecName-attribute to fully define the schema. So the above value syntax is not enough, it will direct the pipeline to the desired schema in the assembly, but it doesn't say which root it should validate against.

The correct syntax in this case is : "<schema type>+<root name> ,<schema assembly full name>"
So by adding the root name after the '+' -sign solves the issue for multipart-schemas (schemas with multiple root nodes).