@sentio/runtime 2.49.2-rc.3 → 2.49.2-rc.5
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.
- package/lib/chunk-KAWZ7VNL.js +131 -0
- package/lib/chunk-KAWZ7VNL.js.map +1 -0
- package/lib/index.d.ts +20 -14
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/processor-runner.js +2 -2
- package/lib/processor-runner.js.map +1 -1
- package/package.json +1 -1
- package/src/metrics.ts +36 -14
- package/src/otlp.ts +1 -1
- package/src/provider.ts +20 -6
- package/lib/chunk-J24RUMUG.js +0 -131
- package/lib/chunk-J24RUMUG.js.map +0 -1
package/lib/index.d.ts
CHANGED
@@ -8,7 +8,7 @@ import _m0 from 'protobufjs/minimal.js';
|
|
8
8
|
import { JsonRpcProvider, Provider, Network } from 'ethers';
|
9
9
|
import PQueue from 'p-queue';
|
10
10
|
import { EthChainId } from '@sentio/chain';
|
11
|
-
import { Counter, Attributes, Gauge } from '@opentelemetry/api';
|
11
|
+
import { Counter, Attributes, Gauge, Histogram } from '@opentelemetry/api';
|
12
12
|
|
13
13
|
type Request = Omit<DBRequest, 'opId'>;
|
14
14
|
type RequestType = keyof Request;
|
@@ -424,6 +424,15 @@ declare class G {
|
|
424
424
|
record(value: number, attributes?: Attributes): void;
|
425
425
|
get(): number;
|
426
426
|
}
|
427
|
+
declare class H {
|
428
|
+
private name;
|
429
|
+
private _histogram;
|
430
|
+
private value;
|
431
|
+
constructor(name: string);
|
432
|
+
get histogram(): Histogram<Attributes>;
|
433
|
+
record(value: number, attributes?: Attributes): void;
|
434
|
+
get(): number;
|
435
|
+
}
|
427
436
|
declare const dbMetrics: {
|
428
437
|
send_counts: {
|
429
438
|
get: C;
|
@@ -491,39 +500,36 @@ declare const providerMetrics: {
|
|
491
500
|
hit_count: C;
|
492
501
|
miss_count: C;
|
493
502
|
queue_size: G;
|
494
|
-
total_duration: C;
|
495
|
-
total_queued: C;
|
496
503
|
stats(): {
|
497
504
|
hit_count: number;
|
498
505
|
miss_count: number;
|
499
506
|
queue_size: number;
|
500
|
-
total_duration: number;
|
501
|
-
total_queued: number;
|
502
|
-
average_queue_time: number;
|
503
|
-
average_duration: number;
|
504
507
|
};
|
505
508
|
};
|
506
509
|
declare const processMetrics: {
|
507
510
|
process_binding_count: C;
|
508
511
|
process_binding_time: C;
|
509
512
|
process_binding_error: C;
|
510
|
-
process_ethcall_count: C;
|
511
513
|
process_eventemit_count: C;
|
512
514
|
process_metricrecord_count: C;
|
513
515
|
process_pricecall_count: C;
|
514
|
-
|
515
|
-
|
516
|
+
processor_handler_duration: H;
|
517
|
+
processor_rpc_duration: H;
|
518
|
+
processor_rpc_queue_duration: H;
|
519
|
+
processor_template_instance_count: C;
|
516
520
|
stats(): {
|
517
521
|
process_binding_count: number;
|
518
522
|
process_binding_time: number;
|
519
523
|
process_binding_error: number;
|
520
|
-
process_ethcall_count: number;
|
521
524
|
process_eventemit_count: number;
|
522
525
|
process_metricrecord_count: number;
|
523
526
|
process_pricecall_count: number;
|
524
|
-
|
525
|
-
|
527
|
+
processor_handler_duration: number;
|
528
|
+
processor_rpc_duration: number;
|
529
|
+
processor_rpc_queue_duration: number;
|
530
|
+
processor_template_instance_count: number;
|
526
531
|
};
|
527
532
|
};
|
533
|
+
declare const metricsStorage: AsyncLocalStorage<string>;
|
528
534
|
|
529
|
-
export { type ChainConfig, DummyProvider, Endpoints, GLOBAL_CONFIG, type GlobalConfig, ListStateStorage, MapStateStorage, Plugin, PluginManager, ProcessorServiceImpl, QueuedStaticJsonRpcProvider, State, StateStorage, StoreContext, USER_PROCESSOR, dbMetrics, errorString, getProvider, makeEthCallKey, mergeProcessResults, processMetrics, providerMetrics, timeoutError };
|
535
|
+
export { type ChainConfig, DummyProvider, Endpoints, GLOBAL_CONFIG, type GlobalConfig, ListStateStorage, MapStateStorage, Plugin, PluginManager, ProcessorServiceImpl, QueuedStaticJsonRpcProvider, State, StateStorage, StoreContext, USER_PROCESSOR, dbMetrics, errorString, getProvider, makeEthCallKey, mergeProcessResults, metricsStorage, processMetrics, providerMetrics, timeoutError };
|
package/lib/index.js
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
import { createRequire as createRequireShim } from 'module'; const require = createRequireShim(import.meta.url);
|
2
|
-
import{$ as O,V as x,W as d,X as N,Y as C,Z as V,_ as w,aa as A,ba as I,i as p,j as c,m as T,n as m,o as h,p as l,q as f,y as g}from"./chunk-
|
2
|
+
import{$ as O,V as x,W as d,X as N,Y as C,Z as V,_ as w,aa as A,ba as I,ca as M,i as p,j as c,m as T,n as m,o as h,p as l,q as f,y as g}from"./chunk-KAWZ7VNL.js";var r=class e{stateMap=new Map;static INSTANCE=new e;static reset(){e.INSTANCE=new e}},n=class{constructor(){}key(){return this.constructor.name}getOrRegister(){let t=r.INSTANCE.stateMap.get(this.key());return t||(t=this.initValue(),r.INSTANCE.stateMap.set(this.key(),t)),t}unregister(){let t=r.INSTANCE.stateMap.get(this.key());return r.INSTANCE.stateMap.delete(this.key()),t}},a=class extends n{initValue(){return new Map}getValue(t){return this.getOrRegister().get(t)}getValues(){let t=this.getOrRegister();return Array.from(t.values())}getOrSetValue(t,s){let i=this.getOrRegister(),o=i.get(t);return o?(console.warn(t,"has been registered twice, use the previous one"),o):(i.set(t,s),s)}},u=class extends n{initValue(){return[]}getValues(){return this.getOrRegister()}addValue(t){return this.getOrRegister().push(t),t}};import("node:process").then(e=>e.stdout.write(""));import("node:process").then(e=>e.stdout.write(""));import("node:process").then(e=>e.stdout.write(""));export{O as DummyProvider,f as Endpoints,g as GLOBAL_CONFIG,u as ListStateStorage,a as MapStateStorage,p as Plugin,c as PluginManager,M as ProcessorServiceImpl,I as QueuedStaticJsonRpcProvider,r as State,n as StateStorage,w as StoreContext,h as USER_PROCESSOR,x as dbMetrics,m as errorString,A as getProvider,l as makeEthCallKey,T as mergeProcessResults,C as metricsStorage,N as processMetrics,d as providerMetrics,V as timeoutError};
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../src/state.ts","../src/chain-config.ts","../src/index.ts"],"sourcesContent":["export class State {\n stateMap = new Map<string, any>()\n\n static INSTANCE = new State()\n\n static reset() {\n State.INSTANCE = new State()\n }\n}\n\nexport abstract class StateStorage<T> {\n // TODO learn how to define single instance for all subclasses\n\n protected constructor() {\n //\n }\n\n abstract initValue(): T\n\n key(): string {\n return this.constructor.name\n }\n\n getOrRegister(): T {\n let metricState: T = State.INSTANCE.stateMap.get(this.key())\n if (!metricState) {\n metricState = this.initValue()\n State.INSTANCE.stateMap.set(this.key(), metricState)\n }\n return metricState\n }\n\n unregister(): T {\n const value = State.INSTANCE.stateMap.get(this.key())\n State.INSTANCE.stateMap.delete(this.key())\n return value\n }\n}\n\nexport abstract class MapStateStorage<T> extends StateStorage<Map<string, T>> {\n initValue() {\n return new Map<string, T>()\n }\n\n getValue(key: string): T | undefined {\n const m = this.getOrRegister()\n return m.get(key)\n }\n\n getValues(): T[] {\n const m = this.getOrRegister()\n return Array.from(m.values())\n }\n\n getOrSetValue(key: string, value: T): T {\n const m = this.getOrRegister()\n const oldValue = m.get(key)\n if (oldValue) {\n console.warn(key, 'has been registered twice, use the previous one')\n return oldValue\n }\n m.set(key, value)\n return value\n }\n}\n\nexport abstract class ListStateStorage<T> extends StateStorage<T[]> {\n initValue() {\n return []\n }\n\n getValues(): T[] {\n return this.getOrRegister()\n }\n\n addValue(value: T): T {\n const m = this.getOrRegister()\n m.push(value)\n return value\n }\n}\n;import(\"node:process\").then((p) => p.stdout.write(\"\"));","export interface ChainConfig {\n ChainID: string\n Https?: string[]\n ChainServer?: string\n}\n;import(\"node:process\").then((p) => p.stdout.write(\"\"));","export * from './plugin.js'\nexport * from './state.js'\nexport * from './utils.js'\nexport * from './endpoints.js'\nexport * from './chain-config.js'\nexport * from './service.js'\nexport { GLOBAL_CONFIG, type GlobalConfig } from './global-config.js'\nexport * from './db-context.js'\nexport * from './provider.js'\nexport * from './metrics.js'\n;import(\"node:process\").then((p) => p.stdout.write(\"\"));"],"mappings":";
|
1
|
+
{"version":3,"sources":["../src/state.ts","../src/chain-config.ts","../src/index.ts"],"sourcesContent":["export class State {\n stateMap = new Map<string, any>()\n\n static INSTANCE = new State()\n\n static reset() {\n State.INSTANCE = new State()\n }\n}\n\nexport abstract class StateStorage<T> {\n // TODO learn how to define single instance for all subclasses\n\n protected constructor() {\n //\n }\n\n abstract initValue(): T\n\n key(): string {\n return this.constructor.name\n }\n\n getOrRegister(): T {\n let metricState: T = State.INSTANCE.stateMap.get(this.key())\n if (!metricState) {\n metricState = this.initValue()\n State.INSTANCE.stateMap.set(this.key(), metricState)\n }\n return metricState\n }\n\n unregister(): T {\n const value = State.INSTANCE.stateMap.get(this.key())\n State.INSTANCE.stateMap.delete(this.key())\n return value\n }\n}\n\nexport abstract class MapStateStorage<T> extends StateStorage<Map<string, T>> {\n initValue() {\n return new Map<string, T>()\n }\n\n getValue(key: string): T | undefined {\n const m = this.getOrRegister()\n return m.get(key)\n }\n\n getValues(): T[] {\n const m = this.getOrRegister()\n return Array.from(m.values())\n }\n\n getOrSetValue(key: string, value: T): T {\n const m = this.getOrRegister()\n const oldValue = m.get(key)\n if (oldValue) {\n console.warn(key, 'has been registered twice, use the previous one')\n return oldValue\n }\n m.set(key, value)\n return value\n }\n}\n\nexport abstract class ListStateStorage<T> extends StateStorage<T[]> {\n initValue() {\n return []\n }\n\n getValues(): T[] {\n return this.getOrRegister()\n }\n\n addValue(value: T): T {\n const m = this.getOrRegister()\n m.push(value)\n return value\n }\n}\n;import(\"node:process\").then((p) => p.stdout.write(\"\"));","export interface ChainConfig {\n ChainID: string\n Https?: string[]\n ChainServer?: string\n}\n;import(\"node:process\").then((p) => p.stdout.write(\"\"));","export * from './plugin.js'\nexport * from './state.js'\nexport * from './utils.js'\nexport * from './endpoints.js'\nexport * from './chain-config.js'\nexport * from './service.js'\nexport { GLOBAL_CONFIG, type GlobalConfig } from './global-config.js'\nexport * from './db-context.js'\nexport * from './provider.js'\nexport * from './metrics.js'\n;import(\"node:process\").then((p) => p.stdout.write(\"\"));"],"mappings":";kKAAO,IAAMA,EAAN,MAAMC,CAAM,CACjB,SAAW,IAAI,IAEf,OAAO,SAAW,IAAIA,EAEtB,OAAO,OAAQ,CACbA,EAAM,SAAW,IAAIA,CACvB,CACF,EAEsBC,EAAf,KAA+B,CAG1B,aAAc,CAExB,CAIA,KAAc,CACZ,OAAO,KAAK,YAAY,IAC1B,CAEA,eAAmB,CACjB,IAAIC,EAAiBH,EAAM,SAAS,SAAS,IAAI,KAAK,IAAI,CAAC,EAC3D,OAAKG,IACHA,EAAc,KAAK,UAAU,EAC7BH,EAAM,SAAS,SAAS,IAAI,KAAK,IAAI,EAAGG,CAAW,GAE9CA,CACT,CAEA,YAAgB,CACd,IAAMC,EAAQJ,EAAM,SAAS,SAAS,IAAI,KAAK,IAAI,CAAC,EACpD,OAAAA,EAAM,SAAS,SAAS,OAAO,KAAK,IAAI,CAAC,EAClCI,CACT,CACF,EAEsBC,EAAf,cAA0CH,CAA6B,CAC5E,WAAY,CACV,OAAO,IAAI,GACb,CAEA,SAASI,EAA4B,CAEnC,OADU,KAAK,cAAc,EACpB,IAAIA,CAAG,CAClB,CAEA,WAAiB,CACf,IAAMC,EAAI,KAAK,cAAc,EAC7B,OAAO,MAAM,KAAKA,EAAE,OAAO,CAAC,CAC9B,CAEA,cAAcD,EAAaF,EAAa,CACtC,IAAMG,EAAI,KAAK,cAAc,EACvBC,EAAWD,EAAE,IAAID,CAAG,EAC1B,OAAIE,GACF,QAAQ,KAAKF,EAAK,iDAAiD,EAC5DE,IAETD,EAAE,IAAID,EAAKF,CAAK,EACTA,EACT,CACF,EAEsBK,EAAf,cAA2CP,CAAkB,CAClE,WAAY,CACV,MAAO,CAAC,CACV,CAEA,WAAiB,CACf,OAAO,KAAK,cAAc,CAC5B,CAEA,SAASE,EAAa,CAEpB,OADU,KAAK,cAAc,EAC3B,KAAKA,CAAK,EACLA,CACT,CACF,EACC,OAAO,cAAc,EAAE,KAAMM,GAAMA,EAAE,OAAO,MAAM,EAAE,CAAC,EC5ErD,OAAO,cAAc,EAAE,KAAMC,GAAMA,EAAE,OAAO,MAAM,EAAE,CAAC,ECKrD,OAAO,cAAc,EAAE,KAAMC,GAAMA,EAAE,OAAO,MAAM,EAAE,CAAC","names":["State","_State","StateStorage","metricState","value","MapStateStorage","key","m","oldValue","ListStateStorage","p","p","p"]}
|