A structured-log plugin that writes log events to Seq.
Requires polyfills for Promise
and fetch
if those aren't supported in your target platform/browser.
npm i structured-log-seq-sink --save
var structuredLog = require('structured-log');
var seqSink = require('structured-log-seq-sink');
var logger = structuredLog.configure()
.writeTo(seqSink({ /* ... options ... */ }))
.create();
Parameter | Description |
---|---|
apiKey |
(optional) API key to use |
compact |
(optional) If true, events be serialized using Serilog's compact format |
durable |
(optional) If true, events will be buffered in local storage if available |
levelSwitch |
(optional) DynamicLevelSwitch which the Seq log level will control and use |
suppressErrors |
(optional) If true, errors in the pipeline will be suppressed and logged to the console instead (defaults to true) |
url |
(required) URL to the Seq server |
Much like Serilog's Dynamic Level Control via Seq, Seq can be used to dynamically
control the log level of structured-log
. To configure, setup a DynamicLevelSwitch
and pass it to the sink:
var levelSwitch = new structuredLog.DynamicLevelSwitch("info")
var log = structuredLog.configure()
.minLevel(levelSwitch)
.writeTo(SeqSink({
url: "http://localhost:5341",
apiKey: "API_KEY",
levelSwitch: levelSwitch
}))
.create();
This can be used as the log level across the entire pipeline (by using .minLevel(levelSwitch)
, or just for the
seq sink (by passing it in the options
array).
To build the modules yourself, you need Node 8 or greater. Check out the code, then install dependencies and run the build
script:
npm i
npm run build
Then, you can test the bundled module by running:
npm test