Skip to content

Commit

Permalink
Add Grafana Loki logging to production
Browse files Browse the repository at this point in the history
  • Loading branch information
MrTalon63 committed Nov 18, 2024
1 parent 96ec552 commit 006f858
Show file tree
Hide file tree
Showing 3 changed files with 119 additions and 9 deletions.
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"pg": "^8.13.1",
"pino": "^9.5.0",
"pino-http": "^10.3.0",
"pino-pretty": "^13.0.0"
"pino-loki": "^2.3.1"
},
"devDependencies": {
"@eslint/js": "^9.15.0",
Expand All @@ -32,6 +32,7 @@
"eslint": "^9.15.0",
"globals": "^15.12.0",
"nodemon": "^3.1.7",
"pino-pretty": "^13.0.0",
"ts-node": "^10.9.2",
"typescript": "^5.6.3",
"typescript-eslint": "^8.14.0"
Expand Down
96 changes: 93 additions & 3 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

29 changes: 24 additions & 5 deletions src/utils/logger.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,33 @@
import pino from "pino";
import PinoPretty from "pino-pretty";

const logger = pino({
transport: {
let transport;

if (process.env.NODE_ENV === "production") {
transport = pino.transport({
target: "pino-loki",
options: {
batching: true,
interval: 5,
host: process.env.LOKI_HOST,
basicAuth: {
username: process.env.LOKI_USER,
password: process.env.LOKI_PASS,
},
labels: {
app: "YALS",
},
},
});
} else {
transport = pino.transport({
target: "pino-pretty",
options: {
colorize: true,
minimumLevel: "debug",
},
},
});
});
}

const logger = pino(transport);

export default logger;

0 comments on commit 006f858

Please sign in to comment.