Table of Contents

Class ProfilerCorrelation

Namespace
Typhon.Engine
Assembly
Typhon.Engine.dll

What a host records into the profiler about the requests it serves, so their engine work can be tied back to them (#1517). The ASP.NET Core wiring (Typhon.Profiler.AspNetCore) is one caller; a host on another stack calls this directly.

public static class ProfilerCorrelation
Inheritance
ProfilerCorrelation
Inherited Members

Properties

IsActive

True while correlation is recorded: the profiler is active and Typhon:Profiler:Correlation is on.

public static bool IsActive { get; }

Property Value

bool

Methods

RecordRequest(long, long, CausalId, ExternalRequestMethod, int, string)

Records one served request as an ExternalRequest span. Call it once the request has completed, on any thread.

public static void RecordRequest(long startTimestamp, long endTimestamp, CausalId id, ExternalRequestMethod method, int status, string route)

Parameters

startTimestamp long

When the request started, in Stopwatch ticks.

endTimestamp long

When it completed, in the same clock.

id CausalId

The request's causal id — the trace id its engine spans carry. None records an uncorrelated request.

method ExternalRequestMethod

The HTTP method.

status int

The response status code.

route string

The endpoint's route template (/swg/inventory), not the raw path, so requests group by endpoint.