Skip to content

Add "Hosting Process" data to Heartbeats #180

@dannycohen

Description

@dannycohen

As Opie, I need to be able to uniquely identify the specific endpoint hosting process that sent a heartbeat.
This is especially true when more than one instance of the endpoints is located in the same machine (AKA "side by side") It also applies when the endpoint is hosted in IIS or other custom hosting.

Visualization

  1. In SI, we will be including the "Hosting Process" information in endpoint properties / tooltip info.
  2. In SP, it will be displayed in the Endpoints List (monitored only, since it relies on heartbeats).

Proposed Implementation

  1. As discussed with @andreasohlund
  2. Add "Hosting Process" property to Heartbeat messages
  3. Hosting Process data should contain all types information that can assist Opie to locate the specific process that hosts the endpoint on a specific machine
  4. This information may include:
    • windows service name
    • machine logical name (role instance id in the case of Azure PaaS)
    • executable location path
    • executable launch parameters
    • executable configuration file (or specific values)
    • Process ID (highly volatile)
  5. Proposed format:
EndpointLocation: "ServiceName=VideoStore.Content;Path=c:\app\VideoStore.Content\NServiceBus.Host.exe;ProcessId=2258"
  • Convert the Endpoint data in SC to contain the "Hosting Process" property
  • A unique identification of an endpoint in the message list will be based on three properties:
    1. Endpoint Name (required)
    2. Machine Name (required)
    3. Hosting Process (optional, since it will only be available when a heartbeats plugin is available)

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions