Class: Logger

Inherits:
Object
  • Object
show all
Defined in:
lib/tcell_agent/rails/dlp.rb

Direct Known Subclasses

TCellAgent::NullLoger

Instance Method Summary collapse

Instance Method Details

#add(severity, message = nil, progname = nil, &block) ⇒ Object



266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
# File 'lib/tcell_agent/rails/dlp.rb', line 266

def add(severity, message = nil, progname = nil, &block)
  if TCellAgent.configuration.enabled &&
      TCellAgent.configuration.should_instrument? &&
      TCellAgent.configuration.should_intercept_requests? &&
      severity >= self.level

    progname ||= @progname
    if message.nil?
      if block_given?
        message = yield
      else
        message = progname
        progname = @progname
      end
    end

    TCellAgent::Instrumentation.safe_block_no_log("Handling DLP log message filtering") {
      dlp_policy = TCellAgent.policy(TCellAgent::PolicyTypes::DataLoss)
      request_env = TCellAgent::Instrumentation::Rails::Middleware::ContextMiddleware::THREADS.fetch(Thread.current.object_id, nil)
      if message && dlp_policy && request_env
        tcell_context = request_env[TCellAgent::Instrumentation::TCELL_ID]
        if tcell_context
          tcell_context.filter_log(message)
        end
      end
    }
  end

  tcell_old_add(severity, message, progname)
end

#tcell_old_addObject



265
# File 'lib/tcell_agent/rails/dlp.rb', line 265

alias_method :tcell_old_add, :add