Skip to content

Commit

Permalink
editted logger and containeried the app
Browse files Browse the repository at this point in the history
  • Loading branch information
aritro66 committed Dec 14, 2023
1 parent f2a4c69 commit 4781079
Show file tree
Hide file tree
Showing 4 changed files with 74 additions and 26 deletions.
1 change: 1 addition & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/node_modules
9 changes: 9 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
FROM node:alpine

WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm","start"]
39 changes: 39 additions & 0 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
version: "3.8"

services:
mainapp:
build: ./
container_name: mainapp
ports:
- "3000:3000"
networks:
- nodeapp-network
environment:
REDISURL: redis
depends_on:
- postgres
- redis

postgres:
image: postgres:alpine
container_name: postgres
ports:
- "5432:5432"
environment:
POSTGRES_DB: data
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
networks:
- nodeapp-network

redis:
image: redis:alpine
container_name: redis
ports:
- "6379:6379"
networks:
- nodeapp-network

networks:
nodeapp-network:
driver: bridge
51 changes: 25 additions & 26 deletions src/common-lib/middleware/logger.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,35 @@ loggerProvider.addLogRecordProcessor(logProcessor)


const { combine, label, printf } = format
const myFormat = printf(info => `${info.timestamp} [${info.level}]: ${info.label} - ${info.message}`)

const myFormat = printf(info => {

const formatedMessage: string = `${info.timestamp} [${info.level}]: ${info.label} - ${info.message}`

if (info.level === 'info') {
loggerProvider
.getLogger('otel-logger')
.emit({ body: formatedMessage, severityNumber: SeverityNumber.INFO })
}
else if (info.level === 'error') {
loggerProvider
.getLogger('otel-logger')
.emit({ body: formatedMessage, severityNumber: SeverityNumber.ERROR })
}
else {
loggerProvider
.getLogger('otel-logger')
.emit({ body: formatedMessage, severityNumber: SeverityNumber.WARN })
}

return formatedMessage;
})

const appendTimestamp = format((info, opts) => {
if (opts.tz) info.timestamp = moment().tz(opts.tz).format()
return info
})
const formatLog = (args: any) =>
typeof args === 'string' ? args : JSON.stringify(args)

const customLogger = module => {
const logger = createLogger({
//TODO: Need to read the level from config
Expand All @@ -56,32 +78,9 @@ const customLogger = module => {
},
}



return logger
}

customLogger.info = (args: any) => {
loggerProvider
.getLogger('otel-logger')
.emit({ body: formatLog(args), severityNumber: SeverityNumber.INFO })
return customLogger.info(args)
}

customLogger.warning = (args: any) => {
loggerProvider
.getLogger('otel-logger')
.emit({ body: formatLog(args), severityNumber: SeverityNumber.WARN })
return customLogger.warning(args)
}

customLogger.error = (args: any) => {
loggerProvider
.getLogger('otel-logger')
.emit({ body: formatLog(args), severityNumber: SeverityNumber.ERROR })
return customLogger.error(args)
}

// create a stream object with a 'write' function that will be used by `morgan`

// module.exports = customLogger
Expand Down

0 comments on commit 4781079

Please sign in to comment.