X-Git-Url: http://git.squeep.com/?p=urlittler;a=blobdiff_plain;f=server.js;h=17302b76bf1e2d5a6fe3dc9947c6c155443e4bcc;hp=404a7c59f2624a15948e5f43397f3d6c518947a1;hb=HEAD;hpb=254ea2414f0539d2ada998bb35778f4d031745ea diff --git a/server.js b/server.js index 404a7c5..1dece03 100644 --- a/server.js +++ b/server.js @@ -1,7 +1,7 @@ -/* eslint-disable capitalized-comments */ 'use strict'; -const http = require('http'); +const http = require('node:http'); +const { AsyncLocalStorage } = require('node:async_hooks'); const DB = require('./src/db'); const Logger = require('./src/logger'); @@ -9,16 +9,17 @@ const Service = require('./src/service'); const { fileScope } = require('./src/common'); const { version } = require('./package.json'); -const _fileScope = fileScope(__filename)('main'); +const _scope = fileScope(__filename)('main'); const PORT = process.env.PORT || 3001; const ADDR = process.env.LISTEN_ADDR || '127.0.0.1'; +const asyncLocalStorage = new AsyncLocalStorage(); const logger = new Logger({ // ignoreBelowLevel: 'info', -}); +}, {}, asyncLocalStorage); const db = new DB(logger, { - connectionString: 'postgresql://%2Fhome%2Ffek%2Fprojects%2Fhubl%2Fnodejs%2Fpostgres_dev-13/urlittler', + connectionString: 'postgresql://%2Fhome%2Ffek%2Fprojects%2F_db%2Fpostgres_dev-15/urlittler', // connectionString: 'sqlite://', }); const service = new Service(logger, db, { @@ -26,14 +27,16 @@ const service = new Service(logger, db, { manager: { selfBaseUrl: process.env.BASE_URL || '', }, -}); +}, asyncLocalStorage); http.createServer((req, res) => { - service.dispatch(req, res); + asyncLocalStorage.run({}, async () => { + await service.dispatch(req, res); + }); }).listen(PORT, ADDR, (err) => { if (err) { - logger.error(_fileScope, 'error starting server:', err); + logger.error(_scope, 'error starting server:', err); throw err; } - logger.info(_fileScope, `server (version ${version}) started on ${ADDR}:${PORT}`); + logger.info(_scope, 'server started', { version, listenAddress: ADDR, listenPort: PORT }); });