_ = require 'underscore' if require?
Observatory = Observatory ? {}
_.extend Observatory,
Feel free to browse Detailed API docs below and do checkout full Observatory Suite! It's all live on the web there ;)
Observatory: Galileo
is a nodejs / client logging framework with flexible and powerful architecture, written in coffeescript. It was developed as a basis for Observatory Logging & Monitoring Suite but can be used standalone independent of Meteor. Although you should really try Meteor. You'll love it, we promise.
Basic framework architecture notes
MessageEmitters
emit messages - either from explicit calls todebug()
or similar in the standard versatileToolbox
logger and profiler, or by in turn listening or monitoring some other provider: e.g., http connect module, external log service etc. Emitters use formatters... -->Observatory.formatters
to form or transform messages into predefined json format that is acceptably by... -->Loggers
receive formatted json messages from emitters and either buffer them or process immediately, by applying further output formatting... -->Observatory.viewFormatters
transform json from incoming messages - e.g., adding ANSI colors or html tags - and output them into different out devices (depending on the logger) - console, mongo collection etc.