Class: Foam::Otel::Ingest::LogStampExporter

Inherits:
StampExporter show all
Defined in:
lib/foam/otel/ingest.rb

Instance Method Summary collapse

Methods inherited from StampExporter

#force_flush, #initialize, #reset, #shutdown

Constructor Details

This class inherits a constructor from Foam::Otel::Ingest::StampExporter

Instance Method Details

#export(log_record_data, timeout: nil) ⇒ Object



580
581
582
583
584
585
586
587
588
# File 'lib/foam/otel/ingest.rb', line 580

def export(log_record_data, timeout: nil)
  out, dropped = stamp_batch(log_record_data, "log")
  Ingest.narrate(@config, "ingest log tap exporting #{out.length} record(s)")
  result = out.empty? ? EXPORT_SUCCESS : @inner.export(out, timeout: timeout)
  dropped.positive? ? EXPORT_FAILURE : result
rescue StandardError, SystemStackError
  Diagnostics.warn("ingest log tap: export raised past its guards — batch dropped (fail-closed, rule 15)")
  EXPORT_FAILURE
end