o11y 236.0.2 → 238.1.2

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.
Files changed (67) hide show
  1. package/dist/modules/o11y/client/client.js +1 -1
  2. package/dist/modules/o11y/client/client.js.map +1 -1
  3. package/dist/modules/o11y/client/collectors/core-collector/CoreCollector.d.ts +35 -17
  4. package/dist/modules/o11y/client/collectors/core-collector/CoreEnvelopeBuilder.d.ts +10 -6
  5. package/dist/modules/o11y/client/collectors/core-collector/UploadMode.d.ts +5 -0
  6. package/dist/modules/o11y/client/collectors/core-collector/interfaces/CoreCollectorOptions.d.ts +8 -0
  7. package/dist/modules/o11y/client/collectors/core-collector/{CoreEnvelope.d.ts → interfaces/CoreEnvelope.d.ts} +1 -1
  8. package/dist/modules/o11y/client/collectors/core-collector/interfaces/CoreEnvelopeContents.d.ts +11 -0
  9. package/dist/modules/o11y/client/collectors/core-collector/{CoreEnvelopeDiagnostics.d.ts → interfaces/CoreEnvelopeDiagnostics.d.ts} +0 -0
  10. package/dist/modules/o11y/{collectors/collectors/core-collector → client/collectors/core-collector/interfaces}/LogMessage.d.ts +1 -1
  11. package/dist/modules/o11y/client/collectors/core-collector/{MessageBundle.d.ts → interfaces/MessageBundle.d.ts} +0 -0
  12. package/dist/modules/o11y/client/collectors/core-collector/{StaticAttributes.d.ts → interfaces/StaticAttributes.d.ts} +0 -0
  13. package/dist/modules/o11y/client/collectors/core-collector/interfaces/UploadResult.d.ts +6 -0
  14. package/dist/modules/o11y/client/collectors/protobuf-util.d.ts +1 -1
  15. package/dist/modules/o11y/client/interfaces/Instrumentation.d.ts +2 -0
  16. package/dist/modules/o11y/client/interfaces/InstrumentedAppMethods.d.ts +1 -0
  17. package/dist/modules/o11y/client/interfaces/Nextgen.d.ts +1 -1
  18. package/dist/modules/o11y/client/library/InstrumentationImpl.d.ts +2 -0
  19. package/dist/modules/o11y/client/library/NextgenImpl.d.ts +4 -0
  20. package/dist/modules/o11y/client/shared/LazyMapToList.d.ts +4 -4
  21. package/dist/modules/o11y/client/shared/TypeDefinitions.d.ts +2 -0
  22. package/dist/modules/o11y/client/shared/Utility.d.ts +4 -1
  23. package/dist/modules/o11y/collectors/collectors/core-collector/CoreCollector.d.ts +35 -17
  24. package/dist/modules/o11y/collectors/collectors/core-collector/CoreEnvelopeBuilder.d.ts +10 -6
  25. package/dist/modules/o11y/collectors/collectors/core-collector/UploadMode.d.ts +5 -0
  26. package/dist/modules/o11y/collectors/collectors/core-collector/interfaces/CoreCollectorOptions.d.ts +8 -0
  27. package/dist/modules/o11y/{shared/collectors/core-collector → collectors/collectors/core-collector/interfaces}/CoreEnvelope.d.ts +1 -1
  28. package/dist/modules/o11y/collectors/collectors/core-collector/interfaces/CoreEnvelopeContents.d.ts +11 -0
  29. package/dist/modules/o11y/collectors/collectors/core-collector/{CoreEnvelopeDiagnostics.d.ts → interfaces/CoreEnvelopeDiagnostics.d.ts} +0 -0
  30. package/dist/modules/o11y/{shared/collectors/core-collector → collectors/collectors/core-collector/interfaces}/LogMessage.d.ts +1 -1
  31. package/dist/modules/o11y/collectors/collectors/core-collector/{MessageBundle.d.ts → interfaces/MessageBundle.d.ts} +0 -0
  32. package/dist/modules/o11y/collectors/collectors/core-collector/{StaticAttributes.d.ts → interfaces/StaticAttributes.d.ts} +0 -0
  33. package/dist/modules/o11y/collectors/collectors/core-collector/interfaces/UploadResult.d.ts +6 -0
  34. package/dist/modules/o11y/collectors/collectors/protobuf-util.d.ts +1 -1
  35. package/dist/modules/o11y/collectors/collectors.js +1 -1
  36. package/dist/modules/o11y/collectors/collectors.js.map +1 -1
  37. package/dist/modules/o11y/collectors/interfaces/Instrumentation.d.ts +2 -0
  38. package/dist/modules/o11y/collectors/interfaces/InstrumentedAppMethods.d.ts +1 -0
  39. package/dist/modules/o11y/collectors/interfaces/Nextgen.d.ts +1 -1
  40. package/dist/modules/o11y/collectors/library/InstrumentationImpl.d.ts +2 -0
  41. package/dist/modules/o11y/collectors/library/NextgenImpl.d.ts +4 -0
  42. package/dist/modules/o11y/collectors/shared/LazyMapToList.d.ts +4 -4
  43. package/dist/modules/o11y/collectors/shared/TypeDefinitions.d.ts +2 -0
  44. package/dist/modules/o11y/collectors/shared/Utility.d.ts +4 -1
  45. package/dist/modules/o11y/shared/collectors/core-collector/CoreCollector.d.ts +35 -17
  46. package/dist/modules/o11y/shared/collectors/core-collector/CoreEnvelopeBuilder.d.ts +10 -6
  47. package/dist/modules/o11y/shared/collectors/core-collector/UploadMode.d.ts +5 -0
  48. package/dist/modules/o11y/shared/collectors/core-collector/interfaces/CoreCollectorOptions.d.ts +8 -0
  49. package/dist/modules/o11y/{collectors/collectors/core-collector → shared/collectors/core-collector/interfaces}/CoreEnvelope.d.ts +1 -1
  50. package/dist/modules/o11y/shared/collectors/core-collector/interfaces/CoreEnvelopeContents.d.ts +11 -0
  51. package/dist/modules/o11y/shared/collectors/core-collector/{CoreEnvelopeDiagnostics.d.ts → interfaces/CoreEnvelopeDiagnostics.d.ts} +0 -0
  52. package/dist/modules/o11y/{client/collectors/core-collector → shared/collectors/core-collector/interfaces}/LogMessage.d.ts +1 -1
  53. package/dist/modules/o11y/shared/collectors/core-collector/{MessageBundle.d.ts → interfaces/MessageBundle.d.ts} +0 -0
  54. package/dist/modules/o11y/shared/collectors/core-collector/{StaticAttributes.d.ts → interfaces/StaticAttributes.d.ts} +0 -0
  55. package/dist/modules/o11y/shared/collectors/core-collector/interfaces/UploadResult.d.ts +6 -0
  56. package/dist/modules/o11y/shared/collectors/protobuf-util.d.ts +1 -1
  57. package/dist/modules/o11y/shared/interfaces/Instrumentation.d.ts +2 -0
  58. package/dist/modules/o11y/shared/interfaces/InstrumentedAppMethods.d.ts +1 -0
  59. package/dist/modules/o11y/shared/interfaces/Nextgen.d.ts +1 -1
  60. package/dist/modules/o11y/shared/library/InstrumentationImpl.d.ts +2 -0
  61. package/dist/modules/o11y/shared/library/NextgenImpl.d.ts +4 -0
  62. package/dist/modules/o11y/shared/shared/LazyMapToList.d.ts +4 -4
  63. package/dist/modules/o11y/shared/shared/TypeDefinitions.d.ts +2 -0
  64. package/dist/modules/o11y/shared/shared/Utility.d.ts +4 -1
  65. package/dist/modules/o11y/shared/shared.js +1 -1
  66. package/dist/modules/o11y/shared/shared.js.map +1 -1
  67. package/package.json +2 -2
@@ -1,31 +1,49 @@
1
1
  import { Environment, LogCollector, LogMeta, MetricsCollector, MetricsExtractorMethods, Schema } from '../../interfaces';
2
2
  import { SchematizedData } from 'o11y/shared';
3
- export declare enum UploadMode {
4
- fetchBinary = 0,
5
- fetchFile = 1,
6
- noUpload = 2
7
- }
3
+ import { UploadMode } from './UploadMode';
4
+ import { CoreCollectorOptions } from './interfaces/CoreCollectorOptions';
5
+ import { CoreEnvelopeContents } from './interfaces/CoreEnvelopeContents';
6
+ import { UploadResult } from './interfaces/UploadResult';
8
7
  export declare class CoreCollector implements LogCollector, MetricsCollector {
9
- private readonly _apiEndpoint?;
10
- private readonly _uploadMode?;
11
- readonly environment?: Environment;
12
8
  private readonly _messageBuffers;
13
9
  private readonly _coreEnvelopeType;
14
10
  private _intervalHandle;
15
11
  private _metricsExtractors;
16
- private _staticAttributes;
12
+ private readonly _staticAttributes;
17
13
  private _immediateUpload;
18
- private _instr;
19
- constructor(_apiEndpoint?: string, _uploadMode?: UploadMode, environment?: Environment);
20
- getIsCollectDisabled(): boolean;
21
- getProtoEncodedCoreEnvelope(): Uint8Array;
22
- getByteSize(): number;
23
- private _isFull;
14
+ private readonly _messagesLimit;
15
+ private readonly _metricsLimit;
16
+ private readonly _formDataKey;
17
+ private readonly _uploadFailedListener;
18
+ private _uploadInterval;
19
+ private _uploadEndpoint;
20
+ private _uploadMode;
21
+ private readonly _emptySize;
22
+ private _messageSize;
23
+ constructor(uploadEndpoint?: string, uploadMode?: UploadMode, environment?: Environment, options?: CoreCollectorOptions);
24
+ get uploadInterval(): number;
25
+ set uploadInterval(uploadInterval: number);
26
+ get uploadEndpoint(): string;
27
+ set uploadEndpoint(uploadEndpoint: string);
28
+ get uploadMode(): UploadMode;
29
+ set uploadMode(uploadMode: UploadMode);
30
+ getByteSize(accuracy?: number): number;
24
31
  private _stopTimer;
25
32
  private _restartTimer;
26
- collect(schema: Schema, data: SchematizedData, logMeta: LogMeta): void;
33
+ collect(schema: Schema, data: SchematizedData, logMeta: LogMeta): Promise<UploadResult>;
27
34
  private _shouldUpload;
28
35
  private _upload;
29
- private _getProtoEncodedCoreEnvelope;
36
+ private _uploadContents;
37
+ private _checkUploadState;
38
+ upload(contents?: CoreEnvelopeContents): Promise<UploadResult>;
39
+ get hasData(): boolean;
40
+ get messagesCount(): number;
41
+ get metricsCount(): number;
42
+ getProtoEncodedCoreEnvelope(): Uint8Array;
43
+ getContentsOfCoreEnvelope(): CoreEnvelopeContents;
44
+ private _getContentsOfCoreEnvelope;
45
+ private _buildProtoEncodedCoreEnvelope;
46
+ private _buildProtoEncodedCoreEnvelopeFrom;
47
+ private _encodeCoreEnvelope;
30
48
  receiveMetricsExtractors(metricsExtractors: MetricsExtractorMethods): void;
31
49
  }
@@ -1,15 +1,19 @@
1
1
  import { Metric } from '../../interfaces';
2
- import { CoreEnvelope } from './CoreEnvelope';
3
- import { LogMessage } from './LogMessage';
4
- import { StaticAttributes } from './StaticAttributes';
2
+ import { CoreEnvelope } from './interfaces/CoreEnvelope';
3
+ import { LogMessage } from './interfaces/LogMessage';
4
+ import { StaticAttributes } from './interfaces/StaticAttributes';
5
+ import { UpCounter } from '../metrics/UpCounter';
6
+ import { ValueRecorder } from '../metrics/ValueRecorder';
5
7
  export declare const coreEnvelopeKey = "o11y";
6
8
  export declare class CoreEnvelopeBuilder {
7
9
  private _envelope;
8
10
  constructor();
9
11
  withStaticAttributes(staticAttributes: StaticAttributes): CoreEnvelopeBuilder;
10
12
  withLogs(schemaName: string, logs: LogMessage[]): CoreEnvelopeBuilder;
11
- private _getMetricTags;
12
- withUpCounters(metrics: Metric<number>[]): CoreEnvelopeBuilder;
13
- withValueRecorders(metrics: Metric<number[]>[]): CoreEnvelopeBuilder;
13
+ private static _getMetricTags;
14
+ static getUpCounters(metrics: Metric<number>[], reset?: boolean): UpCounter[];
15
+ static getValueRecorders(metrics: Metric<number[]>[], reset?: boolean): ValueRecorder[];
16
+ withUpCounters(upCounters: UpCounter[]): CoreEnvelopeBuilder;
17
+ withValueRecorders(valueRecorders: ValueRecorder[]): CoreEnvelopeBuilder;
14
18
  build(): CoreEnvelope;
15
19
  }
@@ -0,0 +1,5 @@
1
+ export declare enum UploadMode {
2
+ fetchBinary = 0,
3
+ fetchFile = 1,
4
+ noUpload = 2
5
+ }
@@ -0,0 +1,8 @@
1
+ import { UploadResult } from './UploadResult';
2
+ export interface CoreCollectorOptions {
3
+ maxUniqueSchemas?: number;
4
+ messagesLimit?: number;
5
+ metricsLimit?: number;
6
+ formDataKeyName?: string;
7
+ uploadFailedListener?: (ur: UploadResult) => unknown;
8
+ }
@@ -1,7 +1,7 @@
1
1
  import { StaticAttributes } from './StaticAttributes';
2
2
  import { CoreEnvelopeDiagnostics } from './CoreEnvelopeDiagnostics';
3
3
  import { MessageBundle } from './MessageBundle';
4
- import { Metrics } from '../metrics/Metrics';
4
+ import { Metrics } from '../../metrics/Metrics';
5
5
  export interface CoreEnvelope {
6
6
  diagnostics: CoreEnvelopeDiagnostics;
7
7
  bundles: MessageBundle[];
@@ -0,0 +1,11 @@
1
+ import { UpCounter } from 'src/collectors/metrics/UpCounter';
2
+ import { ValueRecorder } from 'src/collectors/metrics/ValueRecorder';
3
+ import { Schema } from 'src/interfaces';
4
+ import { LogMessage } from './LogMessage';
5
+ import { StaticAttributes } from './StaticAttributes';
6
+ export interface CoreEnvelopeContents {
7
+ messages?: Map<Schema, LogMessage[]>;
8
+ upCounters?: UpCounter[];
9
+ valueRecorders?: ValueRecorder[];
10
+ staticAttributes: StaticAttributes;
11
+ }
@@ -1,4 +1,4 @@
1
- import { EncodedSchematizedPayload } from '../EncodedSchematizedPayload';
1
+ import { EncodedSchematizedPayload } from '../../EncodedSchematizedPayload';
2
2
  export interface LogMessage {
3
3
  timestamp: number;
4
4
  data: Uint8Array;
@@ -0,0 +1,6 @@
1
+ import { CoreEnvelopeContents } from './CoreEnvelopeContents';
2
+ export interface UploadResult {
3
+ response?: Response;
4
+ envelopeContents?: CoreEnvelopeContents;
5
+ error?: unknown;
6
+ }
@@ -2,7 +2,7 @@ import { Type } from 'protobufjs';
2
2
  import { LogMeta, Schema, SchematizedPayload } from '../interfaces';
3
3
  import { EncodedSchematizedPayload } from './EncodedSchematizedPayload';
4
4
  import { SchematizedData } from 'o11y/shared';
5
- import { LogMessage } from './core-collector/LogMessage';
5
+ import { LogMessage } from './core-collector/interfaces/LogMessage';
6
6
  declare class ProtobufUtil {
7
7
  private readonly _typeStore;
8
8
  getSchemaType(schema: Schema): Type;
@@ -1,4 +1,5 @@
1
1
  import { LightningElement, MetricsTags, SchematizedData } from 'o11y/shared';
2
+ import { LogPromptListener } from 'src/shared/TypeDefinitions';
2
3
  import { Activity } from './Activity';
3
4
  import { Schema } from './Schema';
4
5
  export interface Instrumentation {
@@ -8,4 +9,5 @@ export interface Instrumentation {
8
9
  domEvent(e: Event, handledBy: HTMLElement | LightningElement, schema?: Schema, data?: SchematizedData, auto?: boolean): void;
9
10
  incrementCounter(operation: string, increment?: number, hasError?: boolean, tags?: MetricsTags): void;
10
11
  trackValue(operation: string, value: number, hasError?: boolean, tags?: MetricsTags): void;
12
+ registerForLogPrompt(listener: LogPromptListener): void;
11
13
  }
@@ -11,4 +11,5 @@ export interface InstrumentedAppMethods extends Instrumentation {
11
11
  deactivateClickTracker(): void;
12
12
  networkInstrumentation(options: boolean | NetworkInstrumentationOptions): void;
13
13
  disableBuffering(): void;
14
+ promptLogCollection(reason?: string): void;
14
15
  }
@@ -1,6 +1,6 @@
1
1
  import { Instrumentation } from './Instrumentation';
2
2
  import { InstrumentedAppMethods } from './InstrumentedAppMethods';
3
3
  export interface Nextgen {
4
- registerApp(name: string): InstrumentedAppMethods | undefined;
4
+ registerApp(name: string, enableBuffering?: boolean): InstrumentedAppMethods | undefined;
5
5
  getInstrumentation(name: string): Instrumentation;
6
6
  }
@@ -5,6 +5,7 @@ import { MetricsImpl } from './MetricsImpl';
5
5
  import { NextgenImpl } from './NextgenImpl';
6
6
  import { PublicSafety } from './PublicSafety';
7
7
  import { LightningElement, MetricsTags, SchematizedData } from 'o11y/shared';
8
+ import { LogPromptListener } from 'src/shared/TypeDefinitions';
8
9
  export declare class InstrumentationImpl implements Instrumentation, MetricsReporter {
9
10
  private readonly _nextGen;
10
11
  private readonly _name;
@@ -35,4 +36,5 @@ export declare class InstrumentationImpl implements Instrumentation, MetricsRepo
35
36
  private _checkInputs;
36
37
  getUpCounters(): Metric<number>[];
37
38
  getValueRecorders(): Metric<number[]>[];
39
+ registerForLogPrompt(listener: LogPromptListener): void;
38
40
  }
@@ -2,6 +2,7 @@ import { BufferedLog, Instrumentation, InstrumentedAppMethods, LogCollector, Met
2
2
  import { AutomaticClickTracker } from './AutomaticClickTracker';
3
3
  import { SchematizedData } from 'o11y/shared';
4
4
  import { LogCollectorOptions } from 'src/interfaces/LogCollectorOptions';
5
+ import { LogPromptListener } from 'src/shared/TypeDefinitions';
5
6
  export declare class NextgenImpl implements Nextgen {
6
7
  private readonly _logCollectors;
7
8
  private readonly _instruments;
@@ -16,6 +17,7 @@ export declare class NextgenImpl implements Nextgen {
16
17
  private static _collectorFailureLimit;
17
18
  private _isBufferingEnabled;
18
19
  private _buffer;
20
+ private readonly _logCollectionListeners;
19
21
  get pagePayloadProvider(): PayloadProvider;
20
22
  set pagePayloadProvider(provider: PayloadProvider);
21
23
  get appPayloadProvider(): PayloadProvider;
@@ -35,4 +37,6 @@ export declare class NextgenImpl implements Nextgen {
35
37
  registerMetricsCollector(collector: MetricsCollector): void;
36
38
  private getAllUpCounters;
37
39
  private getAllValueRecorders;
40
+ registerForLogPrompt(listener: LogPromptListener): void;
41
+ promptLogCollection(reason: string): void;
38
42
  }
@@ -1,13 +1,13 @@
1
1
  export declare class LazyMapToList<Key, ElementType> {
2
2
  private readonly _lazyMap;
3
3
  private _maxSize;
4
- private _byteSizeOfValues;
5
4
  constructor(maxSize?: number);
6
5
  get maxSize(): number;
7
- get byteSizeOfValues(): number;
6
+ get size(): number;
8
7
  push(key: Key, value: ElementType): boolean;
9
- extractMessages(key: Key, extractAll?: boolean): Array<ElementType>;
8
+ getMessages(key: Key, extract?: boolean): Array<ElementType>;
9
+ getAllMessages(extract?: boolean): Map<Key, Array<ElementType>>;
10
+ extractMessages(key: Key): Array<ElementType>;
10
11
  extractAllMessages(): Map<Key, Array<ElementType>>;
11
12
  get totalItemCount(): number;
12
- private _getObjectSize;
13
13
  }
@@ -9,6 +9,7 @@ export declare type LightningElement = {
9
9
  };
10
10
  };
11
11
  export declare type MetricsTags = Record<string, number | string | boolean>;
12
+ export declare type LogPromptListener = (reason?: string) => unknown;
12
13
  export declare type ProtoOptions = {
13
14
  [k: string]: any;
14
15
  };
@@ -17,4 +18,5 @@ export declare type AnyNestedObject = IEnum | IType | IService | AnyExtensionFie
17
18
  export declare type PbjsNestedObjectDescriptor = {
18
19
  [k: string]: AnyNestedObject;
19
20
  };
21
+ export declare type ObjectType = Record<string | number | symbol, unknown>;
20
22
  export {};
@@ -12,15 +12,18 @@ declare class Utility {
12
12
  markProduction(): void;
13
13
  private checkArgument;
14
14
  requireArgument<T>(argument: T, argumentName: string, argKind?: unknown): void;
15
+ requireArgumentIfDefined<T>(argument: T, argumentName: string, argKind: unknown): boolean;
15
16
  checkForDenyListedValues<T>(argument: T, argumentName: string, denyList: ReadonlyArray<T>): void;
16
17
  checkForReservedCharacters(argument: string, argumentName: string, reservedChars: ReadonlyArray<string>): void;
17
18
  generateUniqueId(length?: number): string;
18
19
  getXpath(_element: HTMLElement): string;
19
20
  getAge(timestamp: number): number;
20
21
  getConnectionType(): string;
21
- clone(value: any): any;
22
+ clone<T>(value: T): T;
22
23
  definedValueOrDefault<T>(value: T, defaultValue: T): T;
23
24
  getGlobal(): typeof globalThis;
25
+ getIsBeaconSupported(): boolean;
26
+ estimateObjectSize(object: unknown): number;
24
27
  }
25
28
  export declare const utility: Readonly<Utility>;
26
29
  export {};
@@ -1,31 +1,49 @@
1
1
  import { Environment, LogCollector, LogMeta, MetricsCollector, MetricsExtractorMethods, Schema } from '../../interfaces';
2
2
  import { SchematizedData } from 'o11y/shared';
3
- export declare enum UploadMode {
4
- fetchBinary = 0,
5
- fetchFile = 1,
6
- noUpload = 2
7
- }
3
+ import { UploadMode } from './UploadMode';
4
+ import { CoreCollectorOptions } from './interfaces/CoreCollectorOptions';
5
+ import { CoreEnvelopeContents } from './interfaces/CoreEnvelopeContents';
6
+ import { UploadResult } from './interfaces/UploadResult';
8
7
  export declare class CoreCollector implements LogCollector, MetricsCollector {
9
- private readonly _apiEndpoint?;
10
- private readonly _uploadMode?;
11
- readonly environment?: Environment;
12
8
  private readonly _messageBuffers;
13
9
  private readonly _coreEnvelopeType;
14
10
  private _intervalHandle;
15
11
  private _metricsExtractors;
16
- private _staticAttributes;
12
+ private readonly _staticAttributes;
17
13
  private _immediateUpload;
18
- private _instr;
19
- constructor(_apiEndpoint?: string, _uploadMode?: UploadMode, environment?: Environment);
20
- getIsCollectDisabled(): boolean;
21
- getProtoEncodedCoreEnvelope(): Uint8Array;
22
- getByteSize(): number;
23
- private _isFull;
14
+ private readonly _messagesLimit;
15
+ private readonly _metricsLimit;
16
+ private readonly _formDataKey;
17
+ private readonly _uploadFailedListener;
18
+ private _uploadInterval;
19
+ private _uploadEndpoint;
20
+ private _uploadMode;
21
+ private readonly _emptySize;
22
+ private _messageSize;
23
+ constructor(uploadEndpoint?: string, uploadMode?: UploadMode, environment?: Environment, options?: CoreCollectorOptions);
24
+ get uploadInterval(): number;
25
+ set uploadInterval(uploadInterval: number);
26
+ get uploadEndpoint(): string;
27
+ set uploadEndpoint(uploadEndpoint: string);
28
+ get uploadMode(): UploadMode;
29
+ set uploadMode(uploadMode: UploadMode);
30
+ getByteSize(accuracy?: number): number;
24
31
  private _stopTimer;
25
32
  private _restartTimer;
26
- collect(schema: Schema, data: SchematizedData, logMeta: LogMeta): void;
33
+ collect(schema: Schema, data: SchematizedData, logMeta: LogMeta): Promise<UploadResult>;
27
34
  private _shouldUpload;
28
35
  private _upload;
29
- private _getProtoEncodedCoreEnvelope;
36
+ private _uploadContents;
37
+ private _checkUploadState;
38
+ upload(contents?: CoreEnvelopeContents): Promise<UploadResult>;
39
+ get hasData(): boolean;
40
+ get messagesCount(): number;
41
+ get metricsCount(): number;
42
+ getProtoEncodedCoreEnvelope(): Uint8Array;
43
+ getContentsOfCoreEnvelope(): CoreEnvelopeContents;
44
+ private _getContentsOfCoreEnvelope;
45
+ private _buildProtoEncodedCoreEnvelope;
46
+ private _buildProtoEncodedCoreEnvelopeFrom;
47
+ private _encodeCoreEnvelope;
30
48
  receiveMetricsExtractors(metricsExtractors: MetricsExtractorMethods): void;
31
49
  }
@@ -1,15 +1,19 @@
1
1
  import { Metric } from '../../interfaces';
2
- import { CoreEnvelope } from './CoreEnvelope';
3
- import { LogMessage } from './LogMessage';
4
- import { StaticAttributes } from './StaticAttributes';
2
+ import { CoreEnvelope } from './interfaces/CoreEnvelope';
3
+ import { LogMessage } from './interfaces/LogMessage';
4
+ import { StaticAttributes } from './interfaces/StaticAttributes';
5
+ import { UpCounter } from '../metrics/UpCounter';
6
+ import { ValueRecorder } from '../metrics/ValueRecorder';
5
7
  export declare const coreEnvelopeKey = "o11y";
6
8
  export declare class CoreEnvelopeBuilder {
7
9
  private _envelope;
8
10
  constructor();
9
11
  withStaticAttributes(staticAttributes: StaticAttributes): CoreEnvelopeBuilder;
10
12
  withLogs(schemaName: string, logs: LogMessage[]): CoreEnvelopeBuilder;
11
- private _getMetricTags;
12
- withUpCounters(metrics: Metric<number>[]): CoreEnvelopeBuilder;
13
- withValueRecorders(metrics: Metric<number[]>[]): CoreEnvelopeBuilder;
13
+ private static _getMetricTags;
14
+ static getUpCounters(metrics: Metric<number>[], reset?: boolean): UpCounter[];
15
+ static getValueRecorders(metrics: Metric<number[]>[], reset?: boolean): ValueRecorder[];
16
+ withUpCounters(upCounters: UpCounter[]): CoreEnvelopeBuilder;
17
+ withValueRecorders(valueRecorders: ValueRecorder[]): CoreEnvelopeBuilder;
14
18
  build(): CoreEnvelope;
15
19
  }
@@ -0,0 +1,5 @@
1
+ export declare enum UploadMode {
2
+ fetchBinary = 0,
3
+ fetchFile = 1,
4
+ noUpload = 2
5
+ }
@@ -0,0 +1,8 @@
1
+ import { UploadResult } from './UploadResult';
2
+ export interface CoreCollectorOptions {
3
+ maxUniqueSchemas?: number;
4
+ messagesLimit?: number;
5
+ metricsLimit?: number;
6
+ formDataKeyName?: string;
7
+ uploadFailedListener?: (ur: UploadResult) => unknown;
8
+ }
@@ -1,7 +1,7 @@
1
1
  import { StaticAttributes } from './StaticAttributes';
2
2
  import { CoreEnvelopeDiagnostics } from './CoreEnvelopeDiagnostics';
3
3
  import { MessageBundle } from './MessageBundle';
4
- import { Metrics } from '../metrics/Metrics';
4
+ import { Metrics } from '../../metrics/Metrics';
5
5
  export interface CoreEnvelope {
6
6
  diagnostics: CoreEnvelopeDiagnostics;
7
7
  bundles: MessageBundle[];
@@ -0,0 +1,11 @@
1
+ import { UpCounter } from 'src/collectors/metrics/UpCounter';
2
+ import { ValueRecorder } from 'src/collectors/metrics/ValueRecorder';
3
+ import { Schema } from 'src/interfaces';
4
+ import { LogMessage } from './LogMessage';
5
+ import { StaticAttributes } from './StaticAttributes';
6
+ export interface CoreEnvelopeContents {
7
+ messages?: Map<Schema, LogMessage[]>;
8
+ upCounters?: UpCounter[];
9
+ valueRecorders?: ValueRecorder[];
10
+ staticAttributes: StaticAttributes;
11
+ }
@@ -1,4 +1,4 @@
1
- import { EncodedSchematizedPayload } from '../EncodedSchematizedPayload';
1
+ import { EncodedSchematizedPayload } from '../../EncodedSchematizedPayload';
2
2
  export interface LogMessage {
3
3
  timestamp: number;
4
4
  data: Uint8Array;
@@ -0,0 +1,6 @@
1
+ import { CoreEnvelopeContents } from './CoreEnvelopeContents';
2
+ export interface UploadResult {
3
+ response?: Response;
4
+ envelopeContents?: CoreEnvelopeContents;
5
+ error?: unknown;
6
+ }
@@ -2,7 +2,7 @@ import { Type } from 'protobufjs';
2
2
  import { LogMeta, Schema, SchematizedPayload } from '../interfaces';
3
3
  import { EncodedSchematizedPayload } from './EncodedSchematizedPayload';
4
4
  import { SchematizedData } from 'o11y/shared';
5
- import { LogMessage } from './core-collector/LogMessage';
5
+ import { LogMessage } from './core-collector/interfaces/LogMessage';
6
6
  declare class ProtobufUtil {
7
7
  private readonly _typeStore;
8
8
  getSchemaType(schema: Schema): Type;