UNPKG

@glue42/bbg-market-data

Version:

A high-level API that wraps existing Glue42 Bloomberg Bridge Market Data interop methods. The API is based on the jBloomberg open source wrapper.

23 lines (22 loc) 1.13 kB
import ConsoleLogger from "./console"; export default function (apiId, config) { if (!(config === null || config === void 0 ? void 0 : config.debug)) { return undefined; } const logger = (config === null || config === void 0 ? void 0 : config.logger) ? config.logger : new ConsoleLogger("bbg-market-data", { logLevel: config === null || config === void 0 ? void 0 : config.logLevel }); const messagePrefix = `_${apiId}_`; const logWithMessagePrefix = (logFn) => (message) => logFn(`[${messagePrefix}] ${message}`); return { trace: logWithMessagePrefix(logger.trace.bind(logger)), debug: logWithMessagePrefix(logger.debug.bind(logger)), info: logWithMessagePrefix(logger.info.bind(logger)), log: logWithMessagePrefix(logger.log.bind(logger)), warn: logWithMessagePrefix(logger.warn.bind(logger)), error: (message) => { if (message instanceof Error) { message = message.message + "\n" + message.stack; } logWithMessagePrefix(logger.error.bind(logger))(message); }, }; }