dx-metrex
v0.1.6
Published
Creates DXO2 Vertices and Edges from DX APM Metrics
Downloads
175
Readme
dx-metrex
Description
Creates vertices from APM metrics for use in services + topology views
High Level Usage
- Create and test dx-metrex metrex and topographer configurations using dx-do metrex and topographer commands
- Configure and start an instance of dx-metrex
- Publish configurations
- Verify Vertices and Edges.
Test / Temporary Execution
Install nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash
Install Node/NPM 18/10 using nvm
nvm install 18
Use npm's npx to execute
npx dx-metrex@latest --help
Environment Variable Configuration parameters
Log Levels
Comma Separated List, Available levels: ERROR,WARN,LOG,DEBUG
DX_METREX_LOG_LEVELS=error,warn
Metrex Configuration Directory
Where live configuration files will be read from. configuration files all must end in the suffix metrex.yaml
When running from a prod container, this should be a readmany PV claim available to all instances.
DX_METREX_CONFIGURATIONS_DIRECTORY=/var/df-metrex/metrex/configurations
Metrex Configuration Directory
Where live configuration files will be read from. configuration files all must end in the suffix topographer.yaml
When running from a prod container, this should be a readmany PV claim available to all instances.
DX_TOPOGRAPHER_CONFIGURATIONS_DIRECTORY=/var/df-metrex/metrex/configurations
DX Tenant configuration file
Configuration file containing tenant identification, tokens and endpoints.
When running from container, this should be provided by a secret.
DX_TENANT_CONFIG_FILE=/var/secrets/dx-config.json
Example dx tenant configuration file:
{
"configurationVersion": "3",
"tenantId": "<number from apmgw url path segment>",
"tenantCN": "<tenant name>",
"hostUrl": "https://apmgw.dxi-na1.saas.broadcom.com/",
"dashboardHostUrl": "https://dxi-dashboard.dxi-na1.saas.broadcom.com/",
"tenantToken": "<tenant token",
"userToken": "<user token>"
}
Increasing memory for the dx-metrex process
Pass the memory limit increase (in MB) on the node command line, example below is setting memory to 1000MB = 1GB.
--max-old-space-size=1000
Sustainability Configuration
3 environment variables control the naming of the agent under which the adapter's sustainability metrics are reported:
DX_METREX_SUSTAINABILITY_HOSTNAME
DX_METREX_SUSTAINABILITY_PROCESS
DX_METREX_SUSTAINABILITY_AGENT
Source Installation
$ npm install
Before running configure .env or environment variables
If connecting to development / self-signed cert tenant, set
ALLOW_INSECURE_HTTPS=true
Run in dev mode
$ npm run start:dev
Test
# unit tests
$ npm run test
# e2e tests
$ npm run test:e2e
# test coverage
$ npm run test:cov