docs: armonización masiva de bitácoras, categorización de nodos y diagnóstico srv-dasu

This commit is contained in:
Ricardo Monla
2026-03-03 12:04:26 -03:00
parent 4fa6459442
commit ed1c493ff2
171 changed files with 37229 additions and 422 deletions
+75
View File
@@ -0,0 +1,75 @@
# frozen_string_literal: true
# ==========================================================
# dtic-BKPs/lib/logger.rb — Logger con colores y rotación
# ==========================================================
require 'logger'
require 'fileutils'
module DTICBKPs
# Colores ANSI
module C
RESET = "\e[0m"
BOLD = "\e[1m"
DIM = "\e[2m"
RED = "\e[91m"
GREEN = "\e[92m"
YELLOW = "\e[93m"
CYAN = "\e[96m"
end
# Iconos semánticos
OK = "#{C::GREEN}#{C::RESET}"
ERR = "#{C::RED}#{C::RESET}"
WARN = "#{C::YELLOW}#{C::RESET}"
INFO = "#{C::CYAN}#{C::RESET}"
class AppLogger
def initialize(log_dir)
FileUtils.mkdir_p(log_dir)
log_path = File.join(log_dir, 'dtic-BKPs.log')
@file_logger = Logger.new(log_path, 'daily')
@file_logger.level = Logger::INFO
@file_logger.formatter = proc { |sev, dt, _, msg|
"[#{dt.strftime('%Y-%m-%d %H:%M:%S')}] [#{sev}] #{msg}\n"
}
end
def info(msg)
@file_logger.info(strip_ansi(msg))
puts "#{INFO} #{msg}"
end
def warn(msg)
@file_logger.warn(strip_ansi(msg))
puts "#{WARN} #{msg}"
end
def error(msg)
@file_logger.error(strip_ansi(msg))
puts "#{ERR} #{msg}"
end
def ok(msg)
@file_logger.info(strip_ansi(msg))
puts "#{OK} #{msg}"
end
def titulo(msg)
@file_logger.info(strip_ansi(msg))
puts "\n#{C::BOLD}#{C::CYAN}--- #{msg} ---#{C::RESET}"
end
def paso(msg)
@file_logger.info(strip_ansi(msg))
puts "#{C::CYAN}#{msg}#{C::RESET}"
end
private
def strip_ansi(s)
s.to_s.gsub(/\e\[[\d;]*[mK]/, '')
end
end
end