Skip to content

Commit 3d5925d

Browse files
authored
Merge pull request #243 from splitio/task/oldTelemetry
removed old telemetry
2 parents a32fb27 + 3846056 commit 3d5925d

28 files changed

+62
-1312
lines changed

CHANGES.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
9.2.0 (Dec XX, 2021)
2+
-
3+
14
9.1.0 (Jul 15, 2021)
25
- Added Cache-Control header for on-demand requests to sdk-server.
36
- Updated the synchronization flow to be more reliable in the event of an edge case generating delay in cache purge propagation, keeping the SDK cache properly synced.

splitio/api/telemetry.py

Lines changed: 0 additions & 142 deletions
This file was deleted.

splitio/client/client.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -329,7 +329,7 @@ def _build_impression( # pylint: disable=too-many-arguments
329329

330330
def _record_stats(self, impressions, start, operation):
331331
"""
332-
Record impressions and metrics.
332+
Record impressions.
333333
334334
:param impressions: Generated impressions
335335
:type impressions: list[tuple[splitio.models.impression.Impression, dict]]

splitio/client/factory.py

Lines changed: 5 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -15,26 +15,24 @@
1515

1616
# Storage
1717
from splitio.storage.inmemmory import InMemorySplitStorage, InMemorySegmentStorage, \
18-
InMemoryImpressionStorage, InMemoryEventStorage, InMemoryTelemetryStorage
18+
InMemoryImpressionStorage, InMemoryEventStorage
1919
from splitio.storage.adapters import redis
2020
from splitio.storage.redis import RedisSplitStorage, RedisSegmentStorage, RedisImpressionsStorage, \
21-
RedisEventsStorage, RedisTelemetryStorage
21+
RedisEventsStorage
2222

2323
# APIs
2424
from splitio.api.client import HttpClient
2525
from splitio.api.splits import SplitsAPI
2626
from splitio.api.segments import SegmentsAPI
2727
from splitio.api.impressions import ImpressionsAPI
2828
from splitio.api.events import EventsAPI
29-
from splitio.api.telemetry import TelemetryAPI
3029
from splitio.api.auth import AuthAPI
3130

3231
# Tasks
3332
from splitio.tasks.split_sync import SplitSynchronizationTask
3433
from splitio.tasks.segment_sync import SegmentSynchronizationTask
3534
from splitio.tasks.impressions_sync import ImpressionsSyncTask, ImpressionsCountSyncTask
3635
from splitio.tasks.events_sync import EventsSyncTask
37-
from splitio.tasks.telemetry_sync import TelemetrySynchronizationTask
3836

3937
# Synchronizer
4038
from splitio.sync.synchronizer import SplitTasks, SplitSynchronizers, Synchronizer, \
@@ -44,14 +42,12 @@
4442
from splitio.sync.segment import SegmentSynchronizer
4543
from splitio.sync.impression import ImpressionSynchronizer, ImpressionsCountSynchronizer
4644
from splitio.sync.event import EventSynchronizer
47-
from splitio.sync.telemetry import TelemetrySynchronizer
4845

4946
# Recorder
5047
from splitio.recorder.recorder import StandardRecorder, PipelinedRecorder
5148

5249
# Localhost stuff
53-
from splitio.client.localhost import LocalhostEventsStorage, LocalhostImpressionsStorage, \
54-
LocalhostTelemetryStorage
50+
from splitio.client.localhost import LocalhostEventsStorage, LocalhostImpressionsStorage
5551

5652

5753
_LOGGER = logging.getLogger(__name__)
@@ -259,7 +255,6 @@ def resume(self):
259255
sdk_ready_flag = threading.Event()
260256
self._sdk_internal_ready_flag = sdk_ready_flag
261257
self._sync_manager._ready_flag = sdk_ready_flag
262-
self._get_storage('telemetry').clear()
263258
self._get_storage('impressions').clear()
264259
self._get_storage('events').clear()
265260
initialization_thread = threading.Thread(
@@ -306,7 +301,6 @@ def _build_in_memory_factory(api_key, cfg, sdk_url=None, events_url=None, # pyl
306301
'segments': SegmentsAPI(http_client, api_key, sdk_metadata),
307302
'impressions': ImpressionsAPI(http_client, api_key, sdk_metadata, cfg['impressionsMode']),
308303
'events': EventsAPI(http_client, api_key, sdk_metadata),
309-
'telemetry': TelemetryAPI(http_client, api_key, sdk_metadata)
310304
}
311305

312306
if not input_validator.validate_apikey_type(apis['segments']):
@@ -317,7 +311,6 @@ def _build_in_memory_factory(api_key, cfg, sdk_url=None, events_url=None, # pyl
317311
'segments': InMemorySegmentStorage(),
318312
'impressions': InMemoryImpressionStorage(cfg['impressionsQueueSize']),
319313
'events': InMemoryEventStorage(cfg['eventsQueueSize']),
320-
'telemetry': InMemoryTelemetryStorage()
321314
}
322315

323316
imp_manager = ImpressionsManager(
@@ -331,7 +324,6 @@ def _build_in_memory_factory(api_key, cfg, sdk_url=None, events_url=None, # pyl
331324
ImpressionSynchronizer(apis['impressions'], storages['impressions'],
332325
cfg['impressionsBulkSize']),
333326
EventSynchronizer(apis['events'], storages['events'], cfg['eventsBulkSize']),
334-
TelemetrySynchronizer(apis['telemetry'], storages['telemetry']),
335327
ImpressionsCountSynchronizer(apis['impressions'], imp_manager),
336328
)
337329

@@ -349,10 +341,6 @@ def _build_in_memory_factory(api_key, cfg, sdk_url=None, events_url=None, # pyl
349341
cfg['impressionsRefreshRate'],
350342
),
351343
EventsSyncTask(synchronizers.events_sync.synchronize_events, cfg['eventsPushRate']),
352-
TelemetrySynchronizationTask(
353-
synchronizers.telemetry_sync.synchronize_telemetry,
354-
cfg['metricsRefreshRate'],
355-
),
356344
ImpressionsCountSyncTask(synchronizers.impressions_count_sync.synchronize_counters)
357345
)
358346

@@ -369,7 +357,6 @@ def _build_in_memory_factory(api_key, cfg, sdk_url=None, events_url=None, # pyl
369357

370358
recorder = StandardRecorder(
371359
imp_manager,
372-
storages['telemetry'],
373360
storages['events'],
374361
storages['impressions'],
375362
)
@@ -399,13 +386,11 @@ def _build_redis_factory(api_key, cfg):
399386
'segments': RedisSegmentStorage(redis_adapter),
400387
'impressions': RedisImpressionsStorage(redis_adapter, sdk_metadata),
401388
'events': RedisEventsStorage(redis_adapter, sdk_metadata),
402-
'telemetry': RedisTelemetryStorage(redis_adapter, sdk_metadata)
403389
}
404390
recorder = PipelinedRecorder(
405391
redis_adapter.pipeline,
406392
ImpressionsManager(cfg['impressionsMode'], False,
407393
_wrap_impression_listener(cfg['impressionListener'], sdk_metadata)),
408-
storages['telemetry'],
409394
storages['events'],
410395
storages['impressions'],
411396
)
@@ -424,19 +409,18 @@ def _build_localhost_factory(cfg):
424409
'segments': InMemorySegmentStorage(), # not used, just to avoid possible future errors.
425410
'impressions': LocalhostImpressionsStorage(),
426411
'events': LocalhostEventsStorage(),
427-
'telemetry': LocalhostTelemetryStorage()
428412
}
429413

430414
synchronizers = SplitSynchronizers(
431415
LocalSplitSynchronizer(cfg['splitFile'], storages['splits']),
432-
None, None, None, None, None,
416+
None, None, None, None,
433417
)
434418

435419
tasks = SplitTasks(
436420
SplitSynchronizationTask(
437421
synchronizers.split_sync.synchronize_splits,
438422
cfg['featuresRefreshRate'],
439-
), None, None, None, None, None,
423+
), None, None, None, None,
440424
)
441425

442426
sdk_metadata = util.get_metadata(cfg)
@@ -446,7 +430,6 @@ def _build_localhost_factory(cfg):
446430
manager.start()
447431
recorder = StandardRecorder(
448432
ImpressionsManager(cfg['impressionsMode'], True, None),
449-
storages['telemetry'],
450433
storages['events'],
451434
storages['impressions'],
452435
)

splitio/client/localhost.py

Lines changed: 1 addition & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
import logging
33
import re
44

5-
from splitio.storage import ImpressionStorage, EventStorage, TelemetryStorage
5+
from splitio.storage import ImpressionStorage, EventStorage
66

77
_LEGACY_COMMENT_LINE_RE = re.compile(r'^#.*$')
88
_LEGACY_DEFINITION_LINE_RE = re.compile(r'^(?<![^#])(?P<feature>[\w_-]+)\s+(?P<treatment>[\w_-]+)$')
@@ -41,35 +41,3 @@ def pop_many(self, *_, **__): # pylint: disable=arguments-differ
4141
def clear(self, *_, **__): # pylint: disable=arguments-differ
4242
"""Accept any arguments and do nothing."""
4343
pass
44-
45-
46-
class LocalhostTelemetryStorage(TelemetryStorage):
47-
"""Impression storage that doesn't cache anything."""
48-
49-
def inc_latency(self, *_, **__): # pylint: disable=arguments-differ
50-
"""Accept any arguments and do nothing."""
51-
pass
52-
53-
def inc_counter(self, *_, **__): # pylint: disable=arguments-differ
54-
"""Accept any arguments and do nothing."""
55-
pass
56-
57-
def put_gauge(self, *_, **__): # pylint: disable=arguments-differ
58-
"""Accept any arguments and do nothing."""
59-
pass
60-
61-
def pop_latencies(self, *_, **__): # pylint: disable=arguments-differ
62-
"""Accept any arguments and do nothing."""
63-
pass
64-
65-
def pop_counters(self, *_, **__): # pylint: disable=arguments-differ
66-
"""Accept any arguments and do nothing."""
67-
pass
68-
69-
def pop_gauges(self, *_, **__): # pylint: disable=arguments-differ
70-
"""Accept any arguments and do nothing."""
71-
pass
72-
73-
def clear(self, *_, **__): # pylint: disable=arguments-differ
74-
"""Accept any arguments and do nothing."""
75-
pass

0 commit comments

Comments
 (0)