class ConsoleSchedulingIntegration extends Feature

Traits

Track pushed scopes and spans using coroutine-local storage.

Constants

CHECK_INS_CONTEXT_KEY

The context key for the check-ins in progress in the current coroutine.

Methods

__construct(Container $container)

Create a new feature instance.

from  Feature
bool
isApplicable()

Indicate if the feature is applicable to the current environment.

void
register()

Register the sentryMonitor scheduling macro.

void
onBoot()

Set up the feature in the environment.

void
onBootInactive()

Set up the feature in the environment in an inactive state (when no DSN was set).

void
boot()

Initialize the feature.

from  Feature
void
bootInactive()

Initialize the feature in an inactive state (when no DSN was set).

from  Feature
array
getUserConfig()

Retrieve the user configuration.

from  Feature
bool
shouldSendDefaultPii()

Determine if default PII should be sent.

from  Feature
bool
shouldCollectGenAiInputs()

Determine whether AI inputs may be collected.

from  Feature
bool
shouldCollectGenAiOutputs()

Determine whether AI outputs may be collected.

from  Feature
bool
isTracingFeatureEnabled(string $feature, bool $default = true)

Indicate if the given feature is enabled for tracing.

from  Feature
bool
isBreadcrumbFeatureEnabled(string $feature, bool $default = true)

Indicate if the given feature is enabled for breadcrumbs.

from  Feature
bool
canRecordSpans()

Determine if the active SDK client can record spans.

from  Feature
bool
canRecordBreadcrumbs()

Determine if the active SDK client can record breadcrumbs.

from  Feature
void
pushSpan(Span $span)

Push a span onto the coroutine-local stack and set it as current on the hub.

Scope
pushScope()

Push a scope onto the hub and track the count in coroutine-local storage.

void
trackLocalSpan(string $key, Span $span)

Track an operation-local span without making it current on the Hub.

Span|null
maybePopSpan()

Pop a span from the coroutine-local stack and restore the parent span.

void
maybePopScope()

Pop a scope from the hub if one was pushed in this coroutine.

Span|null
maybeFinishSpan(SpanStatus|null $status = null)

Finish the current span if one exists on the coroutine-local stack.

Span|null
maybeFinishLocalSpan(string $key, SpanStatus|null $status = null)

Finish an operation-local span by key if one exists.

Span|null
getParentSpanIfSampled()

Get the current span if it is sampled.

void
withParentSpanIfSampled(callable $callback)

Call the callback with the current span if it is sampled.

SpanStatus|null
cancellationStatus(Throwable $cancellation, Throwable|null $exception = null)

Get the status of an operation that cancellation stopped.

void
handleScheduledTaskStarting(ScheduledTaskStarting $event)

Start tracing the scheduled task.

void
handleScheduledTaskFinished(ScheduledTaskFinished $event)

Finish tracing the scheduled task with its published outcome.

void
handleScheduledTaskFailed()

Mark tracing and the unfinished check-ins of the scheduled task as failed.

void
handleScheduledTaskCanceled(ScheduledTaskCanceled $event)

Finish tracing the scheduled task that cancellation stopped before its outcome was published.

Details

in Feature at line 35
__construct(Container $container)

Create a new feature instance.

Parameters

Container $container

at line 124
bool isApplicable()

Indicate if the feature is applicable to the current environment.

Return Value

bool

at line 44
void register()

Register the sentryMonitor scheduling macro.

Return Value

void

at line 132
void onBoot()

Set up the feature in the environment.

Return Value

void

at line 153
void onBootInactive()

Set up the feature in the environment in an inactive state (when no DSN was set).

Return Value

void

in Feature at line 71
void boot()

Initialize the feature.

Return Value

void

in Feature at line 81
void bootInactive()

Initialize the feature in an inactive state (when no DSN was set).

Return Value

void

in Feature at line 91
protected array getUserConfig()

Retrieve the user configuration.

Return Value

array

in Feature at line 99
protected bool shouldSendDefaultPii()

Determine if default PII should be sent.

Return Value

bool

in Feature at line 113
protected bool shouldCollectGenAiInputs()

Determine whether AI inputs may be collected.

Return Value

bool

in Feature at line 121
protected bool shouldCollectGenAiOutputs()

Determine whether AI outputs may be collected.

Return Value

bool

in Feature at line 146
protected bool isTracingFeatureEnabled(string $feature, bool $default = true)

Indicate if the given feature is enabled for tracing.

Parameters

string $feature
bool $default

Return Value

bool

in Feature at line 159
protected bool isBreadcrumbFeatureEnabled(string $feature, bool $default = true)

Indicate if the given feature is enabled for breadcrumbs.

Parameters

string $feature
bool $default

Return Value

bool

in Feature at line 182
protected bool canRecordSpans()

Determine if the active SDK client can record spans.

Return Value

bool

in Feature at line 196
protected bool canRecordBreadcrumbs()

Determine if the active SDK client can record breadcrumbs.

Return Value

bool

protected void pushSpan(Span $span)

Push a span onto the coroutine-local stack and set it as current on the hub.

Parameters

Span $span

Return Value

void

protected Scope pushScope()

Push a scope onto the hub and track the count in coroutine-local storage.

Return Value

Scope

protected void trackLocalSpan(string $key, Span $span)

Track an operation-local span without making it current on the Hub.

Parameters

string $key
Span $span

Return Value

void

protected Span|null maybePopSpan()

Pop a span from the coroutine-local stack and restore the parent span.

Return Value

Span|null

protected void maybePopScope()

Pop a scope from the hub if one was pushed in this coroutine.

Return Value

void

protected Span|null maybeFinishSpan(SpanStatus|null $status = null)

Finish the current span if one exists on the coroutine-local stack.

Parameters

SpanStatus|null $status

Return Value

Span|null

protected Span|null maybeFinishLocalSpan(string $key, SpanStatus|null $status = null)

Finish an operation-local span by key if one exists.

Parameters

string $key
SpanStatus|null $status

Return Value

Span|null

in WorksWithSpans at line 18
protected Span|null getParentSpanIfSampled()

Get the current span if it is sampled.

Return Value

Span|null

in WorksWithSpans at line 35
protected void withParentSpanIfSampled(callable $callback)

Call the callback with the current span if it is sampled.

Parameters

callable $callback

Return Value

void

in WorksWithSpans at line 53
protected SpanStatus|null cancellationStatus(Throwable $cancellation, Throwable|null $exception = null)

Get the status of an operation that cancellation stopped.

A direct cancellation with no earlier failure leaves the status unset: it is control flow, and the SDK has no canceled status. A known failure, or a cleanup failure carrying the cancellation, is an error.

Parameters

Throwable $cancellation
Throwable|null $exception

Return Value

SpanStatus|null

at line 164
void handleScheduledTaskStarting(ScheduledTaskStarting $event)

Start tracing the scheduled task.

Parameters

ScheduledTaskStarting $event

Return Value

void

at line 184
void handleScheduledTaskFinished(ScheduledTaskFinished $event)

Finish tracing the scheduled task with its published outcome.

Parameters

ScheduledTaskFinished $event

Return Value

void

at line 192
void handleScheduledTaskFailed()

Mark tracing and the unfinished check-ins of the scheduled task as failed.

Return Value

void

at line 204
void handleScheduledTaskCanceled(ScheduledTaskCanceled $event)

Finish tracing the scheduled task that cancellation stopped before its outcome was published.

A direct cancellation leaves an unfinished check-in without a terminal status: the SDK has no canceled status, and the cancellation is not a task failure.

Parameters

ScheduledTaskCanceled $event

Return Value

void