Skip to main content

Interface: StorageInterface

Defined in: core/storage/storage.interface.ts:13

Methods​

addMonitoredTag()​

addMonitoredTag(tag): Promise<MonitoredTag>

Defined in: core/storage/storage.interface.ts:133

Add a monitored tag

Parameters​

tag​

string

Returns​

Promise<MonitoredTag>


addTags()​

addTags(entryId, tags): Promise<void>

Defined in: core/storage/storage.interface.ts:106

Add tags to an entry

Parameters​

entryId​

number

tags​

string[]

Returns​

Promise<void>


clear()​

clear(type?): Promise<number>

Defined in: core/storage/storage.interface.ts:94

Delete entries — all of them, or all of one type.

Different from pruning in two ways, both deliberate: age is not consulted, and an entry carrying a monitored tag goes with the rest. Monitoring says do not let pruning take these; somebody pressing a button that says delete has said something else.

Returns how many were deleted, because a reader who pressed it deserves to be told what happened.

Parameters​

type?​

"query" | "request" | "exception" | "log" | "cache" | "event" | "job" | "schedule" | "mail" | "http-client" | "redis" | "model" | "notification" | "view" | "command" | "gate" | "batch" | "dump" | "graphql"

Returns​

Promise<number>


close()​

close(): Promise<void>

Defined in: core/storage/storage.interface.ts:99

Close the storage connection

Returns​

Promise<void>


count()​

count(type?): Promise<number>

Defined in: core/storage/storage.interface.ts:51

Get entries count by type

Parameters​

type?​

"query" | "request" | "exception" | "log" | "cache" | "event" | "job" | "schedule" | "mail" | "http-client" | "redis" | "model" | "notification" | "view" | "command" | "gate" | "batch" | "dump" | "graphql"

Returns​

Promise<number>


find()​

find(filter): Promise<Entry[]>

Defined in: core/storage/storage.interface.ts:33

Find entries by filter

Parameters​

filter​

EntryFilter

Returns​

Promise<Entry[]>


findByFamilyHash()​

findByFamilyHash(familyHash, limit?): Promise<Entry[]>

Defined in: core/storage/storage.interface.ts:167

Find entries by family hash

Parameters​

familyHash​

string

limit?​

number

Returns​

Promise<Entry[]>


findById()​

findById(id): Promise<Entry | null>

Defined in: core/storage/storage.interface.ts:46

Find a single entry by ID

Parameters​

id​

number

Returns​

Promise<Entry | null>


findByTags()​

findByTags(tags, logic?, limit?): Promise<Entry[]>

Defined in: core/storage/storage.interface.ts:126

Find entries by tags

Parameters​

tags​

string[]

logic?​

"AND" | "OR"

limit?​

number

Returns​

Promise<Entry[]>


findWithCursor()​

findWithCursor(type, params): Promise<CursorPaginatedResponse<Entry>>

Defined in: core/storage/storage.interface.ts:38

Find entries with cursor-based pagination

Parameters​

type​

"query" | "request" | "exception" | "log" | "cache" | "event" | "job" | "schedule" | "mail" | "http-client" | "redis" | "model" | "notification" | "view" | "command" | "gate" | "batch" | "dump" | "graphql" | undefined

params​

CursorPaginationParams

Returns​

Promise<CursorPaginatedResponse<Entry>>


getAllTags()​

getAllTags(): Promise<TagWithCount[]>

Defined in: core/storage/storage.interface.ts:121

Get all tags with their counts

Returns​

Promise<TagWithCount[]>


getEntryTags()​

getEntryTags(entryId): Promise<string[]>

Defined in: core/storage/storage.interface.ts:116

Get tags for an entry

Parameters​

entryId​

number

Returns​

Promise<string[]>


getGroupedByFamilyHash()​

getGroupedByFamilyHash(type?, limit?): Promise<object[]>

Defined in: core/storage/storage.interface.ts:172

Get grouped entries by family hash

Parameters​

type?​

"query" | "request" | "exception" | "log" | "cache" | "event" | "job" | "schedule" | "mail" | "http-client" | "redis" | "model" | "notification" | "view" | "command" | "gate" | "batch" | "dump" | "graphql"

limit?​

number

Returns​

Promise<object[]>


getLatestSequence()​

getLatestSequence(type?): Promise<number | null>

Defined in: core/storage/storage.interface.ts:56

Get the latest entry sequence (ID)

Parameters​

type?​

"query" | "request" | "exception" | "log" | "cache" | "event" | "job" | "schedule" | "mail" | "http-client" | "redis" | "model" | "notification" | "view" | "command" | "gate" | "batch" | "dump" | "graphql"

Returns​

Promise<number | null>


getMonitoredTags()​

getMonitoredTags(): Promise<MonitoredTag[]>

Defined in: core/storage/storage.interface.ts:143

Get all monitored tags

Returns​

Promise<MonitoredTag[]>


getStats()​

getStats(): Promise<EntryStats>

Defined in: core/storage/storage.interface.ts:66

Get statistics

Returns​

Promise<EntryStats>


getStorageStats()​

getStorageStats(): Promise<StorageStats>

Defined in: core/storage/storage.interface.ts:71

Get storage statistics including size info

Returns​

Promise<StorageStats>


hasEntriesAfter()​

hasEntriesAfter(sequence, type?): Promise<number>

Defined in: core/storage/storage.interface.ts:61

Check if there are entries after a given sequence

Parameters​

sequence​

number

type?​

"query" | "request" | "exception" | "log" | "cache" | "event" | "job" | "schedule" | "mail" | "http-client" | "redis" | "model" | "notification" | "view" | "command" | "gate" | "batch" | "dump" | "graphql"

Returns​

Promise<number>


initialize()​

initialize(): Promise<void>

Defined in: core/storage/storage.interface.ts:17

Initialize the storage (create tables, etc.)

Returns​

Promise<void>


prune()​

prune(before): Promise<number>

Defined in: core/storage/storage.interface.ts:76

Delete entries older than given date

Parameters​

before​

Date

Returns​

Promise<number>


pruneByType()​

pruneByType(type, before): Promise<number>

Defined in: core/storage/storage.interface.ts:81

Delete entries older than given date for a specific type

Parameters​

type​

"query" | "request" | "exception" | "log" | "cache" | "event" | "job" | "schedule" | "mail" | "http-client" | "redis" | "model" | "notification" | "view" | "command" | "gate" | "batch" | "dump" | "graphql"

before​

Date

Returns​

Promise<number>


removeMonitoredTag()​

removeMonitoredTag(tag): Promise<void>

Defined in: core/storage/storage.interface.ts:138

Remove a monitored tag

Parameters​

tag​

string

Returns​

Promise<void>


removeTags()​

removeTags(entryId, tags): Promise<void>

Defined in: core/storage/storage.interface.ts:111

Remove tags from an entry

Parameters​

entryId​

number

tags​

string[]

Returns​

Promise<void>


resolveEntry()​

resolveEntry(id): Promise<void>

Defined in: core/storage/storage.interface.ts:150

Mark an entry as resolved

Parameters​

id​

number

Returns​

Promise<void>


save()​

save(entry): Promise<Entry>

Defined in: core/storage/storage.interface.ts:22

Save an entry to storage

Parameters​

entry​

Entry

Returns​

Promise<Entry>


saveBatch()​

saveBatch(entries): Promise<Entry[]>

Defined in: core/storage/storage.interface.ts:28

Save multiple entries at once Returns the saved entries with IDs

Parameters​

entries​

Entry[]

Returns​

Promise<Entry[]>


unresolveEntry()​

unresolveEntry(id): Promise<void>

Defined in: core/storage/storage.interface.ts:155

Mark an entry as unresolved

Parameters​

id​

number

Returns​

Promise<void>


updateFamilyHash()​

updateFamilyHash(id, familyHash): Promise<void>

Defined in: core/storage/storage.interface.ts:162

Update family hash for an entry

Parameters​

id​

number

familyHash​

string

Returns​

Promise<void>