UNPKG

jsm-utilities

Version:
49 lines (48 loc) 2.68 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getServerStatusReport = void 0; const axios_1 = __importDefault(require("axios")); const jsm_logger_1 = __importDefault(require("jsm-logger")); const mongoose_1 = __importDefault(require("mongoose")); const connection_utilities_1 = require("../data/db/connection.utilities"); const logger = (0, jsm_logger_1.default)("UTILITY", "system"); const getServerStatusReport = (config) => __awaiter(void 0, void 0, void 0, function* () { var _a, _b, _c; logger.event(`Getting My public IP address`); const url = "https://checkip.amazonaws.com/"; const response = yield (0, axios_1.default)(url); logger.value(`My public IP address is: ${response.data.trim()}`); return { service: (_a = config === null || config === void 0 ? void 0 : config.currentService) === null || _a === void 0 ? void 0 : _a.name, server: "UP", db: { connect_to: (_c = (_b = config === null || config === void 0 ? void 0 : config.currentService) === null || _b === void 0 ? void 0 : _b.db) === null || _c === void 0 ? void 0 : _c.connectTo, status: mongoose_1.default.STATES[mongoose_1.default.connection.readyState], connection_utl: (0, connection_utilities_1.getMongooseUri)(), }, ip: response.data.trim(), env: { API_PREFIX: process.env.API_PREFIX, NODE_ENV: process.env.NODE_ENV, NEXT_PUBLIC_GATEWAY_URL: process.env.NEXT_PUBLIC_GATEWAY_URL, PORT: process.env.PORT, APPLICATION: process.env.APPLICATION, PWD: process.env.PWD, RXDB_NAME: process.env.RXDB_NAME, }, config: process.env.NODE_ENV === "production" ? undefined : config, }; }); exports.getServerStatusReport = getServerStatusReport;