@sentio/sdk 2.3.0 → 2.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,12 +1,9 @@
1
1
  import { ProcessResult, RecordMetaData } from '@sentio/protos';
2
2
  import { EventLogger } from './event-logger.js';
3
3
  import { Meter, Labels } from './meter.js';
4
- import { BoundedEventTracker } from './event-tracker.js';
5
4
  export declare abstract class BaseContext {
6
5
  meter: Meter;
7
6
  eventLogger: EventLogger;
8
- /** @deprecated use {@link this.eventLogger} instead */
9
- eventTracker: BoundedEventTracker;
10
7
  _res: ProcessResult;
11
8
  protected constructor();
12
9
  getProcessResult(): ProcessResult;
@@ -1,11 +1,8 @@
1
1
  import { EventLogger } from './event-logger.js';
2
2
  import { Meter } from './meter.js';
3
- import { BoundedEventTracker } from './event-tracker.js';
4
3
  export class BaseContext {
5
4
  meter;
6
5
  eventLogger;
7
- /** @deprecated use {@link this.eventLogger} instead */
8
- eventTracker;
9
6
  _res = {
10
7
  counters: [],
11
8
  events: [],
@@ -15,8 +12,6 @@ export class BaseContext {
15
12
  constructor() {
16
13
  this.meter = new Meter(this);
17
14
  this.eventLogger = new EventLogger(this);
18
- // eslint-disable-next-line deprecation/deprecation
19
- this.eventTracker = new BoundedEventTracker(this);
20
15
  }
21
16
  getProcessResult() {
22
17
  return this._res;
@@ -1 +1 @@
1
- {"version":3,"file":"base-context.js","sourceRoot":"","sources":["../../src/core/base-context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAU,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAExD,MAAM,OAAgB,WAAW;IAC/B,KAAK,CAAO;IACZ,WAAW,CAAa;IAExB,uDAAuD;IACvD,YAAY,CAAqB;IAEjC,IAAI,GAAkB;QACpB,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;KACX,CAAA;IAED;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;QACxC,mDAAmD;QACnD,IAAI,CAAC,YAAY,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;CAGF","sourcesContent":["import { ProcessResult, RecordMetaData } from '@sentio/protos'\nimport { EventLogger } from './event-logger.js'\nimport { Meter, Labels } from './meter.js'\nimport { BoundedEventTracker } from './event-tracker.js'\n\nexport abstract class BaseContext {\n meter: Meter\n eventLogger: EventLogger\n\n /** @deprecated use {@link this.eventLogger} instead */\n eventTracker: BoundedEventTracker\n\n _res: ProcessResult = {\n counters: [],\n events: [],\n exports: [],\n gauges: [],\n }\n\n protected constructor() {\n this.meter = new Meter(this)\n this.eventLogger = new EventLogger(this)\n // eslint-disable-next-line deprecation/deprecation\n this.eventTracker = new BoundedEventTracker(this)\n }\n\n getProcessResult(): ProcessResult {\n return this._res\n }\n\n abstract getMetaData(name: string, labels: Labels): RecordMetaData\n}\n"]}
1
+ {"version":3,"file":"base-context.js","sourceRoot":"","sources":["../../src/core/base-context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAU,MAAM,YAAY,CAAA;AAE1C,MAAM,OAAgB,WAAW;IAC/B,KAAK,CAAO;IACZ,WAAW,CAAa;IAExB,IAAI,GAAkB;QACpB,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;KACX,CAAA;IAED;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;CAGF","sourcesContent":["import { ProcessResult, RecordMetaData } from '@sentio/protos'\nimport { EventLogger } from './event-logger.js'\nimport { Meter, Labels } from './meter.js'\n\nexport abstract class BaseContext {\n meter: Meter\n eventLogger: EventLogger\n\n _res: ProcessResult = {\n counters: [],\n events: [],\n exports: [],\n gauges: [],\n }\n\n protected constructor() {\n this.meter = new Meter(this)\n this.eventLogger = new EventLogger(this)\n }\n\n getProcessResult(): ProcessResult {\n return this._res\n }\n\n abstract getMetaData(name: string, labels: Labels): RecordMetaData\n}\n"]}
@@ -1,10 +1,13 @@
1
1
  import { BaseContext } from './base-context.js';
2
- import { NamedResultDescriptor } from './metadata.js';
3
- import { Event } from './event-tracker.js';
4
- export type Attributes = Record<string, any>;
5
- export declare class EventLogger extends NamedResultDescriptor {
2
+ import { LogLevel } from '@sentio/protos';
3
+ export interface Event {
4
+ distinctId?: string;
5
+ severity?: LogLevel;
6
+ message?: string;
7
+ [key: string]: any;
8
+ }
9
+ export declare class EventLogger {
6
10
  private readonly ctx;
7
- constructor(ctx: BaseContext, name?: string);
8
- withName(name: string): EventLogger;
11
+ constructor(ctx: BaseContext);
9
12
  emit(eventName: string, event: Event): void;
10
13
  }
@@ -1,15 +1,10 @@
1
1
  import { LogLevel } from '@sentio/protos';
2
- import { NamedResultDescriptor } from './metadata.js';
3
2
  import { normalizeAttribute } from './normalization.js';
4
- export class EventLogger extends NamedResultDescriptor {
3
+ export class EventLogger {
5
4
  ctx;
6
- constructor(ctx, name = '') {
7
- super(name);
5
+ constructor(ctx) {
8
6
  this.ctx = ctx;
9
7
  }
10
- withName(name) {
11
- return new EventLogger(this.ctx, name);
12
- }
13
8
  emit(eventName, event) {
14
9
  const { distinctId, severity, message, ...payload } = event;
15
10
  const res = {
@@ -1 +1 @@
1
- {"version":3,"file":"event-logger.js","sourceRoot":"","sources":["../../src/core/event-logger.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAKvD,MAAM,OAAO,WAAY,SAAQ,qBAAqB;IACnC,GAAG,CAAa;IAEjC,YAAY,GAAgB,EAAE,IAAI,GAAG,EAAE;QACrC,KAAK,CAAC,IAAI,CAAC,CAAA;QACX,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IAChB,CAAC;IAED,QAAQ,CAAC,IAAY;QACnB,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACxC,CAAC;IAED,IAAI,CAAC,SAAiB,EAAE,KAAY;QAClC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAA;QAE3D,MAAM,GAAG,GAAwB;YAC/B,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC;YAC7C,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC,IAAI;YACnC,OAAO,EAAE,OAAO,IAAI,EAAE;YACtB,gBAAgB,EAAE,UAAU,IAAI,EAAE;YAClC,UAAU,EAAE,kBAAkB,CAAC,OAAO,CAAC;YACvC,WAAW,EAAE,SAAS;YACtB,QAAQ,EAAE,IAAI;SACf,CAAA;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAChC,CAAC;CACF","sourcesContent":["import { BaseContext } from './base-context.js'\nimport { EventTrackingResult, LogLevel } from '@sentio/protos'\nimport { NamedResultDescriptor } from './metadata.js'\nimport { normalizeAttribute } from './normalization.js'\nimport { Event } from './event-tracker.js'\n\nexport type Attributes = Record<string, any>\n\nexport class EventLogger extends NamedResultDescriptor {\n private readonly ctx: BaseContext\n\n constructor(ctx: BaseContext, name = '') {\n super(name)\n this.ctx = ctx\n }\n\n withName(name: string) {\n return new EventLogger(this.ctx, name)\n }\n\n emit(eventName: string, event: Event) {\n const { distinctId, severity, message, ...payload } = event\n\n const res: EventTrackingResult = {\n metadata: this.ctx.getMetaData(eventName, {}),\n severity: severity || LogLevel.INFO,\n message: message || '',\n distinctEntityId: distinctId || '',\n attributes: normalizeAttribute(payload),\n runtimeInfo: undefined,\n noMetric: true,\n }\n this.ctx._res.events.push(res)\n }\n}\n"]}
1
+ {"version":3,"file":"event-logger.js","sourceRoot":"","sources":["../../src/core/event-logger.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAavD,MAAM,OAAO,WAAW;IACL,GAAG,CAAa;IAEjC,YAAY,GAAgB;QAC1B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IAChB,CAAC;IAED,IAAI,CAAC,SAAiB,EAAE,KAAY;QAClC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAA;QAE3D,MAAM,GAAG,GAAwB;YAC/B,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC;YAC7C,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC,IAAI;YACnC,OAAO,EAAE,OAAO,IAAI,EAAE;YACtB,gBAAgB,EAAE,UAAU,IAAI,EAAE;YAClC,UAAU,EAAE,kBAAkB,CAAC,OAAO,CAAC;YACvC,WAAW,EAAE,SAAS;YACtB,QAAQ,EAAE,IAAI;SACf,CAAA;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAChC,CAAC;CACF","sourcesContent":["import { BaseContext } from './base-context.js'\nimport { EventTrackingResult, LogLevel } from '@sentio/protos'\nimport { normalizeAttribute } from './normalization.js'\n\nexport interface Event {\n // The unique identifier of main identity associate with an event\n // .e.g user id / token address / account address / contract address id\n //\n distinctId?: string\n severity?: LogLevel\n message?: string\n\n [key: string]: any\n}\n\nexport class EventLogger {\n private readonly ctx: BaseContext\n\n constructor(ctx: BaseContext) {\n this.ctx = ctx\n }\n\n emit(eventName: string, event: Event) {\n const { distinctId, severity, message, ...payload } = event\n\n const res: EventTrackingResult = {\n metadata: this.ctx.getMetaData(eventName, {}),\n severity: severity || LogLevel.INFO,\n message: message || '',\n distinctEntityId: distinctId || '',\n attributes: normalizeAttribute(payload),\n runtimeInfo: undefined,\n noMetric: true,\n }\n this.ctx._res.events.push(res)\n }\n}\n"]}
@@ -1,18 +1,7 @@
1
1
  import { BaseContext } from './base-context.js';
2
- import { LogLevel } from '@sentio/protos';
3
2
  import { MapStateStorage } from '@sentio/runtime';
4
3
  import { NamedResultDescriptor } from './metadata.js';
5
- export interface Event {
6
- distinctId?: string;
7
- severity?: LogLevel;
8
- message?: string;
9
- [key: string]: any;
10
- }
11
- export declare class BoundedEventTracker {
12
- private readonly ctx;
13
- constructor(ctx: BaseContext);
14
- track(eventName: string, event: Event): void;
15
- }
4
+ import { Event } from './event-logger.js';
16
5
  export interface TrackerOptions {
17
6
  totalByDay?: boolean;
18
7
  unique?: boolean;
@@ -2,25 +2,6 @@ import { LogLevel } from '@sentio/protos';
2
2
  import { MapStateStorage } from '@sentio/runtime';
3
3
  import { NamedResultDescriptor } from './metadata.js';
4
4
  import { normalizeAttribute } from './normalization.js';
5
- export class BoundedEventTracker {
6
- ctx;
7
- constructor(ctx) {
8
- this.ctx = ctx;
9
- }
10
- track(eventName, event) {
11
- const { distinctId, severity, message, ...payload } = event;
12
- const res = {
13
- metadata: this.ctx.getMetaData(eventName, {}),
14
- severity: severity || LogLevel.INFO,
15
- message: message || '',
16
- distinctEntityId: distinctId || '',
17
- attributes: payload,
18
- runtimeInfo: undefined,
19
- noMetric: true,
20
- };
21
- this.ctx._res.events.push(res);
22
- }
23
- }
24
5
  /** @deprecated */
25
6
  // eslint-disable-next-line deprecation/deprecation
26
7
  export class EventTrackerState extends MapStateStorage {
@@ -1 +1 @@
1
- {"version":3,"file":"event-tracker.js","sourceRoot":"","sources":["../../src/core/event-tracker.ts"],"names":[],"mappings":"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","sourcesContent":["import { BaseContext } from './base-context.js'\nimport { EventTrackingResult, LogLevel } from '@sentio/protos'\nimport { MapStateStorage } from '@sentio/runtime'\nimport { NamedResultDescriptor } from './metadata.js'\nimport { normalizeAttribute } from './normalization.js'\n\nexport interface Event {\n // The unique identifier of main identity associate with an event\n // .e.g user id / token address / account address / contract address id\n //\n distinctId?: string\n severity?: LogLevel\n message?: string\n\n [key: string]: any\n}\n\nexport class BoundedEventTracker {\n private readonly ctx: BaseContext\n\n constructor(ctx: BaseContext) {\n this.ctx = ctx\n }\n\n track(eventName: string, event: Event) {\n const { distinctId, severity, message, ...payload } = event\n\n const res: EventTrackingResult = {\n metadata: this.ctx.getMetaData(eventName, {}),\n severity: severity || LogLevel.INFO,\n message: message || '',\n distinctEntityId: distinctId || '',\n attributes: payload,\n runtimeInfo: undefined,\n noMetric: true,\n }\n this.ctx._res.events.push(res)\n }\n}\n\nexport interface TrackerOptions {\n totalByDay?: boolean\n unique?: boolean\n distinctByDays?: number[]\n}\n\n/** @deprecated */\n// eslint-disable-next-line deprecation/deprecation\nexport class EventTrackerState extends MapStateStorage<EventTracker> {\n // eslint-disable-next-line deprecation/deprecation\n static INSTANCE = new EventTrackerState()\n}\n\n// Track Event with an identity associate with it\n/** @deprecated */\nexport class EventTracker extends NamedResultDescriptor {\n static DEFAULT_OPTIONS: TrackerOptions = {\n totalByDay: true,\n unique: true,\n }\n\n static register(eventName: string, options?: TrackerOptions) {\n // eslint-disable-next-line deprecation/deprecation\n const tracker = new EventTracker(eventName, { ...EventTracker.DEFAULT_OPTIONS, ...options })\n // eslint-disable-next-line deprecation/deprecation\n return EventTrackerState.INSTANCE.getOrSetValue(eventName, tracker)\n }\n\n options: TrackerOptions\n protected constructor(eventName: string, options: TrackerOptions) {\n super(eventName)\n this.options = options\n }\n\n trackEvent(ctx: BaseContext, event: Event) {\n const { distinctId, message, severity, ...payload } = event\n\n const res: EventTrackingResult = {\n message: message || '',\n severity: severity || LogLevel.INFO,\n metadata: ctx.getMetaData(this.name, {}),\n distinctEntityId: distinctId || '',\n attributes: normalizeAttribute(payload),\n runtimeInfo: undefined,\n noMetric: false,\n }\n ctx._res.events.push(res)\n }\n}\n/** @deprecated */\n// eslint-disable-next-line deprecation/deprecation\nexport class AccountEventTracker extends EventTracker {\n static DEFAULT_OPTIONS: TrackerOptions = {\n totalByDay: true,\n unique: true,\n distinctByDays: [1, 7, 30],\n }\n\n static register(eventName?: string, options?: TrackerOptions) {\n if (eventName) {\n eventName = ['user', eventName].join('_')\n } else {\n eventName = 'user'\n }\n // eslint-disable-next-line deprecation/deprecation\n const tracker = new AccountEventTracker(eventName, { ...AccountEventTracker.DEFAULT_OPTIONS, ...options })\n // eslint-disable-next-line deprecation/deprecation\n return EventTrackerState.INSTANCE.getOrSetValue(eventName, tracker)\n }\n}\n"]}
1
+ {"version":3,"file":"event-tracker.js","sourceRoot":"","sources":["../../src/core/event-tracker.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AASvD,kBAAkB;AAClB,mDAAmD;AACnD,MAAM,OAAO,iBAAkB,SAAQ,eAA6B;IAClE,mDAAmD;IACnD,MAAM,CAAC,QAAQ,GAAG,IAAI,iBAAiB,EAAE,CAAA;;AAG3C,iDAAiD;AACjD,kBAAkB;AAClB,MAAM,OAAO,YAAa,SAAQ,qBAAqB;IACrD,MAAM,CAAC,eAAe,GAAmB;QACvC,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,IAAI;KACb,CAAA;IAED,MAAM,CAAC,QAAQ,CAAC,SAAiB,EAAE,OAAwB;QACzD,mDAAmD;QACnD,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,SAAS,EAAE,EAAE,GAAG,YAAY,CAAC,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC,CAAA;QAC5F,mDAAmD;QACnD,OAAO,iBAAiB,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACrE,CAAC;IAED,OAAO,CAAgB;IACvB,YAAsB,SAAiB,EAAE,OAAuB;QAC9D,KAAK,CAAC,SAAS,CAAC,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,UAAU,CAAC,GAAgB,EAAE,KAAY;QACvC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAA;QAE3D,MAAM,GAAG,GAAwB;YAC/B,OAAO,EAAE,OAAO,IAAI,EAAE;YACtB,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC,IAAI;YACnC,QAAQ,EAAE,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACxC,gBAAgB,EAAE,UAAU,IAAI,EAAE;YAClC,UAAU,EAAE,kBAAkB,CAAC,OAAO,CAAC;YACvC,WAAW,EAAE,SAAS;YACtB,QAAQ,EAAE,KAAK;SAChB,CAAA;QACD,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC3B,CAAC;;AAEH,kBAAkB;AAClB,mDAAmD;AACnD,MAAM,OAAO,mBAAoB,SAAQ,YAAY;IACnD,MAAM,CAAC,eAAe,GAAmB;QACvC,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,IAAI;QACZ,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;KAC3B,CAAA;IAED,MAAM,CAAC,QAAQ,CAAC,SAAkB,EAAE,OAAwB;QAC1D,IAAI,SAAS,EAAE;YACb,SAAS,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;SAC1C;aAAM;YACL,SAAS,GAAG,MAAM,CAAA;SACnB;QACD,mDAAmD;QACnD,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC,SAAS,EAAE,EAAE,GAAG,mBAAmB,CAAC,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC,CAAA;QAC1G,mDAAmD;QACnD,OAAO,iBAAiB,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACrE,CAAC","sourcesContent":["import { BaseContext } from './base-context.js'\nimport { EventTrackingResult, LogLevel } from '@sentio/protos'\nimport { MapStateStorage } from '@sentio/runtime'\nimport { NamedResultDescriptor } from './metadata.js'\nimport { normalizeAttribute } from './normalization.js'\nimport { Event } from './event-logger.js'\n\nexport interface TrackerOptions {\n totalByDay?: boolean\n unique?: boolean\n distinctByDays?: number[]\n}\n\n/** @deprecated */\n// eslint-disable-next-line deprecation/deprecation\nexport class EventTrackerState extends MapStateStorage<EventTracker> {\n // eslint-disable-next-line deprecation/deprecation\n static INSTANCE = new EventTrackerState()\n}\n\n// Track Event with an identity associate with it\n/** @deprecated */\nexport class EventTracker extends NamedResultDescriptor {\n static DEFAULT_OPTIONS: TrackerOptions = {\n totalByDay: true,\n unique: true,\n }\n\n static register(eventName: string, options?: TrackerOptions) {\n // eslint-disable-next-line deprecation/deprecation\n const tracker = new EventTracker(eventName, { ...EventTracker.DEFAULT_OPTIONS, ...options })\n // eslint-disable-next-line deprecation/deprecation\n return EventTrackerState.INSTANCE.getOrSetValue(eventName, tracker)\n }\n\n options: TrackerOptions\n protected constructor(eventName: string, options: TrackerOptions) {\n super(eventName)\n this.options = options\n }\n\n trackEvent(ctx: BaseContext, event: Event) {\n const { distinctId, message, severity, ...payload } = event\n\n const res: EventTrackingResult = {\n message: message || '',\n severity: severity || LogLevel.INFO,\n metadata: ctx.getMetaData(this.name, {}),\n distinctEntityId: distinctId || '',\n attributes: normalizeAttribute(payload),\n runtimeInfo: undefined,\n noMetric: false,\n }\n ctx._res.events.push(res)\n }\n}\n/** @deprecated */\n// eslint-disable-next-line deprecation/deprecation\nexport class AccountEventTracker extends EventTracker {\n static DEFAULT_OPTIONS: TrackerOptions = {\n totalByDay: true,\n unique: true,\n distinctByDays: [1, 7, 30],\n }\n\n static register(eventName?: string, options?: TrackerOptions) {\n if (eventName) {\n eventName = ['user', eventName].join('_')\n } else {\n eventName = 'user'\n }\n // eslint-disable-next-line deprecation/deprecation\n const tracker = new AccountEventTracker(eventName, { ...AccountEventTracker.DEFAULT_OPTIONS, ...options })\n // eslint-disable-next-line deprecation/deprecation\n return EventTrackerState.INSTANCE.getOrSetValue(eventName, tracker)\n }\n}\n"]}
@@ -3,5 +3,7 @@ export { BaseContext } from './base-context.js';
3
3
  export { normalizeLabels } from './normalization.js';
4
4
  export { CounterBinding, Meter, type Labels, GaugeBinding, Counter, Gauge, MetricOptions } from './meter.js';
5
5
  export { Exporter } from './exporter.js';
6
+ export * from './event-tracker.js';
7
+ export * from './event-logger.js';
6
8
  export { type Numberish, toBigInteger, toMetricValue } from './numberish.js';
7
9
  export { CorePlugin } from './core-plugin.js';
package/lib/core/index.js CHANGED
@@ -3,6 +3,8 @@ export { BaseContext } from './base-context.js';
3
3
  export { normalizeLabels } from './normalization.js';
4
4
  export { CounterBinding, Meter, GaugeBinding, Counter, Gauge, MetricOptions } from './meter.js';
5
5
  export { Exporter } from './exporter.js';
6
+ export * from './event-tracker.js'; // TODO remove this
7
+ export * from './event-logger.js';
6
8
  export { toBigInteger, toMetricValue } from './numberish.js';
7
9
  export { CorePlugin } from './core-plugin.js';
8
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,KAAK,EAAe,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC5G,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAkB,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE5E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA","sourcesContent":["export { BigDecimal, scaleDown } from './big-decimal.js'\nexport { BaseContext } from './base-context.js'\nexport { normalizeLabels } from './normalization.js'\nexport { CounterBinding, Meter, type Labels, GaugeBinding, Counter, Gauge, MetricOptions } from './meter.js'\nexport { Exporter } from './exporter.js'\nexport { type Numberish, toBigInteger, toMetricValue } from './numberish.js'\n\nexport { CorePlugin } from './core-plugin.js'\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,KAAK,EAAe,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC5G,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,cAAc,oBAAoB,CAAA,CAAC,mBAAmB;AACtD,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAkB,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE5E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA","sourcesContent":["export { BigDecimal, scaleDown } from './big-decimal.js'\nexport { BaseContext } from './base-context.js'\nexport { normalizeLabels } from './normalization.js'\nexport { CounterBinding, Meter, type Labels, GaugeBinding, Counter, Gauge, MetricOptions } from './meter.js'\nexport { Exporter } from './exporter.js'\nexport * from './event-tracker.js' // TODO remove this\nexport * from './event-logger.js'\nexport { type Numberish, toBigInteger, toMetricValue } from './numberish.js'\n\nexport { CorePlugin } from './core-plugin.js'\n"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sentio/sdk",
3
3
  "license": "Apache-2.0",
4
- "version": "2.3.0",
4
+ "version": "2.3.1",
5
5
  "type": "module",
6
6
  "scripts": {
7
7
  "compile": "tsc && cp src/utils/*.csv lib/utils && cp src/tsup.config.ts lib",
@@ -19,9 +19,9 @@
19
19
  "@project-serum/anchor": "^0.26.0",
20
20
  "@sentio/bigdecimal": "^9.1.1-patch.3",
21
21
  "@sentio/ethers-v6": "^1.0.25",
22
- "@sentio/protos": "^2.3.0",
23
- "@sentio/runtime": "^2.3.0",
24
- "@sentio/sdk": "^2.3.0",
22
+ "@sentio/protos": "^2.3.1",
23
+ "@sentio/runtime": "^2.3.1",
24
+ "@sentio/sdk": "^2.3.1",
25
25
  "@solana/web3.js": "^1.47.3",
26
26
  "@types/prettier": "^2.7.2",
27
27
  "aptos-sdk": "npm:@sentio/aptos@^1.6.0",
@@ -78,5 +78,5 @@
78
78
  "typedoc": {
79
79
  "entryPoint": "./src/index.ts"
80
80
  },
81
- "gitHead": "cf8fa9ac382b830e87f38c1487d65081e7089c0f"
81
+ "gitHead": "563d5df7771eb677356142ebd83836e469eb246e"
82
82
  }
@@ -1,15 +1,11 @@
1
1
  import { ProcessResult, RecordMetaData } from '@sentio/protos'
2
2
  import { EventLogger } from './event-logger.js'
3
3
  import { Meter, Labels } from './meter.js'
4
- import { BoundedEventTracker } from './event-tracker.js'
5
4
 
6
5
  export abstract class BaseContext {
7
6
  meter: Meter
8
7
  eventLogger: EventLogger
9
8
 
10
- /** @deprecated use {@link this.eventLogger} instead */
11
- eventTracker: BoundedEventTracker
12
-
13
9
  _res: ProcessResult = {
14
10
  counters: [],
15
11
  events: [],
@@ -20,8 +16,6 @@ export abstract class BaseContext {
20
16
  protected constructor() {
21
17
  this.meter = new Meter(this)
22
18
  this.eventLogger = new EventLogger(this)
23
- // eslint-disable-next-line deprecation/deprecation
24
- this.eventTracker = new BoundedEventTracker(this)
25
19
  }
26
20
 
27
21
  getProcessResult(): ProcessResult {
@@ -1,23 +1,25 @@
1
1
  import { BaseContext } from './base-context.js'
2
2
  import { EventTrackingResult, LogLevel } from '@sentio/protos'
3
- import { NamedResultDescriptor } from './metadata.js'
4
3
  import { normalizeAttribute } from './normalization.js'
5
- import { Event } from './event-tracker.js'
6
4
 
7
- export type Attributes = Record<string, any>
5
+ export interface Event {
6
+ // The unique identifier of main identity associate with an event
7
+ // .e.g user id / token address / account address / contract address id
8
+ //
9
+ distinctId?: string
10
+ severity?: LogLevel
11
+ message?: string
8
12
 
9
- export class EventLogger extends NamedResultDescriptor {
13
+ [key: string]: any
14
+ }
15
+
16
+ export class EventLogger {
10
17
  private readonly ctx: BaseContext
11
18
 
12
- constructor(ctx: BaseContext, name = '') {
13
- super(name)
19
+ constructor(ctx: BaseContext) {
14
20
  this.ctx = ctx
15
21
  }
16
22
 
17
- withName(name: string) {
18
- return new EventLogger(this.ctx, name)
19
- }
20
-
21
23
  emit(eventName: string, event: Event) {
22
24
  const { distinctId, severity, message, ...payload } = event
23
25
 
@@ -3,40 +3,7 @@ import { EventTrackingResult, LogLevel } from '@sentio/protos'
3
3
  import { MapStateStorage } from '@sentio/runtime'
4
4
  import { NamedResultDescriptor } from './metadata.js'
5
5
  import { normalizeAttribute } from './normalization.js'
6
-
7
- export interface Event {
8
- // The unique identifier of main identity associate with an event
9
- // .e.g user id / token address / account address / contract address id
10
- //
11
- distinctId?: string
12
- severity?: LogLevel
13
- message?: string
14
-
15
- [key: string]: any
16
- }
17
-
18
- export class BoundedEventTracker {
19
- private readonly ctx: BaseContext
20
-
21
- constructor(ctx: BaseContext) {
22
- this.ctx = ctx
23
- }
24
-
25
- track(eventName: string, event: Event) {
26
- const { distinctId, severity, message, ...payload } = event
27
-
28
- const res: EventTrackingResult = {
29
- metadata: this.ctx.getMetaData(eventName, {}),
30
- severity: severity || LogLevel.INFO,
31
- message: message || '',
32
- distinctEntityId: distinctId || '',
33
- attributes: payload,
34
- runtimeInfo: undefined,
35
- noMetric: true,
36
- }
37
- this.ctx._res.events.push(res)
38
- }
39
- }
6
+ import { Event } from './event-logger.js'
40
7
 
41
8
  export interface TrackerOptions {
42
9
  totalByDay?: boolean
package/src/core/index.ts CHANGED
@@ -3,6 +3,8 @@ export { BaseContext } from './base-context.js'
3
3
  export { normalizeLabels } from './normalization.js'
4
4
  export { CounterBinding, Meter, type Labels, GaugeBinding, Counter, Gauge, MetricOptions } from './meter.js'
5
5
  export { Exporter } from './exporter.js'
6
+ export * from './event-tracker.js' // TODO remove this
7
+ export * from './event-logger.js'
6
8
  export { type Numberish, toBigInteger, toMetricValue } from './numberish.js'
7
9
 
8
10
  export { CorePlugin } from './core-plugin.js'