Class BowireAgentOptions

Namespace
Kuestenlogik.Bowire.AgentHub
Assembly
Kuestenlogik.Bowire.dll

Makes an embedded Bowire an agent of a central hub (#128): it registers itself there and keeps the registration fresh, so the hub shows every Bowire in a fleet in one place.

public sealed class BowireAgentOptions
Inheritance
BowireAgentOptions
Inherited Members

Remarks

Off unless HubUrl is set — in code on Agent, or as Bowire:Agent:HubUrl. Every property falls back to Bowire:Agent:<Name> when code leaves it unset.

The agent pushes: at start, then every HeartbeatInterval, it sends its name, tags, callback URL and catalogue entries. The hub never has to reach the agent to know about it, and a hub restart is healed by the next heartbeat. On shutdown the agent deregisters.

Constructors

BowireAgentOptions()

public BowireAgentOptions()

Properties

CallbackUrl

Where the hub (and an operator) reaches this agent's workbench. Derived from the listening address and the Bowire route prefix when unset; set it when the agent sits behind a reverse proxy.

public string? CallbackUrl { get; set; }

Property Value

string

HeartbeatInterval

How often the registration is refreshed. Default 30 seconds.

public TimeSpan HeartbeatInterval { get; set; }

Property Value

TimeSpan

HubUrl

The hub's base URL, e.g. https://bowire-hub.internal; the hub answers under /hub there.

public string? HubUrl { get; set; }

Property Value

string

InstanceId

Distinguishes instances of one service; defaults to the machine name.

public string? InstanceId { get; set; }

Property Value

string

Owner

Who owns the service, shown in the hub.

public string? Owner { get; set; }

Property Value

string

ServiceName

The name the hub lists this agent under; defaults to the application name.

public string? ServiceName { get; set; }

Property Value

string

Tags

Labels for the hub to filter on — env:prod, region:eu. parallel-executor offers this Bowire as an executor for distributed parallel runs.

public List<string> Tags { get; }

Property Value

List<string>

Token

The hub's bootstrap token, sent as Authorization: Bearer.

public string? Token { get; set; }

Property Value

string

Version

The service's version, shown in the hub.

public string? Version { get; set; }

Property Value

string