class DatabaseEntriesRepository implements EntriesRepository, ClearableRepository, PrunableRepository, TerminableRepository

Constants

protected MONITORED_TAGS_CONTEXT_KEY

Context key for the per-request monitored tags cache.

Properties

protected string $connection

The database connection name that should be used.

protected int $chunkSize

The number of entries that will be inserted at once into the database.

Methods

__construct(string $connection, int|null $chunkSize = null)

Create a new database repository.

find(mixed $id)

Find the entry with the given ID.

array|Collection
get(string|null $type, EntryQueryOptions $options)

Return all the entries of a given type.

int
countExceptionOccurences(IncomingEntry $exception)

Counts the occurences of an exception.

void
store(Collection $entries)

Store the given array of entries.

void
storeExceptions(Collection $exceptions)

Store the given array of exception entries.

void
storeTags(Collection $results)

Store the tags for the given entries.

void
insertChunkOfTags(array $tags)

Insert a chunk of tags, ignoring unique constraint violations.

Collection|null
update(Collection $updates)

Store the given entry updates and return the failed updates.

void
updateTags(EntryUpdate $entry)

Update tags of the given entry.

array|null
getMonitorTags()

Get the tags that should be monitored.

void
setMonitorTags(array|null $tags)

Set the tags that should be monitored.

void
loadMonitoredTags()

Load the monitored tags from storage.

bool
isMonitoring(array $tags)

Determine if any of the given tags are currently being monitored.

array
monitoring()

Get the list of tags currently being monitored.

void
monitor(array $tags)

Begin monitoring the given list of tags.

void
stopMonitoring(array $tags)

Stop monitoring the given list of tags.

int
prune(DateTimeInterface $before, bool $keepExceptions)

Prune all of the entries older than the given date.

void
clear()

Clear all the entries.

void
terminate()

Perform any clean-up tasks needed after storing Telescope entries.

table(string $table)

Get a query builder instance for the given table.

Details

at line 42
__construct(string $connection, int|null $chunkSize = null)

Create a new database repository.

Parameters

string $connection
int|null $chunkSize

at line 54
EntryResult find(mixed $id)

Find the entry with the given ID.

Parameters

mixed $id

Return Value

EntryResult

at line 78
array|Collection get(string|null $type, EntryQueryOptions $options)

Return all the entries of a given type.

Parameters

string|null $type
EntryQueryOptions $options

Return Value

array|Collection

at line 103
protected int countExceptionOccurences(IncomingEntry $exception)

Counts the occurences of an exception.

Parameters

IncomingEntry $exception

Return Value

int

at line 114
void store(Collection $entries)

Store the given array of entries.

Parameters

Collection $entries

Return Value

void

at line 140
protected void storeExceptions(Collection $exceptions)

Store the given array of exception entries.

Parameters

Collection $exceptions

Return Value

void

at line 168
protected void storeTags(Collection $results)

Store the tags for the given entries.

Parameters

Collection $results

Return Value

void

at line 194
protected void insertChunkOfTags(array $tags)

Insert a chunk of tags, ignoring unique constraint violations.

Parameters

array $tags

Return Value

void

at line 206
Collection|null update(Collection $updates)

Store the given entry updates and return the failed updates.

Parameters

Collection $updates

Return Value

Collection|null

at line 241
protected void updateTags(EntryUpdate $entry)

Update tags of the given entry.

Parameters

EntryUpdate $entry

Return Value

void

at line 269
array|null getMonitorTags()

Get the tags that should be monitored.

Return Value

array|null

at line 277
void setMonitorTags(array|null $tags)

Set the tags that should be monitored.

Parameters

array|null $tags

Return Value

void

at line 285
void loadMonitoredTags()

Load the monitored tags from storage.

Return Value

void

at line 297
bool isMonitoring(array $tags)

Determine if any of the given tags are currently being monitored.

Parameters

array $tags

Return Value

bool

at line 309
array monitoring()

Get the list of tags currently being monitored.

Return Value

array

at line 317
void monitor(array $tags)

Begin monitoring the given list of tags.

Parameters

array $tags

Return Value

void

at line 335
void stopMonitoring(array $tags)

Stop monitoring the given list of tags.

Parameters

array $tags

Return Value

void

at line 345
int prune(DateTimeInterface $before, bool $keepExceptions)

Prune all of the entries older than the given date.

Parameters

DateTimeInterface $before
bool $keepExceptions

Return Value

int

at line 368
void clear()

Clear all the entries.

Return Value

void

at line 382
void terminate()

Perform any clean-up tasks needed after storing Telescope entries.

Return Value

void

at line 390
protected table(string $table)

Get a query builder instance for the given table.

Parameters

string $table