This package has been deprecated

    Author message:

    Deprecated in favor of @opentelemetry/instrumentation-ioredis

    @opentelemetry/plugin-ioredis
    TypeScript icon, indicating that this package has built-in type declarations

    0.15.0 • Public • Published

    OpenTelemetry ioredis Instrumentation for Node.js

    NPM Published Version 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 registerInstrumentations's configuration

    const { NodeTracerProvider } = require('@opentelemetry/node');
    const { registerInstrumentations } = require('@opentelemetry/instrumentation');
    
    const provider = new NodeTracerProvider();
    provider.register();
    
    registerInstrumentations({
      instrumentations: [
        {
          plugins: {
            ioredis: {
              enabled: true,
              // You may use a package name or absolute path to the file.
              path: '@opentelemetry/plugin-ioredis',
            }
          }
        },
      ],
      tracerProvider: provider,
    });

    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 { registerInstrumentations } = require('@opentelemetry/instrumentation');
    
    const provider = new NodeTracerProvider();
    provider.register();
    registerInstrumentations({
      tracerProvider: provider,
    });

    IORedis Plugin Options

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

    Options Type Description
    dbStatementSerializer DbStatementSerializer IORedis 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;
          }
        }
      }
    });

    Useful links

    License

    Apache 2.0 - See LICENSE for more information.

    Install

    npm i @opentelemetry/plugin-ioredis

    DownloadsWeekly Downloads

    6,530

    Version

    0.15.0

    License

    Apache-2.0

    Unpacked Size

    29.9 kB

    Total Files

    13

    Last publish

    Collaborators

    • bogdandrutu
    • dyladan
    • mayurkale22
    • obecny