watchmen-collector-kernel 16.5.15__py3-none-any.whl → 16.5.17__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ from .collector_cache_service import CollectorCacheService
@@ -0,0 +1,55 @@
1
+ from cacheout import Cache
2
+ from watchmen_data_kernel.cache.cache_manager import cache_set
3
+
4
+ from watchmen_data_kernel.cache import configure_cache
5
+
6
+
7
+ class ModelConfigByNameCache(Cache):
8
+ pass
9
+
10
+
11
+ class TableConfigByNameCache(Cache):
12
+ pass
13
+
14
+
15
+ class TableConfigByTableNameCache(Cache):
16
+ pass
17
+
18
+
19
+ class TableConfigsByParentNameCache(Cache):
20
+ pass
21
+
22
+
23
+ configure_cache('MODEL_CONFIG_BY_NAME',
24
+ {'cache_class': ModelConfigByNameCache, 'maxsize': 512})
25
+
26
+
27
+ configure_cache('TABLE_CONFIG_BY_NAME',
28
+ {'cache_class': TableConfigByNameCache, 'maxsize': 512})
29
+
30
+
31
+ configure_cache('TABLE_CONFIG_BY_TABLE_NAME',
32
+ {'cache_class': TableConfigByTableNameCache, 'maxsize': 512})
33
+
34
+
35
+ configure_cache('TABLE_CONFIGS_BY_PARENT_NAME',
36
+ {'cache_class': TableConfigsByParentNameCache, 'maxsize': 512})
37
+
38
+
39
+ def get_model_config_by_name_cache() -> ModelConfigByNameCache:
40
+ return cache_set['MODEL_CONFIG_BY_NAME']
41
+
42
+
43
+ def get_table_config_by_name_cache() -> TableConfigByNameCache:
44
+ return cache_set['TABLE_CONFIG_BY_NAME']
45
+
46
+
47
+ def get_table_config_by_table_name_cache() -> TableConfigByTableNameCache:
48
+ return cache_set['TABLE_CONFIG_BY_TABLE_NAME']
49
+
50
+
51
+ def get_table_configs_by_parent_name_cache() -> TableConfigsByParentNameCache:
52
+ return cache_set['TABLE_CONFIGS_BY_PARENT_NAME']
53
+
54
+
55
+
@@ -0,0 +1,18 @@
1
+ from .model_config_cache import ModelConfigCache, model_config_cache
2
+ from .table_config_cache import TableConfigCache, table_config_cache
3
+
4
+
5
+ class CollectorCacheService:
6
+
7
+ @staticmethod
8
+ def model_config() -> ModelConfigCache:
9
+ return model_config_cache
10
+
11
+ @staticmethod
12
+ def table_config() -> TableConfigCache:
13
+ return table_config_cache
14
+
15
+ @staticmethod
16
+ def clear_all() -> None:
17
+ CollectorCacheService.model_config().clear()
18
+ CollectorCacheService.table_config().clear()
@@ -0,0 +1,45 @@
1
+ from typing import List, Optional
2
+
3
+ from watchmen_collector_kernel.model import CollectorModelConfig
4
+
5
+ from watchmen_data_kernel.cache import InternalCache
6
+
7
+ from .collector_cache_manger import get_model_config_by_name_cache
8
+ from watchmen_collector_kernel.common import ask_collector_config_cache_enabled
9
+
10
+
11
+ class ModelConfigCache:
12
+
13
+ def __init__(self):
14
+ self.ByNameCache = InternalCache(cache=get_model_config_by_name_cache)
15
+
16
+ def put(self, model_config: CollectorModelConfig) -> Optional[CollectorModelConfig]:
17
+ if ask_collector_config_cache_enabled():
18
+ self.ByNameCache.remove(model_config.modelName)
19
+ # refresh other caches
20
+ existing_config = self.ByNameCache.put(model_config.modelName, model_config)
21
+ return existing_config
22
+ else:
23
+ return None
24
+
25
+ def get(self, model_name: str) -> Optional[CollectorModelConfig]:
26
+ if ask_collector_config_cache_enabled():
27
+ return self.ByNameCache.get(model_name)
28
+ else:
29
+ return None
30
+
31
+ def remove(self, model_name: str) -> Optional[CollectorModelConfig]:
32
+ if ask_collector_config_cache_enabled():
33
+ existing: Optional[CollectorModelConfig] = self.ByNameCache.remove(model_name)
34
+ return existing
35
+ else:
36
+ return None
37
+
38
+ def all(self) -> List[CollectorModelConfig]:
39
+ return list(self.ByNameCache.values())
40
+
41
+ def clear(self) -> None:
42
+ self.ByNameCache.clear()
43
+
44
+
45
+ model_config_cache = ModelConfigCache()
@@ -0,0 +1,89 @@
1
+ from typing import List, Optional, Dict
2
+
3
+ from watchmen_collector_kernel.model import CollectorTableConfig
4
+
5
+ from watchmen_data_kernel.cache import InternalCache
6
+
7
+ from .collector_cache_manger import get_table_config_by_name_cache, \
8
+ get_table_config_by_table_name_cache, get_table_configs_by_parent_name_cache
9
+ from watchmen_collector_kernel.common import ask_collector_config_cache_enabled
10
+
11
+
12
+ class TableConfigCache:
13
+
14
+ def __init__(self):
15
+ self.ByNameCache = InternalCache(cache=get_table_config_by_name_cache)
16
+ self.ByTableNameCache = InternalCache(cache=get_table_config_by_table_name_cache)
17
+ self.ByParentNameCache = InternalCache(cache=get_table_configs_by_parent_name_cache)
18
+
19
+ def put_config_by_name(self, table_config: CollectorTableConfig) -> Optional[CollectorTableConfig]:
20
+ if ask_collector_config_cache_enabled():
21
+ self.ByNameCache.remove(table_config.name)
22
+ existing_config = self.ByTableNameCache.put(table_config.name, table_config)
23
+ return existing_config
24
+ else:
25
+ return None
26
+
27
+ def get_config_by_name(self, name: str) -> Optional[CollectorTableConfig]:
28
+ if ask_collector_config_cache_enabled():
29
+ return self.ByNameCache.get(name)
30
+ else:
31
+ return None
32
+
33
+ def remove_config_by_name(self, name: str) -> Optional[CollectorTableConfig]:
34
+ if ask_collector_config_cache_enabled():
35
+ existing: Optional[CollectorTableConfig] = self.ByNameCache.remove(name)
36
+ return existing
37
+ else:
38
+ return None
39
+
40
+ def put_config_by_table_name(self, table_config: CollectorTableConfig) -> Optional[CollectorTableConfig]:
41
+ if ask_collector_config_cache_enabled():
42
+ self.ByTableNameCache.remove(table_config.tableName)
43
+ existing_config = self.ByTableNameCache.put(table_config.tableName, table_config)
44
+ return existing_config
45
+ else:
46
+ return None
47
+
48
+ def get_config_by_table_name(self, table_name: str) -> Optional[CollectorTableConfig]:
49
+ if ask_collector_config_cache_enabled():
50
+ return self.ByTableNameCache.get(table_name)
51
+ else:
52
+ return None
53
+
54
+ def remove_config_by_table_name(self, table_name: str) -> Optional[CollectorTableConfig]:
55
+ if ask_collector_config_cache_enabled():
56
+ existing: Optional[CollectorTableConfig] = self.ByTableNameCache.remove(table_name)
57
+ return existing
58
+ else:
59
+ return None
60
+
61
+ def put_configs_by_parent_name(self, parent_name: str,
62
+ configs: List[CollectorTableConfig]) -> Optional[List[CollectorTableConfig]]:
63
+ if ask_collector_config_cache_enabled():
64
+ self.ByParentNameCache.remove(parent_name)
65
+ existing_configs = self.ByParentNameCache.put(parent_name, configs)
66
+ return existing_configs
67
+ else:
68
+ return None
69
+
70
+ def get_configs_by_parent_name(self, parent_name: str) -> Optional[List[CollectorTableConfig]]:
71
+ if ask_collector_config_cache_enabled():
72
+ return self.ByParentNameCache.get(parent_name)
73
+ else:
74
+ return None
75
+
76
+ def remove_configs_by_parent_name(self, parent_name: str) -> Optional[List[CollectorTableConfig]]:
77
+ if ask_collector_config_cache_enabled():
78
+ existing_configs: Optional[List[CollectorTableConfig]] = self.ByParentNameCache.remove(parent_name)
79
+ return existing_configs
80
+ else:
81
+ return None
82
+
83
+ def clear(self) -> None:
84
+ self.ByNameCache.clear()
85
+ self.ByTableNameCache.clear()
86
+ self.ByParentNameCache.clear()
87
+
88
+
89
+ table_config_cache = TableConfigCache()
@@ -1,3 +1,5 @@
1
1
  from .constants import CHANGE_RECORD_ID, TENANT_ID, IS_MERGED, LEFT_BRACE, RIGHT_BRACE, COMMA, \
2
2
  IS_POSTED, CHANGE_JSON_ID, WAVE, IS_FINISHED, IS_EXTRACTED, MODEL_TRIGGER_ID
3
- from .settings import ask_lock_clean_interval, ask_lock_clean_timeout, ask_partial_size
3
+ from .settings import ask_lock_clean_interval, ask_lock_clean_timeout, ask_partial_size, \
4
+ ask_collector_config_cache_enabled
5
+ from .exception import CollectorKernelException
@@ -0,0 +1,2 @@
1
+ class CollectorKernelException(Exception):
2
+ pass
@@ -9,6 +9,8 @@ class CollectorSettings(BaseSettings):
9
9
  LOCK_CLEAN_TIMEOUT: int = 3600
10
10
  PARTIAL_SIZE: int = 100
11
11
 
12
+ COLLECTOR_CONFIG_CACHE_ENABLED: bool = True # enable collector config cache heart beat
13
+
12
14
  class Config:
13
15
  # secrets_dir = '/var/run'
14
16
  env_file = '.env'
@@ -30,3 +32,7 @@ def ask_lock_clean_timeout() -> int:
30
32
 
31
33
  def ask_partial_size() -> int:
32
34
  return collector_settings.PARTIAL_SIZE
35
+
36
+
37
+ def ask_collector_config_cache_enabled() -> bool:
38
+ return collector_settings.COLLECTOR_CONFIG_CACHE_ENABLED
@@ -6,3 +6,4 @@ from .extract_source import SourceTableExtractor
6
6
  from .task_service import get_task_service
7
7
  from .criteria_builder import CriteriaBuilder
8
8
  from .extract_utils import build_audit_column_criteria, cal_array2d_diff, build_data_id, get_data_id
9
+ from .table_config_service import get_table_config_service
@@ -3,6 +3,7 @@ from typing import Optional, Dict, Any, Tuple
3
3
 
4
4
  from watchmen_auth import PrincipalService
5
5
  from watchmen_collector_kernel.model import CollectorTableConfig
6
+ from .table_config_service import get_table_config_service
6
7
  from .extract_source import SourceTableExtractor
7
8
  from watchmen_collector_kernel.storage import get_collector_table_config_service
8
9
  from watchmen_storage import TransactionalStorageSPI, SnowflakeGenerator
@@ -23,6 +24,7 @@ class DataCaptureService:
23
24
  self.collector_table_config_service = get_collector_table_config_service(self.meta_storage,
24
25
  self.snowflake_generator,
25
26
  self.principal_service)
27
+ self.table_config_service = get_table_config_service(self.principal_service)
26
28
 
27
29
  def find_data_by_data_id(self, config: CollectorTableConfig, data_id: Dict) -> Optional[Dict[str, Any]]:
28
30
  return SourceTableExtractor(config, self.principal_service).find_by_id(data_id)
@@ -30,7 +32,7 @@ class DataCaptureService:
30
32
  def find_parent_node(self, config: CollectorTableConfig,
31
33
  data_: Dict) -> Tuple[CollectorTableConfig, Optional[Dict[str, Any]]]:
32
34
  if config.parentName:
33
- parent_config = self.collector_table_config_service.find_by_name(config.parentName)
35
+ parent_config = self.table_config_service.find_by_name(config.parentName)
34
36
  parent_data = SourceTableExtractor(parent_config, self.principal_service).find(
35
37
  ArrayHelper(config.joinKeys).map(lambda join_key: build_criteria_by_join_key(join_key, data_)).to_list()
36
38
  )
@@ -44,7 +46,7 @@ class DataCaptureService:
44
46
  def build_json(self,
45
47
  config: CollectorTableConfig,
46
48
  data: Dict):
47
- child_configs = self.collector_table_config_service.find_by_parent_name(config.name)
49
+ child_configs = self.table_config_service.find_by_parent_name(config.name)
48
50
  if child_configs:
49
51
  ArrayHelper(child_configs).map(lambda child_config: self.get_child_data(child_config, data))
50
52
 
@@ -0,0 +1,35 @@
1
+ from typing import Optional
2
+
3
+ from watchmen_meta.common import ask_meta_storage, ask_snowflake_generator
4
+
5
+ from watchmen_collector_kernel.storage import get_collector_model_config_service
6
+ from watchmen_collector_kernel.cache import CollectorCacheService
7
+ from watchmen_collector_kernel.common import CollectorKernelException
8
+ from watchmen_collector_kernel.model import CollectorModelConfig
9
+
10
+ from watchmen_auth import PrincipalService
11
+
12
+
13
+ class ModelConfigService:
14
+
15
+ def __init__(self, principal_service: PrincipalService):
16
+ self.principalService = principal_service
17
+
18
+ def find_by_name(self, model_name: str) -> Optional[CollectorModelConfig]:
19
+ config = CollectorCacheService.model_config().get(model_name)
20
+ if config is not None:
21
+ return config
22
+
23
+ storage_service = get_collector_model_config_service(
24
+ ask_meta_storage(), ask_snowflake_generator(), self.principalService
25
+ )
26
+ model_config: CollectorModelConfig = storage_service.find_by_name(model_name)
27
+ if model_config is None:
28
+ return None
29
+
30
+ CollectorCacheService.model_config().put(model_config)
31
+ return model_config
32
+
33
+
34
+ def get_model_config_service(principal_service: PrincipalService) -> ModelConfigService:
35
+ return ModelConfigService(principal_service)
@@ -0,0 +1,70 @@
1
+ from typing import Optional, List
2
+
3
+ from watchmen_utilities import is_blank
4
+
5
+ from watchmen_meta.common import ask_meta_storage, ask_snowflake_generator
6
+
7
+ from watchmen_collector_kernel.storage import get_collector_table_config_service
8
+ from watchmen_collector_kernel.cache import CollectorCacheService
9
+ from watchmen_collector_kernel.common import CollectorKernelException
10
+ from watchmen_collector_kernel.model import CollectorTableConfig
11
+
12
+ from watchmen_auth import PrincipalService
13
+
14
+
15
+ class TableConfigService:
16
+
17
+ def __init__(self, principal_service: PrincipalService):
18
+ self.principalService = principal_service
19
+
20
+ def find_by_table_name(self, table_name: str) -> Optional[CollectorTableConfig]:
21
+ config = CollectorCacheService.table_config().get_config_by_table_name(table_name)
22
+ if config is not None:
23
+ return config
24
+
25
+ storage_service = get_collector_table_config_service(
26
+ ask_meta_storage(), ask_snowflake_generator(), self.principalService
27
+ )
28
+ table_config: CollectorTableConfig = storage_service.find_by_table_name(table_name)
29
+ if table_config is None:
30
+ return None
31
+
32
+ CollectorCacheService.table_config().put_config_by_table_name(table_config)
33
+ return table_config
34
+
35
+ def find_by_name(self, name: str) -> Optional[CollectorTableConfig]:
36
+ config = CollectorCacheService.table_config().get_config_by_name(name)
37
+ if config is not None:
38
+ return config
39
+
40
+ storage_service = get_collector_table_config_service(
41
+ ask_meta_storage(), ask_snowflake_generator(), self.principalService
42
+ )
43
+ table_config: CollectorTableConfig = storage_service.find_by_name(name)
44
+ if table_config is None:
45
+ return None
46
+
47
+ CollectorCacheService.table_config().put_config_by_name(table_config)
48
+ return table_config
49
+
50
+ def find_by_parent_name(self, parent_name: Optional[str]) -> Optional[List[CollectorTableConfig]]:
51
+ if is_blank(parent_name):
52
+ return None
53
+
54
+ configs = CollectorCacheService.table_config().get_configs_by_parent_name(parent_name)
55
+ if configs is not None:
56
+ return configs
57
+
58
+ storage_service = get_collector_table_config_service(
59
+ ask_meta_storage(), ask_snowflake_generator(), self.principalService
60
+ )
61
+ table_configs: List[CollectorTableConfig] = storage_service.find_by_parent_name(parent_name)
62
+ if table_configs is None:
63
+ return None
64
+
65
+ CollectorCacheService.table_config().put_configs_by_parent_name(parent_name, table_configs)
66
+ return table_configs
67
+
68
+
69
+ def get_table_config_service(principal_service: PrincipalService) -> TableConfigService:
70
+ return TableConfigService(principal_service)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: watchmen-collector-kernel
3
- Version: 16.5.15
3
+ Version: 16.5.17
4
4
  Summary:
5
5
  License: MIT
6
6
  Author: botlikes
@@ -19,11 +19,11 @@ Provides-Extra: oss
19
19
  Provides-Extra: postgresql
20
20
  Provides-Extra: s3
21
21
  Requires-Dist: numpy (>=1.23.3,<2.0.0)
22
- Requires-Dist: watchmen-data-kernel (==16.5.15)
23
- Requires-Dist: watchmen-storage-mongodb (==16.5.15) ; extra == "mongodb"
24
- Requires-Dist: watchmen-storage-mssql (==16.5.15) ; extra == "mssql"
25
- Requires-Dist: watchmen-storage-mysql (==16.5.15) ; extra == "mysql"
26
- Requires-Dist: watchmen-storage-oracle (==16.5.15) ; extra == "oracle"
27
- Requires-Dist: watchmen-storage-oss (==16.5.15) ; extra == "oss"
28
- Requires-Dist: watchmen-storage-postgresql (==16.5.15) ; extra == "postgresql"
29
- Requires-Dist: watchmen-storage-s3 (==16.5.15) ; extra == "s3"
22
+ Requires-Dist: watchmen-data-kernel (==16.5.17)
23
+ Requires-Dist: watchmen-storage-mongodb (==16.5.17) ; extra == "mongodb"
24
+ Requires-Dist: watchmen-storage-mssql (==16.5.17) ; extra == "mssql"
25
+ Requires-Dist: watchmen-storage-mysql (==16.5.17) ; extra == "mysql"
26
+ Requires-Dist: watchmen-storage-oracle (==16.5.17) ; extra == "oracle"
27
+ Requires-Dist: watchmen-storage-oss (==16.5.17) ; extra == "oss"
28
+ Requires-Dist: watchmen-storage-postgresql (==16.5.17) ; extra == "postgresql"
29
+ Requires-Dist: watchmen-storage-s3 (==16.5.17) ; extra == "s3"
@@ -1,7 +1,13 @@
1
1
  watchmen_collector_kernel/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- watchmen_collector_kernel/common/__init__.py,sha256=xDuOxA-p9hVm0IzAsPlrnsohNJgZ0qF6g8Kx8bn1p-E,263
2
+ watchmen_collector_kernel/cache/__init__.py,sha256=ypQLQQtAanUybsWuwBpBjdD2yMC-c2Zub4g8zxj2CrY,59
3
+ watchmen_collector_kernel/cache/collector_cache_manger.py,sha256=6ugTDR8Ow4siBbTwRIioePqi3gu-E2U4EzmyUGOABeE,1299
4
+ watchmen_collector_kernel/cache/collector_cache_service.py,sha256=gzk9xhGgAOsiVcbbP1-Ucq2CZWYxEy0fyfUZntEajHA,475
5
+ watchmen_collector_kernel/cache/model_config_cache.py,sha256=utEVX8au5-lzW9dYfUnBcZxXha90Gnd_AOYJkNlS5FI,1358
6
+ watchmen_collector_kernel/cache/table_config_cache.py,sha256=G2xWLF9BMWQ1AUolC_dVgC3eh56BKKh3tcOqCb0y8eY,3279
7
+ watchmen_collector_kernel/common/__init__.py,sha256=lAfZ3cz1T5K-fzFcoNy5OdARV60uTKZQF4S9smQcGT4,350
3
8
  watchmen_collector_kernel/common/constants.py,sha256=mIsGBhAjHbmeuVeNYDOKLhiBqG2sSX-0vs8ipEEIo9E,302
4
- watchmen_collector_kernel/common/settings.py,sha256=p1I-LpMYRyg_Wx-C15vLYsJf54iwBxH5brqg8s9CJDk,695
9
+ watchmen_collector_kernel/common/exception.py,sha256=AY4JAL0fBP6fAkgT7bfMTABp3x3oYtvV5vdPO5jI6S4,49
10
+ watchmen_collector_kernel/common/settings.py,sha256=LiMg_8iIjGF9QsVunvIF4rZ7DajD4rj7ALFsi2Io0VM,895
5
11
  watchmen_collector_kernel/model/__init__.py,sha256=E6niSOjVdFtNfpvghy9z8WoPqXfIOnsbc_HBXWbKvCk,767
6
12
  watchmen_collector_kernel/model/change_data_json.py,sha256=M3hYIAoL1ZmlcfGjurQIA7sGiXmAoD12UFby1yNNWDs,517
7
13
  watchmen_collector_kernel/model/change_data_json_history.py,sha256=L9ACRe5tCP5Pc5MrpAVkLHe-6EfgZsUBfnQ2BXIYu4M,99
@@ -18,13 +24,15 @@ watchmen_collector_kernel/model/trigger_event.py,sha256=ZjVgWQS_qqILchw4fGFzxn1t
18
24
  watchmen_collector_kernel/model/trigger_model.py,sha256=LGhtT8xmeDGB1UivAiaQ9FaHYYkaIjKztRUIuyHGBes,213
19
25
  watchmen_collector_kernel/model/trigger_module.py,sha256=LVhhS-tD5Gl7GLxKDmadSYJxkSJYwlKrlnl93h4-yZQ,193
20
26
  watchmen_collector_kernel/model/trigger_table.py,sha256=5ARZAJ9W5qTnvlH0Zsx4NZ8bYUqWauiZxY63M9-JTYk,251
21
- watchmen_collector_kernel/service/__init__.py,sha256=hsg-38u7V3QizNmmuEtOw8gC7QEOopVInLbY97MiwuM,426
27
+ watchmen_collector_kernel/service/__init__.py,sha256=q97D9sSka-9Y7FRulTCOaKX6sR4vbg-GSXV33PCAlqk,485
22
28
  watchmen_collector_kernel/service/criteria_builder.py,sha256=q791cOuBkGhYnDwJCi08Ka9dcQmtasfXa9uKinlFhz0,2358
23
- watchmen_collector_kernel/service/data_capture.py,sha256=45asoQQlv016NKsPoiUVgaSCOJzUBHDCmWr7XPt-8VI,2873
29
+ watchmen_collector_kernel/service/data_capture.py,sha256=hnRpDYyIwACb1J2dSAa2tlOe_41oRLsCneCfAX2JlEg,2991
24
30
  watchmen_collector_kernel/service/extract_source.py,sha256=8Yy3J2Cb62jskWEXewyeu4TL1luu-MzHaOIrCSQdMv0,7622
25
31
  watchmen_collector_kernel/service/extract_utils.py,sha256=PIyxFG7U37ZXLYlOdIK-Dh-kBptXPFqk-9-b1LuPL1A,2452
26
32
  watchmen_collector_kernel/service/lock_clean.py,sha256=-TVsJjr61MtgBU67S9hBrcH4Mb7xFEG61njq9GA5obY,1142
27
33
  watchmen_collector_kernel/service/lock_helper.py,sha256=SJEbaj2-qKNYcu0oboEw1SSRYnqsE_l2CypFkQNL5EE,901
34
+ watchmen_collector_kernel/service/model_config_service.py,sha256=NIl70BpxsOIjCeqFv9q9wbw6pcFByfEHY5dow17CHtI,1217
35
+ watchmen_collector_kernel/service/table_config_service.py,sha256=bRLnbrHAis9dolcqUdUFE64ktx1Fqc2-IxGzRoTn-4Y,2515
28
36
  watchmen_collector_kernel/service/task_housekeeping.py,sha256=i1lnZ4jo-RLjLQD0Z7HSLQqjXuSqdL3zqHDfFVaNbe8,1673
29
37
  watchmen_collector_kernel/service/task_service.py,sha256=uATnNRpMrntElwamy_bpaA7OJTnpzJpxglO3p_w_ulU,3895
30
38
  watchmen_collector_kernel/service/trigger_collector.py,sha256=Aq7YCuAkJ2qZixCYjhmG0FWFtm2zng7g6QTmX1Oii10,10348
@@ -43,7 +51,7 @@ watchmen_collector_kernel/storage/trigger_event_service.py,sha256=DKSCQ0sYSH3uAt
43
51
  watchmen_collector_kernel/storage/trigger_model_service.py,sha256=FE_88sYzh9ibUS1bOyDmGvryfPQraqkMbZc3BKtzfpI,3760
44
52
  watchmen_collector_kernel/storage/trigger_module_service.py,sha256=Ca4J8vnBzS90qP3ljwDJ7lt6MzaOushGjoFRwsSKfHI,3377
45
53
  watchmen_collector_kernel/storage/trigger_table_service.py,sha256=sQXHyszSqUxYcstnc59r7fTIrGknyDsX3qivDOymZ4A,3876
46
- watchmen_collector_kernel-16.5.15.dist-info/LICENSE,sha256=iuuG7ErblOdcEZi5u89VXS0VIUiTb4flerGp_PAS9E4,1061
47
- watchmen_collector_kernel-16.5.15.dist-info/METADATA,sha256=EjAqhHrhGEjQhzUiRsvx-LMU4PAaTzpOTCzm98LgClw,1183
48
- watchmen_collector_kernel-16.5.15.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
49
- watchmen_collector_kernel-16.5.15.dist-info/RECORD,,
54
+ watchmen_collector_kernel-16.5.17.dist-info/LICENSE,sha256=iuuG7ErblOdcEZi5u89VXS0VIUiTb4flerGp_PAS9E4,1061
55
+ watchmen_collector_kernel-16.5.17.dist-info/METADATA,sha256=F9piIGDRWek1OXM3NU7h91DvGFYMFyfOxVzGGoUEdMc,1183
56
+ watchmen_collector_kernel-16.5.17.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
57
+ watchmen_collector_kernel-16.5.17.dist-info/RECORD,,