Skip to main content

Interface: OperationalHooksConfig<T>

Defined in: electron/utils/operationalHooks.ts:73

Configuration for operational hooks.

Type Parameters

T

T = unknown

Properties

backoff?

optional backoff: "linear" | "exponential"

Defined in: electron/utils/operationalHooks.ts:79

Backoff strategy for retry delays.

Default Value

"exponential";

context?

optional context: UnknownRecord

Defined in: electron/utils/operationalHooks.ts:84

Context data to include in events.


emitEvents?

optional emitEvents: boolean

Defined in: electron/utils/operationalHooks.ts:91

Whether to emit events for this operation.

Default Value

true;

eventEmitter?

optional eventEmitter: TypedEventBus<UptimeEvents>

Defined in: electron/utils/operationalHooks.ts:96

Event emitter for operation events.


failureLogLevel?

optional failureLogLevel: OperationalLogLevel | (error: Error, attempt: number, maxRetries: number) => OperationalLogLevel

Defined in: electron/utils/operationalHooks.ts:108

Customize the log level used when the operation fails permanently.

Remarks

Accepts either a static level or a callback that derives the level from the caught error context. Invalid values fall back to the default setting.

Default Value

"error";

initialDelay?

optional initialDelay: number

Defined in: electron/utils/operationalHooks.ts:121

Initial delay between retries in milliseconds.

Default Value

100;

maxRetries?

optional maxRetries: number

Defined in: electron/utils/operationalHooks.ts:128

Maximum number of retry attempts.

Default Value

3;

onFailure()?

optional onFailure: (error: Error, attempts: number) => void | Promise<void>

Defined in: electron/utils/operationalHooks.ts:133

Callback when operation fails permanently.

Parameters

error

Error

attempts

number

Returns

void | Promise<void>


onRetry()?

optional onRetry: (attempt: number, error: Error) => void | Promise<void>

Defined in: electron/utils/operationalHooks.ts:138

Callback when retry is attempted.

Parameters

attempt

number

error

Error

Returns

void | Promise<void>


onSuccess()?

optional onSuccess: (result: T) => void | Promise<void>

Defined in: electron/utils/operationalHooks.ts:143

Callback when operation succeeds.

Parameters

result

T

Returns

void | Promise<void>


operationName

operationName: string

Defined in: electron/utils/operationalHooks.ts:148

Name of the operation for logging and event emission.


throwOnFailure?

optional throwOnFailure: boolean

Defined in: electron/utils/operationalHooks.ts:155

Whether to throw on final failure.

Default Value

true;