@gati-framework/observability
Version:
Observability stack for Gati framework - Prometheus, Grafana, Loki, and Tracing
28 lines (27 loc) • 766 B
JavaScript
import { LokiLogger } from '../loki/logger.js';
export class WinstonLokiAdapter {
logger;
constructor(logger) {
this.logger = logger;
}
debug(message, context) {
this.logger.debug(message, context);
}
info(message, context) {
this.logger.info(message, context);
}
warn(message, context) {
this.logger.warn(message, context);
}
error(message, context) {
const error = context?.['error'] instanceof Error ? context['error'] : undefined;
this.logger.error(message, error, context);
}
child(context) {
const childLogger = this.logger.child(context);
return new WinstonLokiAdapter(childLogger);
}
getLokiLogger() {
return this.logger;
}
}