pino-socket
Advanced tools
Comparing version 4.0.0 to 4.0.1
@@ -34,3 +34,4 @@ 'use strict' | ||
const sourceStream = Object.prototype.hasOwnProperty.call(options, 'sourceStream') | ||
? options.sourceStream : buildCliSourceStream() | ||
? options.sourceStream | ||
: buildCliSourceStream() | ||
let socket = null | ||
@@ -37,0 +38,0 @@ let connected = false |
@@ -17,6 +17,8 @@ 'use strict' | ||
const writableStream = new stream.Writable({ | ||
close () { socket.close() }, | ||
autoDestroy: true, | ||
destroy (err, callback) { | ||
socket.close(callback.bind(null, err)) | ||
}, | ||
write (data, encoding, callback) { | ||
socket.send(data, 0, data.length, options.port, options.address) | ||
callback() | ||
socket.send(data, callback) | ||
} | ||
@@ -26,3 +28,4 @@ }) | ||
const sourceStream = Object.prototype.hasOwnProperty.call(options, 'sourceStream') | ||
? options.sourceStream : process.stdin | ||
? options.sourceStream | ||
: process.stdin | ||
@@ -33,3 +36,11 @@ if (sourceStream) { | ||
socket.on('error', (err) => { | ||
writableStream.emit('error', err) | ||
}) | ||
socket.connect(options.port, options.address, () => { | ||
writableStream.emit('open') | ||
}) | ||
return writableStream | ||
} |
{ | ||
"name": "pino-socket", | ||
"version": "4.0.0", | ||
"version": "4.0.1", | ||
"description": "A pino 'transport' for writing to a tcp, udp, or unix socket", | ||
@@ -9,2 +9,3 @@ "homepage": "https://github.com/pinojs/pino-socket", | ||
"scripts": { | ||
"lint:fix": "standard --fix", | ||
"test": "standard && mocha --ui qunit -R dot test", | ||
@@ -33,3 +34,3 @@ "test:unit": "mocha --ui qunit test/transport.js", | ||
"pre-commit": "^1.1.3", | ||
"standard": "^14.3.4" | ||
"standard": "^16.0.3" | ||
}, | ||
@@ -36,0 +37,0 @@ "dependencies": { |
'use strict' | ||
/* eslint-env node, mocha */ | ||
const dgram = require('dgram') | ||
const net = require('net') | ||
const path = require('path') | ||
const spawn = require('child_process').spawn | ||
const expect = require('chai').expect | ||
const { createTcpListener, createUdpListener } = require('./utils') | ||
function createTcpListener (msgHandler) { | ||
return new Promise((resolve, reject) => { | ||
const socket = net.createServer((connection) => { | ||
connection.on('data', (data) => { | ||
msgHandler(data.toString()) | ||
}) | ||
}) | ||
socket.listen(0, '127.0.0.1', (err) => { | ||
if (err) { | ||
return reject(err) | ||
} | ||
return resolve(socket) | ||
}) | ||
}) | ||
} | ||
function createUdpListener (msgHandler) { | ||
return new Promise((resolve) => { | ||
const socket = dgram.createSocket('udp4') | ||
socket.on('message', (msg) => msgHandler(msg.toString())) | ||
socket.on('error', (err) => console.log(`socket error: ${err.message}`)) | ||
socket.bind({ address: '127.0.0.1' }, () => resolve(socket)) | ||
}) | ||
} | ||
function tcpTest (done, socketOptions, cb) { | ||
@@ -41,7 +16,7 @@ let socket | ||
const port = socket.address().port | ||
const logit = spawn('node', [`${__dirname}/fixtures/logit.js`]) | ||
const logit = spawn('node', [path.join(__dirname, '/fixtures/logit.js')]) | ||
logit.unref() | ||
const psock = spawn( | ||
'node', | ||
[`${__dirname}/../psock.js`, '-a', address, '-p', port, '-m', 'tcp'].concat(socketOptions) | ||
[path.join(__dirname, '/../psock.js'), '-a', address, '-p', port, '-m', 'tcp'].concat(socketOptions) | ||
) | ||
@@ -63,6 +38,6 @@ psock.unref() | ||
const port = socket.address().port | ||
const logit = spawn('node', [`${__dirname}/fixtures/logit.js`]) | ||
const logit = spawn('node', [path.join(__dirname, '/fixtures/logit.js')]) | ||
const psock = spawn( | ||
'node', | ||
[`${__dirname}/../psock.js`, '-a', address, '-p', port].concat(socketOptions) | ||
[path.join(__dirname, '/../psock.js'), '-a', address, '-p', port].concat(socketOptions) | ||
) | ||
@@ -69,0 +44,0 @@ |
@@ -5,2 +5,3 @@ 'use strict' | ||
const net = require('net') | ||
const path = require('path') | ||
const spawn = require('child_process').spawn | ||
@@ -27,3 +28,3 @@ const expect = require('chai').expect | ||
'node', | ||
[`${__dirname}/../psock.js`, '-a', address, '-p', port, '-s', `${__dirname}/fixtures/config.json`] | ||
[path.join(__dirname, '/../psock.js'), '-a', address, '-p', port, '-s', path.join(__dirname, '/fixtures/config.json')] | ||
) | ||
@@ -30,0 +31,0 @@ psock.unref() |
@@ -5,2 +5,3 @@ 'use strict' | ||
const net = require('net') | ||
const path = require('path') | ||
const spawn = require('child_process').spawn | ||
@@ -71,3 +72,3 @@ const expect = require('chai').expect | ||
'node', | ||
[`${__dirname}/../psock.js`, '-a', address, '-p', port, '-m', 'tcp', '-r', '-t', 2] | ||
[path.join(__dirname, '/../psock.js'), '-a', address, '-p', port, '-m', 'tcp', '-r', '-t', 2] | ||
) | ||
@@ -74,0 +75,0 @@ // for debugging |
@@ -5,2 +5,3 @@ 'use strict' | ||
const net = require('net') | ||
const path = require('path') | ||
const spawn = require('child_process').spawn | ||
@@ -60,3 +61,3 @@ const expect = require('chai').expect | ||
'node', | ||
[`${__dirname}/../psock.js`, '-a', address, '-p', port, '-m', 'tcp', '-r'] | ||
[path.join(__dirname, '/../psock.js'), '-a', address, '-p', port, '-m', 'tcp', '-r'] | ||
) | ||
@@ -63,0 +64,0 @@ // for debugging |
@@ -5,2 +5,3 @@ 'use strict' | ||
const net = require('net') | ||
const path = require('path') | ||
const fs = require('fs') | ||
@@ -33,7 +34,7 @@ const spawn = require('child_process').spawn | ||
socket = sock | ||
const logit = spawn('node', [`${__dirname}/fixtures/logit.js`]) | ||
const logit = spawn('node', [path.join(__dirname, '/fixtures/logit.js')]) | ||
logit.unref() | ||
const psock = spawn( | ||
'node', | ||
[`${__dirname}/../psock.js`, '-u', unixSocketPath, '-m', 'tcp'] | ||
[path.join(__dirname, '/../psock.js'), '-u', unixSocketPath, '-m', 'tcp'] | ||
) | ||
@@ -40,0 +41,0 @@ psock.unref() |
@@ -5,24 +5,6 @@ 'use strict' | ||
const pino = require('pino') | ||
const net = require('net') | ||
const { expect } = require('chai') | ||
const { createTcpListener, createUdpListener } = require('./utils') | ||
function createTcpListener (msgHandler) { | ||
return new Promise((resolve, reject) => { | ||
const socket = net.createServer((connection) => { | ||
connection.on('data', (data) => { | ||
msgHandler(data.toString()) | ||
}) | ||
}) | ||
socket.listen(0, '127.0.0.1', (err) => { | ||
if (err) { | ||
return reject(err) | ||
} | ||
return resolve(socket) | ||
}) | ||
}) | ||
} | ||
test('tcp send', function tcp (done) { | ||
this.timeout(50000) | ||
let socket | ||
@@ -59,1 +41,34 @@ let transport | ||
}) | ||
test('udp send', function tcp (done) { | ||
let server | ||
let transport | ||
createUdpListener((msg) => { | ||
expect(msg).to.contain('"msg":"hello UDP world"') | ||
expect(msg.substr(-1)).to.equal('\n') | ||
done() | ||
server.close() | ||
server.unref() | ||
}) | ||
.then((serverSocket) => { | ||
server = serverSocket | ||
const address = server.address().address | ||
const port = server.address().port | ||
transport = pino.transport({ | ||
target: '../psock.js', | ||
level: 'info', | ||
options: { | ||
mode: 'udp', | ||
address, | ||
port | ||
} | ||
}) | ||
const log = pino(transport) | ||
log.info('hello UDP world') | ||
}) | ||
.catch(done) | ||
}) |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
29926
25
768
17