UNPKG

n8n-nodes-proxmox

Version:

n8n community node for Proxmox Virtual Environment (VE) API integration with VM, container, storage, and cluster management capabilities

50 lines (49 loc) 1.98 kB
"use strict"; /** * Simple logging utility for ProxMox node operations */ Object.defineProperty(exports, "__esModule", { value: true }); exports.logger = void 0; class ProxMoxLogger { isDebugEnabled() { return process.env.NODE_ENV === 'development' || process.env.N8N_DEBUG === 'true'; } formatMessage(level, category, message, context) { const timestamp = new Date().toISOString(); const contextStr = context ? ` ${JSON.stringify(context)}` : ''; return `[${timestamp}] PROXMOX:${level.toUpperCase()} [${category}] ${message}${contextStr}`; } debug(category, message, context) { if (this.isDebugEnabled()) { console.debug(this.formatMessage('debug', category, message, context)); } } info(category, message, context) { console.info(this.formatMessage('info', category, message, context)); } warn(category, message, context) { console.warn(this.formatMessage('warn', category, message, context)); } error(category, message, context) { console.error(this.formatMessage('error', category, message, context)); } // Convenience methods for common ProxMox operations apiRequest(method, endpoint, context) { this.debug('api', `${method} ${endpoint}`, context); } apiResponse(method, endpoint, status, context) { this.debug('api', `${method} ${endpoint} -> ${status}`, context); } apiError(method, endpoint, error, context) { this.error('api', `${method} ${endpoint} failed: ${error}`, context); } operation(operation, resource, status, context) { const level = status === 'error' ? 'error' : 'info'; this[level]('operation', `${operation} ${resource} ${status}`, context); } auth(action, status, context) { const level = status === 'error' ? 'error' : 'info'; this[level]('auth', `${action} ${status}`, context); } } exports.logger = new ProxMoxLogger();