8
8
from typing import Optional , Callable
9
9
10
10
from amplitude import constants
11
- from amplitude .event import BaseEvent
11
+ from amplitude .event import BaseEvent , Plan
12
12
from amplitude .storage import InMemoryStorageProvider , StorageProvider , Storage
13
13
14
14
@@ -21,6 +21,7 @@ class Config:
21
21
Must be positive.
22
22
flush_interval_millis (int, optional): The events buffered in memory will wait no longer than
23
23
flush_interval_millis. Must be positive.
24
+ flush_max_retries (int, optional): The maximum retry attempts for an event when receiving error response.
24
25
logger (optional): The logger used by Amplitude client. Default to logging.getLogger(constants.LOGGER_NAME).
25
26
min_id_length (int, optional): The minimum length of user_id and device_id for events. Default to 5.
26
27
callback (callable, optional): The client level callback function. Triggered on every events sent or failed.
@@ -29,8 +30,9 @@ class Config:
29
30
use_batch(bool, optional): True to use batch API endpoint, False to use HTTP V2 API endpoint. Default to False.
30
31
server_url (str, optional): API endpoint url. Default to None. Auto selected by configured server_zone
31
32
and use_batch if set to None. Support customized url by setting string value.
32
- storage_provider(amplitude.storage.StorageProvider, optional): Default to InMemoryStorageProvider.
33
+ storage_provider (amplitude.storage.StorageProvider, optional): Default to InMemoryStorageProvider.
33
34
Provide storage instance for events buffer.
35
+ plan (amplitude.event.Plan, optional): Tracking plan information. Default to None.
34
36
35
37
Properties:
36
38
options: A dictionary contains minimum id length information. None if min_id_length not set.
@@ -52,9 +54,10 @@ def __init__(self, api_key: str = None,
52
54
server_zone : str = constants .DEFAULT_ZONE ,
53
55
use_batch : bool = False ,
54
56
server_url : Optional [str ] = None ,
55
- storage_provider : StorageProvider = InMemoryStorageProvider ()):
57
+ storage_provider : StorageProvider = InMemoryStorageProvider (),
58
+ plan : Plan = None ):
56
59
"""The constructor of Config class"""
57
- self .api_key = api_key
60
+ self .api_key : str = api_key
58
61
self ._flush_queue_size : int = flush_queue_size
59
62
self ._flush_size_divider : int = 1
60
63
self .flush_interval_millis : int = flush_interval_millis
@@ -66,7 +69,8 @@ def __init__(self, api_key: str = None,
66
69
self .use_batch : bool = use_batch
67
70
self ._url : Optional [str ] = server_url
68
71
self .storage_provider : StorageProvider = storage_provider
69
- self .opt_out = False
72
+ self .opt_out : bool = False
73
+ self .plan : Plan = plan
70
74
71
75
def get_storage (self ) -> Storage :
72
76
"""Use configured StorageProvider to create a Storage instance then return.
0 commit comments