dt-extensions-sdk 1.2.12__py3-none-any.whl → 1.2.14__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: dt-extensions-sdk
3
- Version: 1.2.12
3
+ Version: 1.2.14
4
4
  Project-URL: Documentation, https://github.com/dynatrace-extensions/dt-extensions-python-sdk#readme
5
5
  Project-URL: Issues, https://github.com/dynatrace-extensions/dt-extensions-python-sdk/issues
6
6
  Project-URL: Source, https://github.com/dynatrace-extensions/dt-extensions-python-sdk
@@ -1,7 +1,7 @@
1
- dynatrace_extension/__about__.py,sha256=XXsAgemtZwbUO0AhD1CmlC4_yXuhchOMlNxq3vKfdYE,110
1
+ dynatrace_extension/__about__.py,sha256=OAg8p7JkpTB4TTezDDuRFRD-dX4xumJyns-GLgyZaOw,111
2
2
  dynatrace_extension/__init__.py,sha256=BvQuknmA7ti3WJi3zEXZfY7aAxJrie37VNitWICsUvI,752
3
3
  dynatrace_extension/cli/__init__.py,sha256=HCboY_eJPoqjFmoPDsBL8Jk6aNvank8K7JpkVrgwzUM,123
4
- dynatrace_extension/cli/main.py,sha256=ZOqxZsaMJRZsqR3Og2a9h2PDlkyJE8tAny-p7Mb7dmA,17254
4
+ dynatrace_extension/cli/main.py,sha256=qv6BRgoyvhThhRh64OzL6OYHSLoxiJgWlZIxUDxKX4E,17995
5
5
  dynatrace_extension/cli/schema.py,sha256=d8wKUodRiaU3hfSZDWVNpD15lBfhmif2oQ-k07IxcaA,3230
6
6
  dynatrace_extension/cli/create/__init__.py,sha256=NfyOJCVlxs8dYtfDAMHS1Q5SJTuZcFzOg5rtaI-ZPRE,72
7
7
  dynatrace_extension/cli/create/create.py,sha256=apXden2M93MDDDm7aa-Os-AEtUtyKbk_PsS56j32NK4,2708
@@ -16,19 +16,19 @@ dynatrace_extension/cli/create/extension_template/extension_name/__main__.py.tem
16
16
  dynatrace_extension/sdk/__init__.py,sha256=RsqQ1heGyCmSK3fhuEKAcxQIRCg4gEK0-eSkIehL5Nc,86
17
17
  dynatrace_extension/sdk/activation.py,sha256=goTbT1tD2kn8xfyXFdTy_cTZNcFPJpgbvQM8HOzKECA,1480
18
18
  dynatrace_extension/sdk/callback.py,sha256=PNRvOVzNpKvpsa0wCf7HRDkfo3wMsF2otVWI9a1AAkU,6307
19
- dynatrace_extension/sdk/communication.py,sha256=gD4GOHOzWdRL_KrUWtC2s8-Jp8Csn5gjZl4mHO5Lk_4,17739
19
+ dynatrace_extension/sdk/communication.py,sha256=lPUKxAq3mO8cO1ye79p9nuxYL-_cG6G4cJRzBZxD64w,17792
20
20
  dynatrace_extension/sdk/event.py,sha256=J261imbFKpxfuAQ6Nfu3RRcsIQKKivy6fme1nww2g-8,388
21
- dynatrace_extension/sdk/extension.py,sha256=rmYF9vzA75JKvLPCr_r48EPhNz_AzWMuvlX2gmlxsIY,42808
21
+ dynatrace_extension/sdk/extension.py,sha256=2H86BhYwuLGs35c522TgMHBiBJcc_qXcQO-AxGHp2x4,42816
22
22
  dynatrace_extension/sdk/helper.py,sha256=ZNrO9ao2hE3KQ934vAYD74k0fCr6QTG-_bAvbk9-hi8,6562
23
23
  dynatrace_extension/sdk/metric.py,sha256=7VClzJCFJNDCxA-d69uTu1pdPtDZBTwq7fbafs_L6nQ,3690
24
24
  dynatrace_extension/sdk/runtime.py,sha256=jyYsM1x-gMnW68eWq8IoZZZBarHgIcr_nVeGDDgpRDk,2802
25
- dynatrace_extension/sdk/snapshot.py,sha256=UZgSHEIo4t5AJGU2xSTenJkAfKAxue0MORhQL8pC5pc,6815
25
+ dynatrace_extension/sdk/snapshot.py,sha256=0Zx4lmhanoLvfvMTnkxWfcIsx2VUDm99FAqV0XZHoLA,7100
26
26
  dynatrace_extension/sdk/vendor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
27
  dynatrace_extension/sdk/vendor/mureq/LICENSE,sha256=8AVcgZgiT_mvK1fOofXtRRr2f1dRXS_K21NuxQgP4VM,671
28
28
  dynatrace_extension/sdk/vendor/mureq/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
29
  dynatrace_extension/sdk/vendor/mureq/mureq.py,sha256=znF4mvzk5L03CLNozRz8UpK-fMijmSkObDFwlbhwLUg,14656
30
- dt_extensions_sdk-1.2.12.dist-info/METADATA,sha256=7GTgqEmmkq264DO4SA20uIjxc5J1EKqe6W-6J4ZDB0k,2686
31
- dt_extensions_sdk-1.2.12.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
32
- dt_extensions_sdk-1.2.12.dist-info/entry_points.txt,sha256=pweyOCgENGHjOlT6_kXYaBPOrE3p18K0UettqnNlnoE,55
33
- dt_extensions_sdk-1.2.12.dist-info/licenses/LICENSE.txt,sha256=3Zihv0lOVYHNfDkJC-tUAU6euP9r2NexsDW4w-zqgVk,1078
34
- dt_extensions_sdk-1.2.12.dist-info/RECORD,,
30
+ dt_extensions_sdk-1.2.14.dist-info/METADATA,sha256=RCVLQM2azU7CLaL0G507ojhkDVPlqpFJwShuCAKv1BY,2686
31
+ dt_extensions_sdk-1.2.14.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
32
+ dt_extensions_sdk-1.2.14.dist-info/entry_points.txt,sha256=pweyOCgENGHjOlT6_kXYaBPOrE3p18K0UettqnNlnoE,55
33
+ dt_extensions_sdk-1.2.14.dist-info/licenses/LICENSE.txt,sha256=3Zihv0lOVYHNfDkJC-tUAU6euP9r2NexsDW4w-zqgVk,1078
34
+ dt_extensions_sdk-1.2.14.dist-info/RECORD,,
@@ -2,4 +2,5 @@
2
2
  #
3
3
  # SPDX-License-Identifier: MIT
4
4
 
5
- __version__ = "1.2.12"
5
+
6
+ __version__ = "1.2.14"
@@ -91,6 +91,12 @@ def build(
91
91
  find_links: Optional[str] = typer.Option(
92
92
  None, "--find-links", "-f", help="Extra index url to use when downloading dependencies"
93
93
  ),
94
+ only_extra_platforms: Optional[bool] = typer.Option(
95
+ False,
96
+ "--only-extra-platforms",
97
+ "-o",
98
+ help="Only build for the extra platforms, useful when building from arm64 (mac)",
99
+ ),
94
100
  ):
95
101
  """
96
102
  Builds and signs an extension using the developer fused key-certificate
@@ -103,6 +109,7 @@ def build(
103
109
  :param extra_platforms: Attempt to also download wheels for an extra platform (e.g. manylinux1_x86_64 or win_amd64)
104
110
  :param extra_index_url: Extra index url to use when downloading dependencies
105
111
  :param find_links: Extra index url to use when downloading dependencies
112
+ :param only_extra_platforms: If true, only build for the extra platforms, useful when building from arm64
106
113
  """
107
114
  console.print(f"Building and signing extension from {extension_dir} to {target_directory}", style="cyan")
108
115
  if target_directory is None:
@@ -111,7 +118,7 @@ def build(
111
118
  target_directory.mkdir()
112
119
 
113
120
  console.print("Stage 1 - Download and build dependencies", style="bold blue")
114
- wheel(extension_dir, extra_platforms, extra_index_url, find_links)
121
+ wheel(extension_dir, extra_platforms, extra_index_url, find_links, only_extra_platforms)
115
122
 
116
123
  console.print("Stage 2 - Create the extension zip file", style="bold blue")
117
124
  built_zip = assemble(extension_dir, target_directory)
@@ -179,6 +186,12 @@ def wheel(
179
186
  find_links: Optional[str] = typer.Option(
180
187
  None, "--find-links", "-f", help="Extra index url to use when downloading dependencies"
181
188
  ),
189
+ only_extra_platforms: Optional[bool] = typer.Option(
190
+ False,
191
+ "--only-extra-platforms",
192
+ "-o",
193
+ help="Only build for the extra platforms, useful when building from arm64 (mac)",
194
+ ),
182
195
  ):
183
196
  """
184
197
  Builds the extension and it's dependencies into wheel files
@@ -188,6 +201,7 @@ def wheel(
188
201
  :param extra_platforms: Attempt to also download wheels for an extra platform (e.g. manylinux1_x86_64 or win_amd64)
189
202
  :param extra_index_url: Extra index url to use when downloading dependencies
190
203
  :param find_links: Extra index url to use when downloading dependencies
204
+ :param only_extra_platforms: If true, only build for the extra platforms, useful when building from arm64
191
205
  """
192
206
  relative_lib_folder_dir = "extension/lib"
193
207
  lib_folder: Path = extension_dir / relative_lib_folder_dir
@@ -201,6 +215,8 @@ def wheel(
201
215
  command.extend(["--extra-index-url", extra_index_url])
202
216
  if find_links is not None:
203
217
  command.extend(["--find-links", find_links])
218
+ if only_extra_platforms:
219
+ command.append("--no-deps")
204
220
  command.append(".")
205
221
  run_process(command, cwd=extension_dir)
206
222
 
@@ -397,17 +397,18 @@ class DebugClient(CommunicationClient):
397
397
 
398
398
  batches = divide_into_batches(mint_lines, MAX_METRIC_REQUEST_SIZE)
399
399
  for batch in batches:
400
+ lines = json.loads(batch)
400
401
  if self.local_ingest:
401
402
  response = request(
402
403
  "POST",
403
404
  f"http://localhost:{self.local_ingest_port}/metrics/ingest",
404
- body=batch,
405
+ body="\n".join(lines).encode(),
405
406
  headers={"Content-Type": CONTENT_TYPE_PLAIN},
406
407
  ).json()
407
408
  mint_response = MintResponse.from_json(response)
408
409
  responses.append(mint_response)
409
410
  elif self.print_metrics:
410
- for line in mint_lines:
411
+ for line in lines:
411
412
  self.logger.info(f"send_metric: {line}")
412
413
 
413
414
  return responses
@@ -748,6 +748,7 @@ class Extension:
748
748
 
749
749
  if not self._is_fastcheck:
750
750
  try:
751
+ self._heartbeat_iteration()
751
752
  self.initialize()
752
753
  if not self.is_helper:
753
754
  self.schedule(self.query, timedelta(minutes=1))
@@ -813,7 +814,6 @@ class Extension:
813
814
  # These were scheduled before the extension started, schedule them now
814
815
  for callback in self._scheduled_callbacks_before_run:
815
816
  self._schedule_callback(callback)
816
- self._heartbeat_iteration()
817
817
  self._metrics_iteration()
818
818
  self._sfm_metrics_iteration()
819
819
  self._timediff_iteration()
@@ -193,6 +193,12 @@ def find_log_dir() -> Path:
193
193
  for line in f:
194
194
  if line.startswith("LogDir"):
195
195
  log_dir = line.split("=")[1].strip()
196
+ if not log_dir:
197
+ return (
198
+ Path(os.path.expandvars("%PROGRAMDATA%") + "/dynatrace/oneagent/log")
199
+ if os.name == "nt"
200
+ else Path("/var/log/dynatrace/oneagent")
201
+ )
196
202
  return Path(log_dir)
197
203
  msg = f"Could not find LogDir in {installation_conf}"
198
204
  raise Exception(msg)