This file is indexed.

/usr/lib/ruby/vendor_ruby/innate/log/color_formatter.rb is in ruby-innate 2013.02.21-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
class Logger
  # Extended Formatter that supports ANSI colors.
  #
  # The basic mapping of ANSI colors is as follows:
  #
  #         | reset | bold | dark | underline | blink | negative
  #     MOD |     0 |    1 |    2 |         4 |     5 |        7
  #
  #        | black | red | green | yellow | blue | magenta | cyan | white
  #     FG |    30 |  31 |    32 |     33 |   34 |      35 |   36 |    37
  #     BG |    40 |  41 |    42 |     43 |   44 |      45 |   46 |    47
  #
  # The output is done by: ``\e[#{mod};#{fg};#{bg}m#{string}\e[0m``.
  # The suffix is to reset the terminal to the original state again.
  class ColorFormatter < Formatter
    LEVEL_COLOR = {
      'DEBUG'   => "\e[0;34;40m%s\e[0m", # blue on black
      'INFO'    => "\e[0;37;40m%s\e[0m", # white on black
      'WARN'    => "\e[0;33;40m%s\e[0m", # yellow on black
      'ERROR'   => "\e[0;31;40m%s\e[0m", # red on black
      'FATAL'   => "\e[0;35;40m%s\e[0m", # red on black
      'UNKNOWN' => "\e[0;32;40m%s\e[0m", # green on black
    }

    FORMAT_TIME = "%Y-%m-%d %H:%M:%S"
    FORMAT_LINE = "%s [%s $%d] %5s | %s: %s\n"

    def call(severity, time, program, message)
      hint = severity[0,1]
      time = format_time(time)
      pid = $$
      string = colorize(msg2str(message), severity)

      FORMAT_LINE % [hint, time, pid, severity, program, string]
    end

    def format_time(time)
      time.strftime(FORMAT_TIME)
    end

    def colorize(string, severity)
      LEVEL_COLOR[severity] % string
    end

    def self.color?(logdev)
      logdev.respond_to?(:tty?) and logdev.tty?
    end
  end
end