Socket
Socket
Sign inDemoInstall

@opentelemetry/plugin-ioredis

Package Overview
Dependencies
6
Maintainers
4
Versions
19
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @opentelemetry/plugin-ioredis

OpenTelemetry ioredis automatic instrumentation package.


Version published
Weekly downloads
2.3K
increased by11.78%
Maintainers
4
Install size
526 kB
Created
Weekly downloads
 

Changelog

Source

0.13.1

:rocket: Enhancement
  • #330 Allow negative performance timings (@mhennoch)
  • #302 feat: add instrumentation-dns (@Flarna)
  • #301 feat: add ioredis instrumentation (@Flarna)
  • #324 User interaction instrumentation (@obecny)
:house: Internal
Committers: 4

Readme

Source

OpenTelemetry ioredis Instrumentation for Node.js

Gitter chat dependencies devDependencies Apache License

This module provides automatic instrumentation for ioredis.

For automatic instrumentation see the @opentelemetry/node package.

Installation

npm install --save @opentelemetry/plugin-ioredis

Supported Versions

  • >=2.0.0

Usage

To load a specific plugin (ioredis in this case), specify it in the Node Tracer's configuration

const { NodeTracerProvider } = require('@opentelemetry/node');

const provider = new NodeTracerProvider({
  plugins: {
    ioredis: {
      enabled: true,
      // You may use a package name or absolute path to the file.
      path: '@opentelemetry/plugin-ioredis',
    }
  }
});

To load all of the supported plugins, use below approach. Each plugin is only loaded when the module that it patches is loaded; in other words, there is no computational overhead for listing plugins for unused modules.

const { NodeTracerProvider } = require('@opentelemetry/node');

const provider = new NodeTracerProvider();

IORedis Plugin Options

IORedis plugin has few options available to choose from. You can set the following:

OptionsTypeDescription
dbStatementSerializerDbStatementSerializerIORedis plugin will serialize db.statement using the specified function.

#### Custom db.statement Serializer The plugin serializes the whole command into a Span attribute called db.statement. The standard serialization format is {cmdName} {cmdArgs.join(',')}. It is also possible to define a custom serialization function. The function will receive the command name and arguments and must return a string.

Here is a simple example to serialize the command name skipping arguments:

const { NodeTracerProvider } = require('@opentelemetry/node');

const provider = new NodeTracerProvider({
  plugins: {
    ioredis: {
      enabled: true,
      // You may use a package name or absolute path to the file.
      path: '@opentelemetry/plugin-ioredis',
      dbStatementSerializer: function (cmdName, cmdArgs) {
        return cmdName;
      }
    }
  }
});

License

Apache 2.0 - See LICENSE for more information.

Keywords

FAQs

Last updated on 10 Feb 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc