Learn about the challenges of monitoring distributed systems and show how the capabilities found in ServicePulse are designed to solve those challenges.
7. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
The Particular Service Platform
http://particular.net/service-platform
8. Introduction to ServiceInsight for NServiceBus
Particular Service Platform - Architecture Overview
Production Monitoring with ServicePulse
Endpoint
Endpoint
Endpoint
EndpointEndpoint
Audit Q
Error Q
Control Q
9. Introduction to ServiceInsight for NServiceBusUnder the hood of the Particular Service Platform
Webinar recording available online:
Building Better .NET Solutions
with the Particular Service Platform
http://particular.net/Videos-and-Presentations
10. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
What do we want to monitor ?
Endpoint
Health ConnectivityStorage Exceptions Activity
11. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
ServicePulse Design Principles:
Central monitoring for all system endpoints
Clearly indicate status: OK / Problem
Near real-time and up-to-date display
Works with all NServiceBus OOTB transports
Report from the Endpoint’s perspective
Extensible and customizable
12. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Configuring Endpoint Auditing
Endpoint
Endpoint
Endpoint
Endpoint
Audit Q
Error Q
Audit all messages and
processing errors into
defined central queues
13. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Extended Auditing
with ServiceControl Plugins
Endpoint
Endpoint
Endpoint
Endpoint
Audit Q
Error Q
Control Q ServiceControl Plugins collect and report
about:
• Endpoint Heartbeats
• Custom Checks
• Saga activity data
• and more…
// NuGet Console per Endpoint:
Install-Package SeviceControl.Plugin.Heartbeat
Install-Package SeviceControl.Plugin.CustomChecks
Install-Package SeviceControl.Plugin.SagaAudit
14. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Health: Endpoint Heartbeat
Endpoint Control Q
• Heartbeat plugin sends heartbeat message every 10 seconds (configurable)
• ServicePulse expects every endpoint to emit heartbeats periodically
• Endpoints can opt-out of ServicePulse monitoring
// NuGet Console per Endpoint:
Install-Package SeviceControl.Plugin.Heartbeat
15. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Health: Endpoint Heartbeat
Endpoint Control Q
DEMO:
Endpoint Heartbeat
16. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Interlude:
What is an “Active Endpoint” ?
• Definition of an “Active Endpoint””:
• Monitored by ServicePulse
and
• Heartbeats are received and processed as expected
17. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Dependencies: Custom Checks
Endpoint Control Q
• Identify endpoint specific dependencies
• Author and deploy Custom Checks to check dependencies
• Alert when dependency requirements are not met
• Common examples: storage, connectivity, external services availability, authn/authz etc.
// NuGet Console per Endpoint:
Install-Package SeviceControl.Plugin.CustomChecks
18. 1. Create class library project
2. Add NuGet CustomChecks plugin: Install-Package SeviceControl.Plugin.CustomChecks
3. Author Custom Check that derives from CustomCheck or PeriodicCheck:
4. Copy CustomCheck DLL to endpoint Bin directory
5. Add NuGet CustomChecks plugin to Endpoint:
Install-Package SeviceControl.Plugin.CustomChecks
Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Authoring a Custom Check
19. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Dependencies: Custom Checks
Endpoint Control Q
DEMO:
Custom Checks
20. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Exceptions and Errors
Endpoint Error Q
• All Endpoints forward failed messages to central error queue
• Full Exception stack trace (& message body)
• Launch ServiceInsight for in-depth analysis
• Possible actions:
• Retry (re-send for processing)
or
• Archive (when re-processing is not an option)
21. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Exceptions and Errors
Endpoint Error Q
DEMO:
Exceptions and Errors
22. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Activity Monitoring with
Endpoint Performance Counters
23. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Planning & Configuration
Custom domain / host name / port number
Security
Capacity & storage
Audited message expiration
Long term storage & customized auditing
Performance & throughput
Backup
For detailed guidance, visit our Developer portal:
• http://docs.particular.net/servicepulse
• http://docs.particular.net/servicecontrol
24. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Guidance:
http://docs.particular.net
25. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Training:
http://particular.net/courses-and-events
26. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Support:
http://particular.net/support
27. Introduction to ServiceInsight for NServiceBusProduction Monitoring with ServicePulse
Licensing:
http://particular.net/licensing