Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
/*
 * (c) Copyright IBM Corp. 2021
 * (c) Copyright Instana Inc. and contributors 2020
 */

'use strict';

/** @type {Array.<import('@supertenant/core/src/metrics').InstanaMetricsModule>} */
const allMetrics = [
  require('./activeHandles'),
  require('./activeRequests'),
  require('./args'),
  require('./dependencies'),
  require('./directDependencies'),
  require('./description'),
  require('./directDependencies'),
  require('./execArgs'),
  require('./gc'),
  require('./healthchecks'),
  require('./heapSpaces'),
  require('./http'),
  require('./keywords'),
  require('./libuv'),
  require('./memory'),
  require('./name'),
  require('./version')
];

const util = require('./util');

/**
 * @param {import('@supertenant/core/src/logger').GenericLogger} logger
 */
const setLogger = function (logger) {
  util.setLogger(logger);
};

/**
 * @typedef {Object} InstanaSharedMetrics
 * @property {Array.<import('@supertenant/core/src/metrics').InstanaMetricsModule>} allMetrics
 * @property {import('./util')} util
 * @property {(logger: import('@supertenant/core/src/logger').GenericLogger) => void} setLogger
 */

/** @type {InstanaSharedMetrics} */
module.exports = {
  allMetrics,
  util,
  setLogger
};