Ejemplo n.º 1
0
def generate_transactions() -> None:
    from datetime import datetime

    table_writer = get_writable_storage(
        StorageKey.TRANSACTIONS).get_table_writer()

    rows = []

    for i in range(5):
        raw_transaction = get_raw_transaction()
        # Older versions of this table did not have measurements
        del raw_transaction["data"]["measurements"]

        processed = (
            table_writer.get_stream_loader().get_processor().process_message(
                (2, "insert", raw_transaction),
                KafkaMessageMetadata(0, 0, datetime.utcnow()),
            ))
        rows.extend(processed.rows)

    BatchWriterEncoderWrapper(
        table_writer.get_batch_writer(metrics=DummyMetricsBackend(
            strict=True)),
        JSONRowEncoder(),
    ).write(rows)
Ejemplo n.º 2
0
 def setup_method(self, test_method):
     super().setup_method(test_method)
     self.app.post = partial(self.app.post, headers={"referer": "test"})
     self.trace_id = uuid.UUID("7400045b-25c4-43b8-8591-4600aa83ad04")
     self.event = get_raw_event()
     self.project_id = self.event["project_id"]
     write_unprocessed_events(get_writable_storage(StorageKey.EVENTS),
                              [self.event])
     write_unprocessed_events(
         get_writable_storage(StorageKey.TRANSACTIONS),
         [get_raw_transaction()],
     )
Ejemplo n.º 3
0
 def setup_method(self, test_method):
     super().setup_method(test_method)
     self.app.post = partial(self.app.post, headers={"referer": "test"})
     self.trace_id = uuid.UUID("7400045b-25c4-43b8-8591-4600aa83ad04")
     self.event = get_raw_event()
     self.project_id = self.event["project_id"]
     self.skew = timedelta(minutes=180)
     self.base_time = datetime.utcnow().replace(
         minute=0, second=0, microsecond=0,
         tzinfo=pytz.utc) - timedelta(minutes=180)
     write_unprocessed_events(get_writable_storage(StorageKey.EVENTS),
                              [self.event])
     write_unprocessed_events(
         get_writable_storage(StorageKey.TRANSACTIONS),
         [get_raw_transaction()],
     )
Ejemplo n.º 4
0
 def setup_method(self, test_method: Callable[..., Any]) -> None:
     super().setup_method(test_method)
     self.trace_id = uuid.UUID("7400045b-25c4-43b8-8591-4600aa83ad04")
     self.event = get_raw_event()
     self.project_id = self.event["project_id"]
     self.org_id = self.event["organization_id"]
     self.skew = timedelta(minutes=180)
     self.base_time = datetime.utcnow().replace(
         minute=0, second=0, microsecond=0) - timedelta(minutes=180)
     events_storage = get_entity(EntityKey.EVENTS).get_writable_storage()
     assert events_storage is not None
     write_unprocessed_events(events_storage, [self.event])
     self.next_time = datetime.utcnow().replace(
         minute=0, second=0, microsecond=0) + timedelta(minutes=180)
     write_unprocessed_events(
         get_writable_storage(StorageKey.TRANSACTIONS),
         [get_raw_transaction()],
     )
Ejemplo n.º 5
0
         ),
         datetime.now(),
     ),
     True,
     id="both errors storage",
 ),
 pytest.param(
     Message(
         Partition(Topic("errors"), 1),
         1,
         MultistorageKafkaPayload(
             [StorageKey.TRANSACTIONS, StorageKey.TRANSACTIONS_V2],
             KafkaPayload(
                 None,
                 json.dumps(
                     (2, "insert", get_raw_transaction())).encode("utf-8"),
                 [],
             ),
         ),
         datetime.now(),
     ),
     True,
     id="both transactions storage",
 ),
 pytest.param(
     Message(
         Partition(Topic("errors"), 1),
         1,
         MultistorageKafkaPayload(
             [StorageKey.ERRORS_V2, StorageKey.TRANSACTIONS_V2],
             KafkaPayload(