dt-extensions-sdk 1.1.16__tar.gz → 1.1.18__tar.gz

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.
Files changed (82) hide show
  1. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/PKG-INFO +1 -1
  2. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/__about__.py +1 -1
  3. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/communication.py +0 -1
  4. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/extension.py +14 -9
  5. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/.github/workflows/gh-pages-docs.yml +0 -0
  6. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/.github/workflows/publish.yml +0 -0
  7. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/.gitignore +0 -0
  8. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/LICENSE.txt +0 -0
  9. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/README.md +0 -0
  10. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/_static/dt-sdk-header.png +0 -0
  11. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/_static/dt-sdk-logo.png +0 -0
  12. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/_static/favicon.ico +0 -0
  13. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/_static/img/migrate-01-new-extension.png +0 -0
  14. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/_static/img/migrate-02-type.png +0 -0
  15. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/_static/img/migrate-03-import.png +0 -0
  16. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/_static/img/migrate-04-import-remote.png +0 -0
  17. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/_static/img/migrate-05-activation.png +0 -0
  18. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/_static/img/migrate-06-activation-config.png +0 -0
  19. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/api/events/event_severity.rst +0 -0
  20. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/api/events/event_type.rst +0 -0
  21. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/api/events/index.rst +0 -0
  22. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/api/extension.rst +0 -0
  23. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/api/metrics/index.rst +0 -0
  24. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/api/metrics/metric.rst +0 -0
  25. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/api/metrics/metric_type.rst +0 -0
  26. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/cli/assemble.rst +0 -0
  27. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/cli/build.rst +0 -0
  28. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/cli/create.rst +0 -0
  29. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/cli/gencerts.rst +0 -0
  30. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/cli/help.rst +0 -0
  31. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/cli/run.rst +0 -0
  32. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/cli/sign.rst +0 -0
  33. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/cli/upload.rst +0 -0
  34. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/cli/wheel.rst +0 -0
  35. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/conf.py +0 -0
  36. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/guides/building.rst +0 -0
  37. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/guides/extension_structure.rst +0 -0
  38. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/guides/installation.rst +0 -0
  39. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/guides/migration.rst +0 -0
  40. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/index.rst +0 -0
  41. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/docs/requirements.txt +0 -0
  42. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/__init__.py +0 -0
  43. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/__init__.py +0 -0
  44. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/create/__init__.py +0 -0
  45. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/create/create.py +0 -0
  46. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/create/extension_template/.gitignore.template +0 -0
  47. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/create/extension_template/README.md.template +0 -0
  48. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/create/extension_template/activation.json.template +0 -0
  49. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/create/extension_template/extension/activationSchema.json.template +0 -0
  50. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/create/extension_template/extension/extension.yaml.template +0 -0
  51. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/create/extension_template/extension_name/__init__.py.template +0 -0
  52. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/create/extension_template/extension_name/__main__.py.template +0 -0
  53. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/create/extension_template/setup.py.template +0 -0
  54. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/main.py +0 -0
  55. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/cli/schema.py +0 -0
  56. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/__init__.py +0 -0
  57. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/activation.py +0 -0
  58. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/callback.py +0 -0
  59. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/event.py +0 -0
  60. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/helper.py +0 -0
  61. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/metric.py +0 -0
  62. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/runtime.py +0 -0
  63. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/vendor/__init__.py +0 -0
  64. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/vendor/mureq/LICENSE +0 -0
  65. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/vendor/mureq/__init__.py +0 -0
  66. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/dynatrace_extension/sdk/vendor/mureq/mureq.py +0 -0
  67. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/pyproject.toml +0 -0
  68. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/test.py +0 -0
  69. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/test.txt +0 -0
  70. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/__init__.py +0 -0
  71. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/cli/__init__.py +0 -0
  72. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/cli/test_dt_sdk.py +0 -0
  73. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/cli/test_templates.py +0 -0
  74. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/cli/test_types.py +0 -0
  75. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/sdk/__init__.py +0 -0
  76. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/sdk/test_activation.py +0 -0
  77. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/sdk/test_callback.py +0 -0
  78. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/sdk/test_communication.py +0 -0
  79. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/sdk/test_extension.py +0 -0
  80. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/sdk/test_metric.py +0 -0
  81. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/sdk/test_runtime_properties.py +0 -0
  82. {dt_extensions_sdk-1.1.16 → dt_extensions_sdk-1.1.18}/tests/sdk/test_status.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dt-extensions-sdk
3
- Version: 1.1.16
3
+ Version: 1.1.18
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
@@ -2,4 +2,4 @@
2
2
  #
3
3
  # SPDX-License-Identifier: MIT
4
4
 
5
- __version__ = "1.1.16"
5
+ __version__ = "1.1.18"
@@ -484,7 +484,6 @@ def divide_logs_into_batches(logs: list[dict]):
484
484
  events_left -= 1
485
485
 
486
486
  if event is not None:
487
- event = json.dumps(event).encode("utf-8")
488
487
  event_size = len(event)
489
488
 
490
489
  if batch_size + event_size >= MAX_LOG_REQUEST_SIZE:
@@ -997,16 +997,21 @@ class Extension:
997
997
  self._metrics.extend(lines)
998
998
 
999
999
  def _send_events_internal(self, events: Union[dict, List[dict]]):
1000
- responses = self._client.send_events(events, self.log_event_enrichment)
1001
-
1002
- for response in responses:
1000
+ try:
1001
+ responses = self._client.send_events(events, self.log_event_enrichment)
1002
+
1003
+ for response in responses:
1004
+ with self._internal_callbacks_results_lock:
1005
+ self._internal_callbacks_results[self._send_events.__name__] = Status(StatusValue.OK)
1006
+ if not response or "error" not in response or "message" not in response["error"]:
1007
+ return
1008
+ self._internal_callbacks_results[self._send_events.__name__] = Status(
1009
+ StatusValue.GENERIC_ERROR, response["error"]["message"]
1010
+ )
1011
+ except Exception as e:
1012
+ api_logger.error(f"Error sending events: {e!r}", exc_info=True)
1003
1013
  with self._internal_callbacks_results_lock:
1004
- self._internal_callbacks_results[self._send_events.__name__] = Status(StatusValue.OK)
1005
- if not response or "error" not in response or "message" not in response["error"]:
1006
- return
1007
- self._internal_callbacks_results[self._send_events.__name__] = Status(
1008
- StatusValue.GENERIC_ERROR, response["error"]["message"]
1009
- )
1014
+ self._internal_callbacks_results[self._send_events.__name__] = Status(StatusValue.GENERIC_ERROR, str(e))
1010
1015
 
1011
1016
  def _send_events(self, events: Union[dict, List[dict]]):
1012
1017
  self._internal_executor.submit(self._send_events_internal, events)