Example #1
0
    def put(self, mention: Mention):
        if self._producer is None:
            try:
                self._producer = KinesisProducer(stream_name="sentinel-stream")
            except Exception as e:
                raise SinkNotAvailableError from e

        self._producer.put(mention.to_json())
Example #2
0
def test_producer(mocker):
    mocked_async_producer = mocker.patch('kinesis.producer.AsyncProducer')
    producer = KinesisProducer('testing')
    mocked_async_producer.assert_called_with('testing',
                                             0.5,
                                             producer.queue,
                                             max_count=None,
                                             max_size=None,
                                             boto3_session=None)

    mocked_queue = mocker.patch.object(producer, 'queue')
    producer.put('foo', explicit_hash_key='hash', partition_key='partition')
    mocked_queue.put.assert_called_with(('foo', 'hash', 'partition'))
Example #3
0
def start_producing(args):

    producer = KinesisProducer(stream_name=args.stream)

    if not os.path.isfile(args.file):
        print("File not found: '%s'" % args.file)
        exit(1)

    with open(args.file, "r") as file_read:
        file_loaded = file_read.read()

    start_time = time.time()
    for _ in range(int(args.repeat)):
        producer.put_record(file_loaded)
    print("Time Elapsed: %f seconds" % (time.time() - start_time))
Example #4
0
import logging

from kinesis.producer import KinesisProducer

logging.basicConfig(
    level=logging.DEBUG,
    format=
    '%(created)f %(levelname)s %(process)d %(name)s:%(lineno)d %(message)s')
logging.getLogger('botocore').level = logging.INFO
logging.getLogger(
    'botocore.vendored.requests.packages.urllib3').level = logging.WARN
producer = KinesisProducer('borgstrom-test')

for idx in xrange(1):
    producer.put(str(idx))
Example #5
0
 def producer(self):
     return KinesisProducer(self.stream_name,
                            boto3_session=self.boto3_session)
def create_producer(stream_name, session):
    producer = KinesisProducer(stream_name=stream_name, boto3_session=session)
    return producer