heroku-dyno-metadata
Access Heroku Dyno metadata in Node.js and expose them as HTTP headers.
Install
npm install heroku-dyno-metadata
yarn add heroku-dyno-metadata
Dyno Metadata is an Heroku Labs feature at the moment and have to be enabled this way:
heroku labs:enable runtime-dyno-metadata -a <app name>
Usage with Express 4.x
import express from 'express';
import { middleware as herokuDynoMetadata } from 'heroku-dyno-metadata';
const app = express().use(herokuDynoMetadata());
API
metadata
metadata
-
This function is exposed as the default
export.
-
Use import metadata from 'heroku-dyno-metadata'
or require('heroku-dyno-metadata')
.
-
Returns an object containing Heroku Dyno metadata, keys are camel-cased.
-
Example:
console.log(metadata.dynoName);
middleware
middleware([keys])
-
Use import { middleware } from 'heroku-dyno-metadata'
or require('heroku-dyno-metadata').middleware
.
-
Returns an Express middleware.
-
The optional keys
argument allows picking headers exposed. Default is all headers available (listed below).
-
Example:
middleware(['x-heroku-app-id', 'x-heroku-dyno-id']);
Header | Description | Example |
---|
x-heroku-app-id | The unique identifier for the application | 9daa2797-e49b-4624-932f-ec3f9688e3da |
x-heroku-app-name | The application name | example-app |
x-heroku-dyno-id | The dyno identifier | 1vac4117-c29f-4312-521e-ba4d8638c1ac |
x-heroku-dyno-name | The dyno name | web.1 |
x-heroku-slug-commit | The commit hash for current release | 2c3a0b24069af49b3de35b8e8c26765c1dba9ff0 |
x-heroku-slug-description | The commit description for current release | Deploy 2c3a0b2 |
x-heroku-release-created-at | The time and date the release was created | 2015/04/02 18:00:42 |
x-heroku-release-version | The version of current release | v42 |
More information: Heroku Labs: Dyno Metadata
License
MIT © Gowento