private void SendEventRecord(EventRecord eventRecord) { var envelope = new RawEventRecordEnvelope( eventRecord, _options.IncludeEventData, _options.BookmarkOnBufferFlush && InitialPosition != InitialPositionEnum.EOS ? new IntegerPositionRecordBookmark(Id, Id, eventRecord.RecordId ?? 0) : null); _recordSubject.OnNext(envelope); _metrics?.PublishCounter(Id, MetricsConstants.CATEGORY_SOURCE, CounterTypeEnum.Increment, MetricsConstants.EVENTLOG_SOURCE_EVENTS_READ, 1, MetricUnit.Count); }
private void SendEventRecord(EventRecord eventRecord) { if (InitialPosition == InitialPositionEnum.Timestamp && InitialPositionTimestamp.HasValue && eventRecord.TimeCreated.HasValue && InitialPositionTimestamp.Value > eventRecord.TimeCreated.Value.ToUniversalTime()) { return; //Don't send if timetamp initial position is in the future } if (customFilters.Any(name => !EventInfoFilters.GetFilter(name)(eventRecord))) { //Don't send if any filter return false return; } var envelope = new RawEventRecordEnvelope(eventRecord, _includeEventData, 0); _recordSubject.OnNext(envelope); _metrics?.PublishCounter(Id, MetricsConstants.CATEGORY_SOURCE, CounterTypeEnum.Increment, MetricsConstants.EVENTLOG_SOURCE_EVENTS_READ, 1, MetricUnit.Count); }