express-influxdb-logger is an Express middleware that can be used to log info on all HTTP requests to an InfluxDB instance.
const express = require('express');
const createInfluxDBLogger = require('express-influxdb-logger');
const app = express();
app.use(createInfluxDBLogger({
host: 'my-influxdb-server.host',
port: 8086,
database: 'database_name',
username: 'influxdb_user',
password: 'influxdb_password,
}));
// Then declare your route handlers below.
The following options are accepted when creating an instance of the InfluxDB logger:
-
host
: hostname of your InfluxDB server (required) -
port
: port on which the InfluxDB's HTTP server listens on (required) -
database
: name of the database to log to (required) -
protocol
: either 'http' or 'https' (required, default:https
) -
username
: username to authenticate with if the server requires -
password
: password to authenticate with if the server requires -
flushAfter
: send log lines to the database in batches of this number (default: 5) -
flushInterval
: send log lines to the database after this number of milliseconds max (default: 10000)
Note the flushAfter
and flushInterval
config values work together. By default, a batch will be sent to the server every time it has least 5 log entries in it, OR after 10 seconds of staleness at the longest.
A TypeScript fork and extension of influx-express.