pino-postgres
Advanced tools
Comparing version 0.0.31 to 0.0.32
23
index.js
@@ -23,17 +23,6 @@ #! /usr/bin/env node | ||
_transform (chunk, encoding, callback) { | ||
const { contentColumn, timeColumn, timeField, passThrough } = this.opts | ||
const { column, passThrough } = this.opts | ||
const content = chunk.toString('utf-8') | ||
let parsed | ||
try { | ||
parsed = JSON.parse(content) | ||
} catch (e) { | ||
return callback(null, passThrough ? `${chunk}\n` : null) | ||
} | ||
if (!parsed[timeField]) { | ||
return callback(null, passThrough ? `${chunk}\n` : null) | ||
} | ||
buffer.push({ [contentColumn]: content, [timeColumn]: new Date(parsed[timeField]).toISOString() }) | ||
buffer.push({ [column]: content }) | ||
if (buffer.length > this.opts.bufferSize) { | ||
@@ -49,3 +38,3 @@ flushBuffer(this.sql, this.opts) | ||
const query = sql` | ||
INSERT INTO ${sql(opts.schema)}.${sql(opts.table)} ${sql(buffer, opts.contentColumn, opts.timeColumn)} | ||
INSERT INTO ${sql(opts.schema)}.${sql(opts.table)} ${sql(buffer, opts.column)} | ||
ON CONFLICT DO NOTHING; | ||
@@ -87,5 +76,3 @@ `.catch((err) => { | ||
.option('--schema <name>', 'schema name', 'public') | ||
.option('--content-column <name>', 'content column name', 'content') | ||
.option('--time-column <name>', 'time column name', 'time') | ||
.option('--time-field <name>', 'time field name', 'time') | ||
.option('--column <name>', 'column name', 'content') | ||
.option('--flush-interval <number>', 'interval at which logs are flushed in ms', parseNumber, 5000) | ||
@@ -103,5 +90,7 @@ .option('--buffer-size <number>', 'max number of log entries in buffer', parseNumber, 1000) | ||
} | ||
if (opts.ssl) { | ||
postgresOpts.ssl = { rejectUnauthorized: false } | ||
} | ||
if (opts.debug) { | ||
@@ -108,0 +97,0 @@ postgresOpts.debug = (connection, query, params) => { |
{ | ||
"name": "pino-postgres", | ||
"version": "0.0.31", | ||
"version": "0.0.32", | ||
"description": "Pino transport for Postgres", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
7196
116