Class: Ougai::Formatters::Bunyan
- Includes:
- ForJson
- Defined in:
- lib/ougai/formatters/bunyan.rb
Overview
A JSON formatter compatible with node-bunyan
Instance Attribute Summary collapse
-
#jsonize ⇒ Boolean
Whether log should converts JSON.
-
#with_newline ⇒ Boolean
Whether tailing NL should be appended.
Attributes inherited from Base
#app_name, #hostname, #serialize_backtrace, #trace_indent, #trace_max_lines
Instance Method Summary collapse
- #_call(severity, time, progname, data) ⇒ Object
-
#initialize(app_name = nil, hostname = nil, opts = {}) ⇒ Bunyan
constructor
Intialize a formatter.
Methods included from ForJson
Methods inherited from Base
#call, #datetime_format=, #serialize_exc, #serialize_trace
Constructor Details
#initialize(app_name = nil, hostname = nil, opts = {}) ⇒ Bunyan
Intialize a formatter
23 24 25 26 27 28 |
# File 'lib/ougai/formatters/bunyan.rb', line 23 def initialize(app_name = nil, hostname = nil, opts = {}) aname, hname, opts = Base.parse_new_params([app_name, hostname, opts]) super(aname, hname, opts) @jsonize = opts.fetch(:jsonize, true) @with_newline = opts.fetch(:with_newline, true) end |
Instance Attribute Details
#jsonize ⇒ Boolean
Whether log should converts JSON
9 10 11 |
# File 'lib/ougai/formatters/bunyan.rb', line 9 def jsonize @jsonize end |
#with_newline ⇒ Boolean
Whether tailing NL should be appended
9 10 11 |
# File 'lib/ougai/formatters/bunyan.rb', line 9 def with_newline @with_newline end |
Instance Method Details
#_call(severity, time, progname, data) ⇒ Object
30 31 32 33 34 35 36 37 38 39 |
# File 'lib/ougai/formatters/bunyan.rb', line 30 def _call(severity, time, progname, data) dump({ name: progname || @app_name, hostname: @hostname, pid: $$, level: to_level(severity), time: time, v: 0 }.merge(data)) end |