@vidaxl/apm-adapter
v1.0.13
Published
@vidaxl/apm-adapter
Downloads
257
Keywords
Readme
APM Adapter
Summary
This is an private npm
module that provides a wrapper of elastic-apm-node
library. It has default configuration for elastic apm
.
Usage
- Install package
npm i -S @vidaxl/apm-adapter
- Use it before all of your routes and server initialization
const ApmAdapter = require('@vidaxl/apm-adapter');
const apmOptions = {
serverUrl: 'http://localhost:8200',
};
const apmAdapter = new ApmAdapter(apmOptions);
const apmMetadata = apmAdapter
.start()
.getMetadata();
if (apmMetadata.isStarted) {
console.log('APM module started. Meta:', JSON.stringify(apmMetadata, 2, 2));
}
IMPORTANT: Buy default ApmAdapter
will automatically create serviceName
with environment prefix from NODE_ENV
env variable and name
field from parent sertvice package.json
where this module is used. But you can override it by adding serviceName
field to ApmAdapter
configurations object. In this case environment prefix also will be addend automatically.
APM Adapter API
constructor(options)
- Create a instance of classApmAdapter
.options
type: Object - A configuration object forApmAdapter
, it has same structure as configuration object forelastic-apm-node
(full description). It has one required field:serverUrl
type: String | String[] - A single link or a list of links to your Elastic APM server.
start()
-ApmAdapter
instance method. Directly starts Elastic APM module and returnsApmAdapter
instance.getDefaultOptions()
-ApmAdapter
instance method. Returns an object with default configuration forelastic-apm-node
.getMetadata()
-ApmAdapter
instance method. Returns an object with basic meta data:
{
isStarted: Boolean, // true when apm is started
adapterVersion: String, // contains version of @vidaxl/apm-adapter package
env: String, // contains value of procees.env.NODE_ENV
serviceName: String, // contains name of service as it will be displayed in Elastic APM
serverUrl: String | String[], // contains value from passed options to constructor
}
validateOptions({ serviceName, serverUrl })
-ApmAdapter
class/static method. ValidatesserviceName
(if it is present) andserverUrl
.getApm()
-ApmAdapter
class/static method. Returnselastic-apm-node
module object.