Skip to main content
Glama

MCP Remote Server for Kubernetes

by huchunlinnk
Logger.ts2.18 kB
/** * 日志管理类 * 基于 Winston 的日志系统 */ import winston from 'winston'; import { Config } from '../config/Config'; export class Logger { private static instance: Logger; private logger: winston.Logger; private constructor() { const config = Config.getInstance().getLogConfig(); const transports: winston.transport[] = []; // 控制台输出 if (config.console) { transports.push( new winston.transports.Console({ format: winston.format.combine( winston.format.colorize(), winston.format.timestamp(), winston.format.printf(({ timestamp, level, message, ...meta }) => { return `${timestamp} [${level}]: ${message} ${ Object.keys(meta).length ? JSON.stringify(meta, null, 2) : '' }`; }) ), }) ); } // 文件输出 if (config.file) { transports.push( new winston.transports.File({ filename: config.file, format: winston.format.combine( winston.format.timestamp(), winston.format.json() ), }) ); } this.logger = winston.createLogger({ level: config.level, format: winston.format.combine( winston.format.timestamp(), winston.format.errors({ stack: true }), winston.format.json() ), transports, exitOnError: false, }); } public static getInstance(): Logger { if (!Logger.instance) { Logger.instance = new Logger(); } return Logger.instance; } public info(message: string, meta?: any): void { this.logger.info(message, meta); } public error(message: string, meta?: any): void { this.logger.error(message, meta); } public warn(message: string, meta?: any): void { this.logger.warn(message, meta); } public debug(message: string, meta?: any): void { this.logger.debug(message, meta); } public verbose(message: string, meta?: any): void { this.logger.verbose(message, meta); } public getWinstonLogger(): winston.Logger { return this.logger; } }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/huchunlinnk/mcp-remote-server-kubernetes'

If you have feedback or need assistance with the MCP directory API, please join our Discord server