Skip to content

Commit

Permalink
build: added pino (logger) and vscode formatter
Browse files Browse the repository at this point in the history
  • Loading branch information
nc1z committed Dec 30, 2023
1 parent b506154 commit 94e4590
Show file tree
Hide file tree
Showing 6 changed files with 270 additions and 9 deletions.
26 changes: 26 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
"editor.formatOnSave": true,
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
"source.organizeImports": true
}
},
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
"source.organizeImports": true
}
},
"[jsonc]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript][typescriptreact]": {
"editor.codeActionsOnSave": {
"source.organizeImports": "explicit"
}
}
}
2 changes: 2 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@
},
"dependencies": {
"find-my-way": "^8.0.0",
"pino": "^8.17.2",
"pino-pretty": "^10.3.1",
"uWebSockets.js": "github:uNetworking/uWebSockets.js#v20.38.0"
}
}
2 changes: 1 addition & 1 deletion src/index.ts
Original file line number Diff line number Diff line change
@@ -1 +1 @@
console.log("test")
export { StreamAggregator } from './stream-aggregator'
15 changes: 15 additions & 0 deletions src/logger.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import pino from 'pino'

const loggerOptions: pino.LoggerOptions = {
level: 'info', // Set the default log level
transport: {
target: 'pino-pretty',
options: {
colorize: true,
},
},
}

const logger = pino(loggerOptions)

export default logger
13 changes: 7 additions & 6 deletions src/stream-aggregator.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import http from 'http'
import findMyWay from 'find-my-way'
import http from 'http'
import { App, DISABLED, TemplatedApp } from 'uWebSockets.js'
import logger from './logger'

export class StreamAggregator {
private readonly _httpServer: http.Server
Expand Down Expand Up @@ -33,16 +34,16 @@ export class StreamAggregator {
open: (ws: any) => {
const path = ws.req.getUrl().toLocaleLowerCase()
ws.closed = false
console.log('A WebSocket connected! Path: ' + path)
logger.info('A WebSocket connected! Path: ' + path)
},

message: (ws, message) => {
let ok = ws.send(message)
console.log('ok? ' + ok)
logger.info('ok? ' + ok)
},

drain: ws => {
console.log('WebSocket backpressure: ' + ws.getBufferedAmount())
logger.info('WebSocket backpressure: ' + ws.getBufferedAmount())
},

close: (ws: any) => {
Expand All @@ -55,14 +56,14 @@ export class StreamAggregator {
}

public async start(port: number) {
console.log(this.config)
logger.info(this.config)

await new Promise<void>((resolve, reject) => {
this._httpServer.on('error', reject)
this._httpServer.listen(port || 8080, () => {
this._wsServer.listen(port + 1 || 8081, port => {
if (port) {
console.log('Listening to port: ' + port)
logger.info('Listening to port: ' + port)
resolve()
} else {
reject(new Error('WebSocket server did not start'))
Expand Down
Loading

0 comments on commit 94e4590

Please sign in to comment.