Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ExtractedChan = make(chan map[string]interface{}) // Unbuffered channel for extracted records; processing goroutines will read from this channel
View Source
var ProcessingWG sync.WaitGroup // WaitGroup to track processing goroutines
View Source
var ResultChan = make(chan models.Record, 100) // Buffered channel to prevent blocking on writes when processing is slower than extraction
View Source
var TransformMetrics = &TransformationMetrics{}
Functions ¶
func ExtractRecords ¶ added in v0.5.0
func ExtractRecords(sourceFunc func(*models.StreamConfig) error)
ExtractRecords begins streaming records from source (sending to ExtractedChan) and start goroutines to extract records (sending to ResultChan)
Types ¶
type ExecutionMetric ¶
type ExecutionMetric struct {
ExecutionStart time.Time `json:"execution_start,omitempty"`
ExecutionEnd time.Time `json:"execution_end,omitempty"`
ExecutionDuration time.Duration `json:"execution_duration,omitempty"`
Emitted uint64 `json:"emitted"`
Processed uint64 `json:"processed"`
ProcessedPerSecond float64 `json:"processed_per_second"`
NotEmitted NotEmittedMetric `json:"not_emitted"`
}
func NewExecutionMetric ¶ added in v0.8.4
func NewExecutionMetric() ExecutionMetric
func (*ExecutionMetric) Complete ¶ added in v0.8.4
func (execution *ExecutionMetric) Complete()
type NotEmittedMetric ¶ added in v0.8.4
type TransformationMetrics ¶ added in v0.7.1
type TransformationMetrics struct {
Processed uint64 `json:"processed"`
TransformFailed uint64 `json:"transform_failed"`
FilteredBookmark uint64 `json:"filtered_bookmark"`
// contains filtered or unexported fields
}
TransformationMetrics tracks record transformation statistics.
Click to show internal directories.
Click to hide internal directories.