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.

25 lines (24 loc) 1.19 kB
import ConsoleLogger from "./console"; export default function (apiId, config) { if (!(config === null || config === void 0 ? void 0 : config.debug)) { return undefined; } var 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 }); var messagePrefix = "_" + apiId + "_"; var logWithMessagePrefix = function (logFn) { return function (message) { return 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: function (message) { if (message instanceof Error) { message = message.message + "\n" + message.stack; } logWithMessagePrefix(logger.error.bind(logger))(message); }, }; }