UNPKG

graphql-language-service-server

Version:
75 lines 3.01 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Logger = void 0; const fs = __importStar(require("fs")); const os = __importStar(require("os")); const path_1 = require("path"); const graphql_language_service_1 = require("graphql-language-service"); class Logger { constructor(tmpDir, stderrOnly) { const dir = path_1.join(tmpDir || os.tmpdir(), 'graphql-language-service-logs'); try { if (!fs.existsSync(dir)) { fs.mkdirSync(dir); } } catch (_) { } this._logFilePath = path_1.join(dir, `graphql-language-service-log-${os.userInfo().username}-${getDateString()}.log`); this._stderrOnly = stderrOnly || false; } error(message) { this._log(message, graphql_language_service_1.SEVERITY.Error); } warn(message) { this._log(message, graphql_language_service_1.SEVERITY.Warning); } info(message) { this._log(message, graphql_language_service_1.SEVERITY.Information); } log(message) { this._log(message, graphql_language_service_1.SEVERITY.Hint); } _log(message, severityKey) { const timestamp = new Date().toLocaleString(undefined); const severity = graphql_language_service_1.DIAGNOSTIC_SEVERITY[severityKey]; const pid = process.pid; const stringMessage = String(message).trim(); const logMessage = `${timestamp} [${severity}] (pid: ${pid}) graphql-language-service-usage-logs: ${stringMessage}\n`; fs.appendFile(this._logFilePath, logMessage, _error => { }); this._getOutputStream(severity).write(logMessage, err => { err && console.error(err); }); } _getOutputStream(severity) { if (this._stderrOnly || severity === graphql_language_service_1.DIAGNOSTIC_SEVERITY.Error) { return process.stderr; } return process.stdout; } } exports.Logger = Logger; function getDateString() { const date = new Date(); return `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`; } //# sourceMappingURL=Logger.js.map