Similar al proyecto
log4j existe para ruby una librería de logging para el depurado de aplicaciones, gestión de mensajes de error, etc.
El nombre de la librería es
log4r, se distribuye como gema y es fácilmente personalizable.
Para usarla tan solo hay que instancia un objeto de la clase
Logger. Para dicho objeto se pueden seleccionar distintos
outputters (medio de salida), en el ejemplo se muestran los mensajes tanto por salida estándar como por UDP.
Posteriormente, para cada
outputter se puede elegir un
formatter (formato de la salida). En el ejemplo la salida por UDP será en el formato por defecto mientras que la salida estándar será en XML.
El ejemplo de uso de la librería.
require 'rubygems'
require 'log4r'
require 'log4r/formatter/log4jxmlformatter'
require 'log4r/outputter/udpoutputter'
include Log4r
logger = Logger.new 'mylog'
#Formatters
xmlformat = Log4jXmlFormatter.new
#Ouputters
stdout = Outputter.stdout
udpout = UDPOutputter.new 'udp', :hostname => "localhost", :port => 8888
stdout.formatter = xmlformat
logger.outputters = [stdout, udpout]
def debug(logger, txt)
logger.debug txt
end
def error(logger, txt)
logger.error txt
end
debug(logger, 'Mensaje de DEBUG')
error(logger, 'Mensaje de error')
Para más información se puede consultar la web oficial de
log4r.