"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.logger = exports.postLogger = void 0; const cross_fetch_1 = __importDefault(require("cross-fetch")); const variaveisComuns_1 = require("./variaveisComuns"); const LOKI_BASE_URL = "https://log.idz.one"; const LOKI_ENDPOINT = "/loki/api/v1/push"; const postLogger = async ({ objeto, }) => { const response = await (0, cross_fetch_1.default)(`${LOKI_BASE_URL}${LOKI_ENDPOINT}`, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(objeto), }).catch((a) => a); if (!response.ok) { return [objeto, `Erro ${response.status}: ${await response?.text?.()}`]; } else { return [objeto]; } }; exports.postLogger = postLogger; const logger = ({ app, eProducao }) => ({ inquilino, usuario }) => async (level, mensagem, op_tipoLog) => { let { __filename, detalhes, local } = op_tipoLog || {}; if (!eProducao) { app = `DEV-${app}`; } const isNode = () => { try { return (typeof process !== "undefined" && process.versions?.node && !process.versions.electron); } catch { return false; } }; try { if (isNode() && typeof __filename !== "undefined") { // Modifica apenas se estiver em Node.js e as variáveis existirem __filename = __filename.replace(process.cwd(), ""); } } catch (error) { // Ignora erros de variáveis não definidas no navegador if (!(error instanceof ReferenceError)) { throw error; } } if (local) { detalhes = [`${(0, variaveisComuns_1.nomeVariavel)({ local })}="${local}"`]; } if (__filename) { detalhes = [`${(0, variaveisComuns_1.nomeVariavel)({ __filename })}="${__filename}"`]; } const timestamp = `${Date.now()}000000`; const mainLog = detalhes?.length ? `${mensagem} | ${detalhes.map((d) => JSON.stringify(d)).join(" ")}` : mensagem; const payload = { stream: { app, inquilino, usuario, level }, values: [ [ timestamp, mainLog, // Linha de log direta ], ], }; const objeto = { streams: [payload] }; const response = await (0, exports.postLogger)({ objeto }); return response; }; exports.logger = logger; //# sourceMappingURL=logger.js.map