RE: Errors on Activating Receives



For most polling type adapters there is an error threshold, that is used.
For example using the BizTalk Admin Console, in the left hand tree view
navigate to:
PlatForm Settings -> Adapters -> SQL

Then right mouse button on the Sql Receive Handler. In the SQL - Adapter
Handler Properties dialog
Click on ther properties button, there is an Error Threshold property that
is visible.
If this property is set to a vale of 5, then if the Receive Location
configured with the
Sql Adapter errors out 5 times in a row, BizTalk will disable that recieve
location.

So how can you handle this situation, to be automatically notified?

When the error threshold is reached :

- BizTalk will disable the Receive Location (As you mentioned)
- A event will be written to the event log.

So if you need to be automatically informed of a Receive Location shutting
down, then you need
something to monitor the event log for BizTalk Receive Locations shutting down

You could write your own service, to listen to WMI event being raised or
something to monitor the event log.

Or Third Party Products include:
- Patrol (Not sure of the exact spelling)
- Tivoli (Not sure of the exact spelling)
- Microsoft provides MOM (Microsoft Operations Manager), the newest version
is
called System Operation Manager.
With MOM and Systems Operation Manager, you can download Management Packs,
that will monitor:

Sql Server,
BizTalk Server,
Exchange

etc.
etc.

With MOM, you can also configure your own custom alerts, and configure
actions
to take place when errors or thresholds are exceeded :
For example -> email, send out pages etc.
It is a big product, so there is no room to discuss all the features here.

Just to point out the obvious:
BizTalk is a server product that must be monitored for health, just like any
other middleware server.


"Peter Bradley" wrote:

Firstly, my apologies for this seemingly never ending stream of posts
about error handling.

My orchestration has an activating receive that gets data from a SQL
adapter. I would like to trap any errors from the stored procedure that
the SQL adapter calls. However, it appears that if the stored procedure
fails on this receive port, no message is generated at all. Instead,
the port is simply shut down after the specified number of retries.

The two situations I've checked are:
* Stored procedure raises an error
* The stored procedure does not exist

To simulate these I first of all added a 'raiserror' statement to the
stored procedure as its last line:

raiserror('Some messsage', 16, 1)

For the latter condition, I simply temporarily renamed the stored procedure.

In neither case was a message of any type sent to the Message Box.
Therefore, since there was no message, there was no chance of handling
it, either in the orchestration and/or via messaging.

Given the evidence above, it looks to me as though a SQL receive port
can never generate an exception/message failure. Is that true? Or have
I once again missed something?

Cheers


Peter

.


Loading