Socket
Socket
Sign inDemoInstall

@opentelemetry/instrumentation

Package Overview
Dependencies
Maintainers
3
Versions
125
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@opentelemetry/instrumentation - npm Package Compare versions

Comparing version 0.48.0 to 0.49.0

4

build/esm/autoLoader.js

@@ -17,2 +17,3 @@ /*

import { trace, metrics } from '@opentelemetry/api';
import { logs } from '@opentelemetry/api-logs';
import { disableInstrumentations, enableInstrumentations, parseInstrumentationOptions, } from './autoLoaderUtils';

@@ -29,3 +30,4 @@ /**

var meterProvider = options.meterProvider || metrics.getMeterProvider();
enableInstrumentations(instrumentations, tracerProvider, meterProvider);
var loggerProvider = options.loggerProvider || logs.getLoggerProvider();
enableInstrumentations(instrumentations, tracerProvider, meterProvider, loggerProvider);
return function () {

@@ -32,0 +34,0 @@ disableInstrumentations(instrumentations);

import { TracerProvider, MeterProvider } from '@opentelemetry/api';
import { Instrumentation } from './types';
import { AutoLoaderResult, InstrumentationOption } from './types_internal';
import { LoggerProvider } from '@opentelemetry/api-logs';
/**

@@ -16,3 +17,3 @@ * Parses the options and returns instrumentations, node plugins and

*/
export declare function enableInstrumentations(instrumentations: Instrumentation[], tracerProvider?: TracerProvider, meterProvider?: MeterProvider): void;
export declare function enableInstrumentations(instrumentations: Instrumentation[], tracerProvider?: TracerProvider, meterProvider?: MeterProvider, loggerProvider?: LoggerProvider): void;
/**

@@ -19,0 +20,0 @@ * Disable instrumentations

@@ -46,3 +46,3 @@ /*

*/
export function enableInstrumentations(instrumentations, tracerProvider, meterProvider) {
export function enableInstrumentations(instrumentations, tracerProvider, meterProvider, loggerProvider) {
for (var i = 0, j = instrumentations.length; i < j; i++) {

@@ -56,2 +56,5 @@ var instrumentation = instrumentations[i];

}
if (loggerProvider && instrumentation.setLoggerProvider) {
instrumentation.setLoggerProvider(loggerProvider);
}
// instrumentations have been already enabled during creation

@@ -58,0 +61,0 @@ // so enable only if user prevented that by setting enabled to false

import { DiagLogger, Meter, MeterProvider, Tracer, TracerProvider } from '@opentelemetry/api';
import { Logger, LoggerProvider } from '@opentelemetry/api-logs';
import { InstrumentationModuleDefinition, Instrumentation, InstrumentationConfig } from './types';

@@ -12,2 +13,3 @@ /**

private _meter;
private _logger;
protected _diag: DiagLogger;

@@ -25,3 +27,18 @@ constructor(instrumentationName: string, instrumentationVersion: string, config?: InstrumentationConfig);

setMeterProvider(meterProvider: MeterProvider): void;
protected get logger(): Logger;
/**
* Sets LoggerProvider to this plugin
* @param loggerProvider
*/
setLoggerProvider(loggerProvider: LoggerProvider): void;
/**
* @experimental
*
* Get module definitions defined by {@link init}.
* This can be used for experimental compile-time instrumentation.
*
* @returns an array of {@link InstrumentationModuleDefinition}
*/
getModuleDefinitions(): InstrumentationModuleDefinition<T>[];
/**
* Sets the new metric instruments with the current Meter.

@@ -46,3 +63,3 @@ */

* Init method in which plugin should define _modules and patches for
* methods
* methods.
*/

@@ -49,0 +66,0 @@ protected abstract init(): InstrumentationModuleDefinition<T> | InstrumentationModuleDefinition<T>[] | void;

@@ -28,2 +28,3 @@ /*

import { diag, metrics, trace, } from '@opentelemetry/api';
import { logs } from '@opentelemetry/api-logs';
import * as shimmer from 'shimmer';

@@ -52,2 +53,3 @@ /**

this._meter = metrics.getMeter(instrumentationName, instrumentationVersion);
this._logger = logs.getLogger(instrumentationName, instrumentationVersion);
this._updateMetricInstruments();

@@ -71,3 +73,34 @@ }

};
Object.defineProperty(InstrumentationAbstract.prototype, "logger", {
/* Returns logger */
get: function () {
return this._logger;
},
enumerable: false,
configurable: true
});
/**
* Sets LoggerProvider to this plugin
* @param loggerProvider
*/
InstrumentationAbstract.prototype.setLoggerProvider = function (loggerProvider) {
this._logger = loggerProvider.getLogger(this.instrumentationName, this.instrumentationVersion);
};
/**
* @experimental
*
* Get module definitions defined by {@link init}.
* This can be used for experimental compile-time instrumentation.
*
* @returns an array of {@link InstrumentationModuleDefinition}
*/
InstrumentationAbstract.prototype.getModuleDefinitions = function () {
var _a;
var initResult = (_a = this.init()) !== null && _a !== void 0 ? _a : [];
if (!Array.isArray(initResult)) {
return [initResult];
}
return initResult;
};
/**
* Sets the new metric instruments with the current Meter.

@@ -74,0 +107,0 @@ */

@@ -189,4 +189,5 @@ /*

var files = (_a = module.files) !== null && _a !== void 0 ? _a : [];
var normalizedName = path.normalize(name);
var supportedFileInstrumentations = files
.filter(function (f) { return f.name === name; })
.filter(function (f) { return f.name === normalizedName; })
.filter(function (f) {

@@ -193,0 +194,0 @@ return isSupported(f.supportedVersions, version, module.includePrerelease);

import { TracerProvider, MeterProvider } from '@opentelemetry/api';
import { InstrumentationBase } from './platform';
import { Instrumentation } from './types';
import { LoggerProvider } from '@opentelemetry/api-logs';
export declare type InstrumentationOption = typeof InstrumentationBase | (typeof InstrumentationBase)[] | Instrumentation | Instrumentation[];

@@ -12,3 +13,4 @@ export interface AutoLoaderResult {

meterProvider?: MeterProvider;
loggerProvider?: LoggerProvider;
}
//# sourceMappingURL=types_internal.d.ts.map
import { TracerProvider, MeterProvider } from '@opentelemetry/api';
import { LoggerProvider } from '@opentelemetry/api-logs';
/** Interface Instrumentation to apply patch. */

@@ -22,2 +23,4 @@ export interface Instrumentation {

setMeterProvider(meterProvider: MeterProvider): void;
/** Method to set logger provider */
setLoggerProvider?(loggerProvider: LoggerProvider): void;
/** Method to set instrumentation config */

@@ -24,0 +27,0 @@ setConfig(config: InstrumentationConfig): void;

@@ -1,2 +0,2 @@

export declare const VERSION = "0.48.0";
export declare const VERSION = "0.49.0";
//# sourceMappingURL=version.d.ts.map

@@ -17,3 +17,3 @@ /*

// this is autogenerated file, see scripts/version-update.js
export var VERSION = '0.48.0';
export var VERSION = '0.49.0';
//# sourceMappingURL=version.js.map

@@ -17,2 +17,3 @@ /*

import { trace, metrics } from '@opentelemetry/api';
import { logs } from '@opentelemetry/api-logs';
import { disableInstrumentations, enableInstrumentations, parseInstrumentationOptions, } from './autoLoaderUtils';

@@ -29,3 +30,4 @@ /**

const meterProvider = options.meterProvider || metrics.getMeterProvider();
enableInstrumentations(instrumentations, tracerProvider, meterProvider);
const loggerProvider = options.loggerProvider || logs.getLoggerProvider();
enableInstrumentations(instrumentations, tracerProvider, meterProvider, loggerProvider);
return () => {

@@ -32,0 +34,0 @@ disableInstrumentations(instrumentations);

import { TracerProvider, MeterProvider } from '@opentelemetry/api';
import { Instrumentation } from './types';
import { AutoLoaderResult, InstrumentationOption } from './types_internal';
import { LoggerProvider } from '@opentelemetry/api-logs';
/**

@@ -16,3 +17,3 @@ * Parses the options and returns instrumentations, node plugins and

*/
export declare function enableInstrumentations(instrumentations: Instrumentation[], tracerProvider?: TracerProvider, meterProvider?: MeterProvider): void;
export declare function enableInstrumentations(instrumentations: Instrumentation[], tracerProvider?: TracerProvider, meterProvider?: MeterProvider, loggerProvider?: LoggerProvider): void;
/**

@@ -19,0 +20,0 @@ * Disable instrumentations

@@ -45,3 +45,3 @@ /*

*/
export function enableInstrumentations(instrumentations, tracerProvider, meterProvider) {
export function enableInstrumentations(instrumentations, tracerProvider, meterProvider, loggerProvider) {
for (let i = 0, j = instrumentations.length; i < j; i++) {

@@ -55,2 +55,5 @@ const instrumentation = instrumentations[i];

}
if (loggerProvider && instrumentation.setLoggerProvider) {
instrumentation.setLoggerProvider(loggerProvider);
}
// instrumentations have been already enabled during creation

@@ -57,0 +60,0 @@ // so enable only if user prevented that by setting enabled to false

import { DiagLogger, Meter, MeterProvider, Tracer, TracerProvider } from '@opentelemetry/api';
import { Logger, LoggerProvider } from '@opentelemetry/api-logs';
import { InstrumentationModuleDefinition, Instrumentation, InstrumentationConfig } from './types';

@@ -12,2 +13,3 @@ /**

private _meter;
private _logger;
protected _diag: DiagLogger;

@@ -25,3 +27,18 @@ constructor(instrumentationName: string, instrumentationVersion: string, config?: InstrumentationConfig);

setMeterProvider(meterProvider: MeterProvider): void;
protected get logger(): Logger;
/**
* Sets LoggerProvider to this plugin
* @param loggerProvider
*/
setLoggerProvider(loggerProvider: LoggerProvider): void;
/**
* @experimental
*
* Get module definitions defined by {@link init}.
* This can be used for experimental compile-time instrumentation.
*
* @returns an array of {@link InstrumentationModuleDefinition}
*/
getModuleDefinitions(): InstrumentationModuleDefinition<T>[];
/**
* Sets the new metric instruments with the current Meter.

@@ -46,3 +63,3 @@ */

* Init method in which plugin should define _modules and patches for
* methods
* methods.
*/

@@ -49,0 +66,0 @@ protected abstract init(): InstrumentationModuleDefinition<T> | InstrumentationModuleDefinition<T>[] | void;

@@ -17,2 +17,3 @@ /*

import { diag, metrics, trace, } from '@opentelemetry/api';
import { logs } from '@opentelemetry/api-logs';
import * as shimmer from 'shimmer';

@@ -40,2 +41,3 @@ /**

this._meter = metrics.getMeter(instrumentationName, instrumentationVersion);
this._logger = logs.getLogger(instrumentationName, instrumentationVersion);
this._updateMetricInstruments();

@@ -55,3 +57,30 @@ }

}
/* Returns logger */
get logger() {
return this._logger;
}
/**
* Sets LoggerProvider to this plugin
* @param loggerProvider
*/
setLoggerProvider(loggerProvider) {
this._logger = loggerProvider.getLogger(this.instrumentationName, this.instrumentationVersion);
}
/**
* @experimental
*
* Get module definitions defined by {@link init}.
* This can be used for experimental compile-time instrumentation.
*
* @returns an array of {@link InstrumentationModuleDefinition}
*/
getModuleDefinitions() {
var _a;
const initResult = (_a = this.init()) !== null && _a !== void 0 ? _a : [];
if (!Array.isArray(initResult)) {
return [initResult];
}
return initResult;
}
/**
* Sets the new metric instruments with the current Meter.

@@ -58,0 +87,0 @@ */

@@ -158,4 +158,5 @@ /*

const files = (_a = module.files) !== null && _a !== void 0 ? _a : [];
const normalizedName = path.normalize(name);
const supportedFileInstrumentations = files
.filter(f => f.name === name)
.filter(f => f.name === normalizedName)
.filter(f => isSupported(f.supportedVersions, version, module.includePrerelease));

@@ -162,0 +163,0 @@ return supportedFileInstrumentations.reduce((patchedExports, file) => {

import { TracerProvider, MeterProvider } from '@opentelemetry/api';
import { InstrumentationBase } from './platform';
import { Instrumentation } from './types';
import { LoggerProvider } from '@opentelemetry/api-logs';
export declare type InstrumentationOption = typeof InstrumentationBase | (typeof InstrumentationBase)[] | Instrumentation | Instrumentation[];

@@ -12,3 +13,4 @@ export interface AutoLoaderResult {

meterProvider?: MeterProvider;
loggerProvider?: LoggerProvider;
}
//# sourceMappingURL=types_internal.d.ts.map
import { TracerProvider, MeterProvider } from '@opentelemetry/api';
import { LoggerProvider } from '@opentelemetry/api-logs';
/** Interface Instrumentation to apply patch. */

@@ -22,2 +23,4 @@ export interface Instrumentation {

setMeterProvider(meterProvider: MeterProvider): void;
/** Method to set logger provider */
setLoggerProvider?(loggerProvider: LoggerProvider): void;
/** Method to set instrumentation config */

@@ -24,0 +27,0 @@ setConfig(config: InstrumentationConfig): void;

@@ -1,2 +0,2 @@

export declare const VERSION = "0.48.0";
export declare const VERSION = "0.49.0";
//# sourceMappingURL=version.d.ts.map

@@ -17,3 +17,3 @@ /*

// this is autogenerated file, see scripts/version-update.js
export const VERSION = '0.48.0';
export const VERSION = '0.49.0';
//# sourceMappingURL=version.js.map

@@ -20,2 +20,3 @@ "use strict";

const api_1 = require("@opentelemetry/api");
const api_logs_1 = require("@opentelemetry/api-logs");
const autoLoaderUtils_1 = require("./autoLoaderUtils");

@@ -32,3 +33,4 @@ /**

const meterProvider = options.meterProvider || api_1.metrics.getMeterProvider();
(0, autoLoaderUtils_1.enableInstrumentations)(instrumentations, tracerProvider, meterProvider);
const loggerProvider = options.loggerProvider || api_logs_1.logs.getLoggerProvider();
(0, autoLoaderUtils_1.enableInstrumentations)(instrumentations, tracerProvider, meterProvider, loggerProvider);
return () => {

@@ -35,0 +37,0 @@ (0, autoLoaderUtils_1.disableInstrumentations)(instrumentations);

import { TracerProvider, MeterProvider } from '@opentelemetry/api';
import { Instrumentation } from './types';
import { AutoLoaderResult, InstrumentationOption } from './types_internal';
import { LoggerProvider } from '@opentelemetry/api-logs';
/**

@@ -16,3 +17,3 @@ * Parses the options and returns instrumentations, node plugins and

*/
export declare function enableInstrumentations(instrumentations: Instrumentation[], tracerProvider?: TracerProvider, meterProvider?: MeterProvider): void;
export declare function enableInstrumentations(instrumentations: Instrumentation[], tracerProvider?: TracerProvider, meterProvider?: MeterProvider, loggerProvider?: LoggerProvider): void;
/**

@@ -19,0 +20,0 @@ * Disable instrumentations

@@ -49,3 +49,3 @@ "use strict";

*/
function enableInstrumentations(instrumentations, tracerProvider, meterProvider) {
function enableInstrumentations(instrumentations, tracerProvider, meterProvider, loggerProvider) {
for (let i = 0, j = instrumentations.length; i < j; i++) {

@@ -59,2 +59,5 @@ const instrumentation = instrumentations[i];

}
if (loggerProvider && instrumentation.setLoggerProvider) {
instrumentation.setLoggerProvider(loggerProvider);
}
// instrumentations have been already enabled during creation

@@ -61,0 +64,0 @@ // so enable only if user prevented that by setting enabled to false

import { DiagLogger, Meter, MeterProvider, Tracer, TracerProvider } from '@opentelemetry/api';
import { Logger, LoggerProvider } from '@opentelemetry/api-logs';
import { InstrumentationModuleDefinition, Instrumentation, InstrumentationConfig } from './types';

@@ -12,2 +13,3 @@ /**

private _meter;
private _logger;
protected _diag: DiagLogger;

@@ -25,3 +27,18 @@ constructor(instrumentationName: string, instrumentationVersion: string, config?: InstrumentationConfig);

setMeterProvider(meterProvider: MeterProvider): void;
protected get logger(): Logger;
/**
* Sets LoggerProvider to this plugin
* @param loggerProvider
*/
setLoggerProvider(loggerProvider: LoggerProvider): void;
/**
* @experimental
*
* Get module definitions defined by {@link init}.
* This can be used for experimental compile-time instrumentation.
*
* @returns an array of {@link InstrumentationModuleDefinition}
*/
getModuleDefinitions(): InstrumentationModuleDefinition<T>[];
/**
* Sets the new metric instruments with the current Meter.

@@ -46,3 +63,3 @@ */

* Init method in which plugin should define _modules and patches for
* methods
* methods.
*/

@@ -49,0 +66,0 @@ protected abstract init(): InstrumentationModuleDefinition<T> | InstrumentationModuleDefinition<T>[] | void;

@@ -20,2 +20,3 @@ "use strict";

const api_1 = require("@opentelemetry/api");
const api_logs_1 = require("@opentelemetry/api-logs");
const shimmer = require("shimmer");

@@ -43,2 +44,3 @@ /**

this._meter = api_1.metrics.getMeter(instrumentationName, instrumentationVersion);
this._logger = api_logs_1.logs.getLogger(instrumentationName, instrumentationVersion);
this._updateMetricInstruments();

@@ -58,3 +60,30 @@ }

}
/* Returns logger */
get logger() {
return this._logger;
}
/**
* Sets LoggerProvider to this plugin
* @param loggerProvider
*/
setLoggerProvider(loggerProvider) {
this._logger = loggerProvider.getLogger(this.instrumentationName, this.instrumentationVersion);
}
/**
* @experimental
*
* Get module definitions defined by {@link init}.
* This can be used for experimental compile-time instrumentation.
*
* @returns an array of {@link InstrumentationModuleDefinition}
*/
getModuleDefinitions() {
var _a;
const initResult = (_a = this.init()) !== null && _a !== void 0 ? _a : [];
if (!Array.isArray(initResult)) {
return [initResult];
}
return initResult;
}
/**
* Sets the new metric instruments with the current Meter.

@@ -61,0 +90,0 @@ */

@@ -161,4 +161,5 @@ "use strict";

const files = (_a = module.files) !== null && _a !== void 0 ? _a : [];
const normalizedName = path.normalize(name);
const supportedFileInstrumentations = files
.filter(f => f.name === name)
.filter(f => f.name === normalizedName)
.filter(f => isSupported(f.supportedVersions, version, module.includePrerelease));

@@ -165,0 +166,0 @@ return supportedFileInstrumentations.reduce((patchedExports, file) => {

import { TracerProvider, MeterProvider } from '@opentelemetry/api';
import { InstrumentationBase } from './platform';
import { Instrumentation } from './types';
import { LoggerProvider } from '@opentelemetry/api-logs';
export declare type InstrumentationOption = typeof InstrumentationBase | (typeof InstrumentationBase)[] | Instrumentation | Instrumentation[];

@@ -12,3 +13,4 @@ export interface AutoLoaderResult {

meterProvider?: MeterProvider;
loggerProvider?: LoggerProvider;
}
//# sourceMappingURL=types_internal.d.ts.map
import { TracerProvider, MeterProvider } from '@opentelemetry/api';
import { LoggerProvider } from '@opentelemetry/api-logs';
/** Interface Instrumentation to apply patch. */

@@ -22,2 +23,4 @@ export interface Instrumentation {

setMeterProvider(meterProvider: MeterProvider): void;
/** Method to set logger provider */
setLoggerProvider?(loggerProvider: LoggerProvider): void;
/** Method to set instrumentation config */

@@ -24,0 +27,0 @@ setConfig(config: InstrumentationConfig): void;

@@ -1,2 +0,2 @@

export declare const VERSION = "0.48.0";
export declare const VERSION = "0.49.0";
//# sourceMappingURL=version.d.ts.map

@@ -20,3 +20,3 @@ "use strict";

// this is autogenerated file, see scripts/version-update.js
exports.VERSION = '0.48.0';
exports.VERSION = '0.49.0';
//# sourceMappingURL=version.js.map
{
"name": "@opentelemetry/instrumentation",
"version": "0.48.0",
"version": "0.49.0",
"description": "Base class for node which OpenTelemetry instrumentation modules extend",

@@ -81,3 +81,4 @@ "author": "OpenTelemetry Authors",

"peerDependencies": {
"@opentelemetry/api": "^1.3.0"
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/api-logs": "^0.46.0"
},

@@ -87,4 +88,5 @@ "devDependencies": {

"@babel/preset-env": "7.22.20",
"@opentelemetry/api": "1.7.0",
"@opentelemetry/sdk-metrics": "1.21.0",
"@opentelemetry/api": "1.8.0",
"@opentelemetry/api-logs": "0.47.0",
"@opentelemetry/sdk-metrics": "1.22.0",
"@types/mocha": "10.0.6",

@@ -121,3 +123,3 @@ "@types/node": "18.6.5",

"sideEffects": false,
"gitHead": "828f2ed730e4d26d71f92e220f96b60a552a673a"
"gitHead": "7be35c7845e206b27b682e8ce1cee850b09cec04"
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc