Skip to main content

LogDataSource

Defined in: js-api/src/dapi.ts:2483

Common functionality for handling collections of entities stored on the server. Works with Datagrok REST API, allows to get filtered and paginated lists of entities, Can be extended with specific methods. (i.e. UsersDataSource)

The fluent methods (filter, order, page, by, include, ...) are immutable: each returns a new source and leaves this one as it was, so a source can be kept in a variable and reused as a starting point.

Example​

const projects = grok.dapi.projects.order('createdOn', true);
const recent = await projects.filter('createdOn > -1w').list({pageSize: 20});
const all = await projects.list(); // still unfiltered

Extends​

Constructors​

Constructor​

new LogDataSource(s): LogDataSource

Defined in: js-api/src/dapi.ts:2484

Parameters​

ParameterType
sany

Returns​

LogDataSource

Overrides​

HttpDataSource.constructor

Properties​

PropertyTypeInherited fromDefined in
clsNamestringHttpDataSource.clsNamejs-api/src/dapi.ts:344
dartanyHttpDataSource.dartjs-api/src/dapi.ts:343

Accessors​

activity​

Get Signature​

get activity(): ActivityDataSource

Defined in: js-api/src/dapi.ts:2489

Activity API endpoint

Returns​

ActivityDataSource

Methods​

allPackageVersions()​

allPackageVersions(): this

Defined in: js-api/src/dapi.ts:425

A source without package version isolation: entities of all package versions, not only the current one.

Returns​

this

Inherited from​

HttpDataSource.allPackageVersions


by()​

by(i): this

Defined in: js-api/src/dapi.ts:430

A source that returns at most [i] entities per page. See also page.

Parameters​

ParameterType
inumber

Returns​

this

Inherited from​

HttpDataSource.by


count()​

count(): Promise<number>

Defined in: js-api/src/dapi.ts:396

Counts entities that satisfy the filtering criteria (see filter). See examples: https://public.datagrok.ai/js/samples/dapi/projects-list Smart filter: https://datagrok.ai/help/datagrok/smart-search

Returns​

Promise<number>

Inherited from​

HttpDataSource.count


delete()​

delete(e): Promise<void>

Defined in: js-api/src/dapi.ts:420

Deletes an entity.

Parameters​

ParameterType
eDartObject

Returns​

Promise<void>

Inherited from​

HttpDataSource.delete


filter()​

filter(w): this

Defined in: js-api/src/dapi.ts:450

A source filtered by [w]; replaces the filter of this source, if any. Also can be set with list method "options" parameter See example: https://public.datagrok.ai/js/samples/dapi/projects-list Smart filter: https://datagrok.ai/help/datagrok/concepts/objects#entity-search

Parameters​

ParameterType
wstring

Returns​

this

Inherited from​

HttpDataSource.filter


find()​

find(id): Promise<LogEvent>

Defined in: js-api/src/dapi.ts:410

Returns an entity with the specified id. Throws an exception if an entity does not exist, or is not accessible in the current context. Sample: https://public.datagrok.ai/js/samples/data-access/save-and-load-df

Parameters​

ParameterTypeDescription
idstringGUID of the corresponding object

Returns​

Promise<LogEvent>

{Promise<object>} - entity.

Inherited from​

HttpDataSource.find


first()​

first(): Promise<LogEvent>

Defined in: js-api/src/dapi.ts:401

Returns the first entity that satisfies the filtering criteria (see filter).

Returns​

Promise<LogEvent>

Inherited from​

HttpDataSource.first


getArchiveEvents()​

getArchiveEvents(connection, key): Promise<DataFrame>

Defined in: js-api/src/dapi.ts:2536

Decodes one archived object into log events, same shape as getCloudLogEvents.

Parameters​

ParameterType
connectionstring
keystring

Returns​

Promise<DataFrame>


getArchiveObjects()​

getArchiveObjects(connection, options?): Promise<DataFrame>

Defined in: js-api/src/dapi.ts:2531

Objects in the write-once log archive under prefix — key, modified, size.

Listing is the archive's only index; the keys carry the delivery date. connection is an S3 data connection pointing at the archive bucket.

Parameters​

ParameterType
connectionstring
options?{ limit?: number; prefix?: string; }
options.limit?number
options.prefix?string

Returns​

Promise<DataFrame>


getCloudLogEvents()​

getCloudLogEvents(group, start, end, options?): Promise<DataFrame>

Defined in: js-api/src/dapi.ts:2519

Events from a cloud log group — the hot, queryable tier (30 days).

filter is a CloudWatch filter pattern, not a regular expression: a bare word matches a substring, ?a ?b is OR, -x excludes.

Parameters​

ParameterType
groupstring
startDayjs
endDayjs
options?{ connection?: string; filter?: string; limit?: number; }
options.connection?string
options.filter?string
options.limit?number

Returns​

Promise<DataFrame>

Example​

const df = await grok.dapi.log.getCloudLogEvents('/datagrok/public',
dayjs().subtract(1, 'hour'), dayjs(), {filter: 'error'});

getCloudLogGroups()​

getCloudLogGroups(options?): Promise<string[]>

Defined in: js-api/src/dapi.ts:2505

Names of the cloud log groups this instance can read.

Needs the ViewTelemetry permission. Without a connection the server uses its own AWS role.

Parameters​

ParameterType
options?{ connection?: string; prefix?: string; }
options.connection?string
options.prefix?string

Returns​

Promise<string[]>

Example​

const groups = await grok.dapi.log.getCloudLogGroups({prefix: '/datagrok/'});

getTimeline()​

getTimeline(query): Promise<TimelineRow[]>

Defined in: js-api/src/dapi.ts:2551

The events and HTTP requests of a session from from to to (by default from + 10 minutes, at most 2 hours later), in time order (GET /log/timeline); limit defaults to 500, at most 5000. Needs the ViewTelemetry permission, except for the current session.

Sample: https://public.datagrok.ai/js/samples/dapi/log-timeline

Parameters​

ParameterType
query{ from: string | Date; limit?: number; session: string; to?: string | Date; }
query.fromstring | Date
query.limit?number
query.sessionstring
query.to?string | Date

Returns​

Promise<TimelineRow[]>

Example​

const session = (await grok.dapi.users.currentSession()).id;
const rows = await grok.dapi.log.getTimeline({session, from: new Date(Date.now() - 5 * 60000)});

include()​

include(include): this

Defined in: js-api/src/dapi.ts:460

A source that also loads the [include]d properties of every entity (adds to this source's includes).

Parameters​

ParameterType
includestring

Returns​

this

Inherited from​

HttpDataSource.include


list()​

list(options?): Promise<LogEvent[]>

Defined in: js-api/src/dapi.ts:380

Returns all entities that satisfy the filtering criteria (see filter). See examples: https://public.datagrok.ai/js/samples/dapi/projects-list Smart filter: https://datagrok.ai/help/datagrok/smart-search

Parameters​

ParameterType
options{ filter?: string; order?: string; pageNumber?: number; pageSize?: number; }
options.filter?string
options.order?string
options.pageNumber?number
options.pageSize?number

Returns​

Promise<LogEvent[]>

Inherited from​

HttpDataSource.list


nextPage()​

nextPage(): this

Defined in: js-api/src/dapi.ts:442

A source for the page after this one (the first call gives page 1). Reassign to advance: source = source.nextPage(). See examples: https://public.datagrok.ai/js/samples/dapi/projects-list

Returns​

this

Inherited from​

HttpDataSource.nextPage


order()​

order(fieldName, desc?): this

Defined in: js-api/src/dapi.ts:455

A source ordered by [fieldName]; replaces the order of this source, if any.

Parameters​

ParameterTypeDefault value
fieldNamestringundefined
descbooleanfalse

Returns​

this

Inherited from​

HttpDataSource.order


page()​

page(i): this

Defined in: js-api/src/dapi.ts:435

A source restricted to page [i]. See also nextPage.

Parameters​

ParameterType
inumber

Returns​

this

Inherited from​

HttpDataSource.page


save()​

save(e): Promise<LogEvent>

Defined in: js-api/src/dapi.ts:415

Saves an entity; the saved copy comes back with this source's includes loaded.

Parameters​

ParameterType
eDartObject

Returns​

Promise<LogEvent>

Inherited from​

HttpDataSource.save


where()​

where(options?): LogDataSource

Defined in: js-api/src/dapi.ts:2493

Parameters​

ParameterType
options?{ end?: Dayjs; entityId?: string; favoritesOnly?: boolean; start?: Dayjs; }
options.end?Dayjs
options.entityId?string
options.favoritesOnly?boolean
options.start?Dayjs

Returns​

LogDataSource


with()​

protected with(patch): this

Defined in: js-api/src/dapi.ts:355

A copy of this source whose query has [patch] applied. The Dart handle is shared; its state is rebuilt from the query right before every request, so the copies never observe each other.

Parameters​

ParameterType
patchPartial<DataSourceQuery>

Returns​

this

Inherited from​

HttpDataSource.with