Module: Olyx::Guardrails::Rails::Instrumentation

Defined in:
lib/olyx/guardrails/rails/instrumentation.rb

Overview

Publishes sanitized, content-free Active Support events.

Class Method Summary collapse

Class Method Details

.publish_check(result, duration) ⇒ Object



15
16
17
18
19
20
# File 'lib/olyx/guardrails/rails/instrumentation.rb', line 15

def publish_check(result, duration)
  InstrumentationPublisher.call(
    'check.olyx_guardrails',
    ResultSummary.call(result).merge(evaluation_duration_ms: duration)
  )
end

.publish_notification(delivery) ⇒ Object



33
34
35
# File 'lib/olyx/guardrails/rails/instrumentation.rb', line 33

def publish_notification(delivery)
  InstrumentationPublisher.call('notification.olyx_guardrails', InstrumentationPayloads.notification(delivery))
end

.publish_redaction(result, duration) ⇒ Object



29
30
31
# File 'lib/olyx/guardrails/rails/instrumentation.rb', line 29

def publish_redaction(result, duration)
  InstrumentationPublisher.call('redact.olyx_guardrails', InstrumentationPayloads.redaction(result, duration))
end

.publish_violation(result, duration) ⇒ Object



22
23
24
25
26
27
# File 'lib/olyx/guardrails/rails/instrumentation.rb', line 22

def publish_violation(result, duration)
  InstrumentationPublisher.call(
    'violation.olyx_guardrails',
    ResultSummary.call(result).merge(evaluation_duration_ms: duration)
  )
end