mirror of
https://github.com/calli-eve/eve-pi.git
synced 2026-02-13 11:18:47 +01:00
Improve logging and handle errors beter
This commit is contained in:
18
src/utils/logger.ts
Normal file
18
src/utils/logger.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
import pino from 'pino';
|
||||
|
||||
const logger = pino({
|
||||
level: process.env.LOG_LEVEL || 'info',
|
||||
transport: {
|
||||
target: 'pino-pretty',
|
||||
options: {
|
||||
colorize: true,
|
||||
translateTime: 'SYS:standard',
|
||||
ignore: 'pid,hostname',
|
||||
},
|
||||
},
|
||||
base: {
|
||||
env: process.env.NODE_ENV,
|
||||
},
|
||||
});
|
||||
|
||||
export default logger;
|
||||
22
src/utils/utils.ts
Normal file
22
src/utils/utils.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
import { AccessToken, Character } from "../types";
|
||||
|
||||
export const extractCharacterFromToken = (token: AccessToken): Character | null => {
|
||||
const decodedToken = parseJwt(token.access_token);
|
||||
if (!decodedToken || !decodedToken.name || !decodedToken.sub) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
name: decodedToken.name,
|
||||
characterId: decodedToken.sub.split(":")[2],
|
||||
};
|
||||
};
|
||||
|
||||
const parseJwt = (token: string | undefined) => {
|
||||
if (!token) return null;
|
||||
try {
|
||||
return JSON.parse(Buffer.from(token.split(".")[1], "base64").toString());
|
||||
} catch (error) {
|
||||
console.error('Failed to parse JWT token:', error);
|
||||
return null;
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user