PURISTA API / @purista/core / EventBridgeBaseClass
Class: EventBridgeBaseClass<ConfigType>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:44
The base class to be extended by event bridge implementations
Extended by
Type Parameters
ConfigType
ConfigType
Constructors
Constructor
new EventBridgeBaseClass<
ConfigType>(name,config):EventBridgeBaseClass<ConfigType>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:91
Parameters
name
string
config
{ [K in string | number | symbol]: ({ defaultCommandTimeout?: number; instanceId?: string; logger?: Logger; logLevel?: LogLevelName; metrics?: PuristaMetricsRuntimeOptions; metricsRecorder?: PuristaMetricsRecorderInterface; spanProcessor?: SpanProcessor } & ConfigType)[K] }
Returns
EventBridgeBaseClass<ConfigType>
Properties
capabilities
capabilities:
EventBridgeCapabilities
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:52
config
config:
Complete<EventBridgeConfig<ConfigType>>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:49
defaultCommandTimeout
defaultCommandTimeout:
number
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:89
inFlightExecutions
protectedreadonlyinFlightExecutions:InFlightExecutionTracker
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:90
instanceId
instanceId:
string
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:87
logger
logger:
Logger
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:45
metricsRecorder
protectedmetricsRecorder:PuristaMetricsRecorderInterface
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:47
name
name:
string
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:51
traceProvider
traceProvider:
NodeTracerProvider
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:46
Methods
destroy()
destroy():
Promise<void>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:249
Returns
Promise<void>
getInFlightExecutionCount()
getInFlightExecutionCount():
number
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:263
Returns
number
getInFlightExecutionCounts()
getInFlightExecutionCounts():
InFlightExecutionCounts
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:267
Returns
getPausedSubscriptionConsumers()
getPausedSubscriptionConsumers():
PausedSubscriptionConsumersByRegistrationKey
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:271
Returns
PausedSubscriptionConsumersByRegistrationKey
getTracer()
getTracer():
Tracer
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:141
Returns open telemetry tracer of this service
Returns
Tracer
Tracer
openStream()
openStream<
Chunk,Final>(_input,_ttl?):Promise<StreamHandle<Chunk,Final>>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:277
Type Parameters
Chunk
Chunk = unknown
Final
Final = unknown
Parameters
_input
Omit<StreamOpenRequest, "id" | "messageType" | "timestamp" | "correlationId">
_ttl?
number
Returns
Promise<StreamHandle<Chunk, Final>>
registerStream()
registerStream(
_address,_cb,_metadata,_eventBridgeConfig):Promise<string>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:284
Parameters
_address
_cb
(message) => Promise<void>
_metadata
_eventBridgeConfig
Returns
Promise<string>
resumeSubscriptionConsumer()
resumeSubscriptionConsumer(
_registrationKey):Promise<void>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:275
Parameters
_registrationKey
string
Returns
Promise<void>
runInFlight()
runInFlight<
T>(fn,kind?):Promise<T>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:252
Type Parameters
T
T
Parameters
fn
() => Promise<T>
kind?
"stream" | "command" | "subscription" | "generic"
Returns
Promise<T>
start()
start():
Promise<void>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:250
Returns
Promise<void>
startActiveSpan()
startActiveSpan<
F>(name,opts,context,fn):Promise<F>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:153
Start a child span for opentelemetry tracking
Type Parameters
F
F
Parameters
name
string
name of span
opts
SpanOptions
span options
context
Context | undefined
optional context
fn
(span) => Promise<F>
function to be executed within the span
Returns
Promise<F>
return value of fn
unregisterStream()
unregisterStream(
_address):Promise<void>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:293
Parameters
_address
Returns
Promise<void>
waitForInFlightDrain()
waitForInFlightDrain(
timeoutMs?):Promise<boolean>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:259
Parameters
timeoutMs?
number = ...
Returns
Promise<boolean>
wrapInSpan()
wrapInSpan<
F>(name,opts,fn,context?):Promise<F>
Defined in: core/EventBridge/EventBridgeBaseClass.impl.ts:226
Start span for opentelemetry tracking on same level. The created span will not become the "active" span within opentelemetry!
This means during logging and similar the spanId of parent span is logged.
Use wrapInSpan for marking points in flow of one bigger function, but not to trace the program flow itself
Type Parameters
F
F
Parameters
name
string
name of span
opts
SpanOptions
span options
fn
(span) => Promise<F>
function te be executed in the span
context?
Context
span context
Returns
Promise<F>
return value of fn
