Skip to content

Latest commit

 

History

History
134 lines (78 loc) · 8.68 KB

getting-started-overview.md

File metadata and controls

134 lines (78 loc) · 8.68 KB
title summary tags
ServiceInsight Overview
A short overview on ServiceInsight.
ServiceInsight

Introduction

The NServiceBus framework provides the benefits of a distributed, messaged based, fault tolerant, and distributed architecture by allowing you to visualize and verify the functionality of such a distributed system.

From design through to production, ServiceInsight provides concise and user-friendly insight and information about the system.

  1. ServiceInsight and the NServiceBus Framework
  2. Visualizing The System
  3. The Message Window
  4. Endpoint Explorer
  5. Flow Diagram
  6. Message Properties
  7. Saga View
  8. Body and Log Views
  9. Errors and Retries
  10. Next Steps

The NServiceBus Framework

The NServiceBus Framework is part of the Particular Service Platform which includes these tools:

  • ServiceMatrix accelerates the design of your system.
  • The audit and error aggregation power of ServiceControl is leveraged by ServicePulse for operational monitoring and alerting.
  • ServiceInsight provides a detailed view of messages in their system context, from endpoints to sagas, showing relationships and data.

Visualizing the System

The ServiceInsight user interface provides multiple views of your distributed system. Using information collected in ServiceControl, ServiceInsight enumerates your endpoints and provides detailed message and relationship data, with formatted views of XML, JSON, and binary messages.

The flow diagram provides a detailed visual overview of the messages, collated by conversation. Using this view you can see the flow in your system and which endpoints raised specific events and sent or handled messages. The Saga view illustrates the start of a saga, the timeouts, and interactions. As you select endpoints, the other views within ServiceInsight respond and filter the information to show only messages pertaining to that endpoint.

The Message Window

The Messages window is a detailed grid view indicating the message status, type, time stamp, and service level information. You can filter the list based on specific message content, searching for all message data, not just commonly displayed fields.

Message List View

You can filter and locate at design time. ServiceMatrix debugging automatically launches ServiceInsight and filters the messages to include only your current debug session. The ServicePulse monitoring tool also allows you to open ServiceInsight to a specific message so you can drill down for more detail.

Refresh and Auto-refresh

The Refresh and Auto-Refresh toolbar buttons enable you to update the displayed information with the latest updates from the ServiceControl database.

Auto-refresh keeps the information in ServiceInsight automatically refreshed, delivering near real-time information to the views.

You can specify the auto-refresh rate in the "View" > "Options" > "Auto-Refresh Timer" setting (default is auto-refresh every 15 seconds; lowest value is 1 second), or you can specify the auto-refresh rate using the ServiceInsight invocation parameter (see ServiceInsight Invocation)

Timing and Performance

You can use the performance-related information in the message header to sort the messages in an endpoint based on the time the messages were sent, critical time, processing time, delivery time, Message Type and ID.

The message timing measurements include the following:

  • Critical Time: the end-to-end amount of time that elapsed from when the messages was sent by the sending endpoint, until its processing was completed by the processing endpoint
  • Delivery Time: the amount of time the message spent in transition from the sending to the processing endpoint (including awaiting delivery and processing in the queues)
  • Processing Time: the amount of time it took to actually process the message, within the processing endpoint, by the message processing handler method

Using the messages window column headers you can sort the messages in ascending or descending order (the sorting operation applies on all the relevant messages in the underlying ServiceControl instance, and is not limited to the currently displayed messages).

When you select specific messages, the related properties window and flow diagram change to illustrate details of the selected message.

Endpoint Explorer

The Endpoint Explorer indicates the connection to the ServiceControl instance providing data to ServiceInsight. The list enumerates the endpoints and the machine where they are deployed.

Endpoint Explorer

You can select endpoints to filter the message list. Select the root ServiceControl connection and the tree view to make the list expand to include all messages.

Flow Diagram

The flow diagram provides extensive message and system information. When you select messages in the message list, the flow diagram illustrates the message and all related messages from the same conversation, along with the nature of the messages and the endpoints involved.

The Flow Diagram

Each message is represented by a box indicating the message type and illustrating details including the endpoints and time information. Published events and sent commands have different icons and illustrations. Dropdowns provide more message details and links to search based on this message, copy message details, and retry messages.

Message Properties

Each message in NServiceBus contains extensive detail. As you select messages in the flow diagram or in the list, an additional Message Properties window lists the properties for the message.

The Message Properties Window

The Saga View

Sagas play a critical role in NServiceBus systems. As coordinators of processes they are started by certain messages and interact with a variety of messages and services. To open a graphical view of Sagas, you can click a message in the flow diagram that is handled by a saga.

The Saga View

The saga illustrates how the saga was initiated and other messages that were sent or handled, with detailed message data, time information, and details on saga data changes.

Body and Log Views

Along the bottom edge of the flow diagram is a tab for the Body and Log views.

Body View

ServiceInsight obviates the need for MSMQ tools provided by Windows. ServiceInsight provides raw message data in the Body tab of the flow diagram, with XML and HEX views of the body.
Body Tab

Log View

ServiceInsight leverages the ServiceControl API to retrieve information. The Log tab of the Flow Diagram window displays details of the interactions as ServiceInsight polls ServiceControl for more data. Log View Tab

Errors and Retries

ServiceInsight provides added visibility, and NServiceBus provides durability and retries. Where intervention is required, you do not need to manually collate log files or access remote servers to research an error. The views within ServiceInsight illustrate messages with errors and bring you the error information.

Status in the Message List

The status of an errant message is illustrated in the message window.

An Error in the Message Window

The Flow Diagram

The flow diagram highlights errors in red and provides details with access to the stack trace.

Error in the flow diagram

After the NServiceBus completes auto-retry, the errant message goes to an error queue. Instead of using the return-to-sender console application, to return the message to the queue from where it originated, click Retry Message.

Next Steps

ServiceInsight allows you to visualize your NServiceBus system and get a detailed view of how it works. Explore the other framework tools: ServiceMatrix, ServiceControl and ServicePulse.