From 42c9302fc9b5ae1d17279852a4e111612e20a298 Mon Sep 17 00:00:00 2001 From: AJ Stuyvenberg Date: Tue, 15 Mar 2022 14:56:23 -0500 Subject: [PATCH 1/6] fix: Support Decimal for tag_object --- datadog_lambda/tag_object.py | 3 ++- tests/test_tag_object.py | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/datadog_lambda/tag_object.py b/datadog_lambda/tag_object.py index 7ca8512c3..02dc3ebef 100644 --- a/datadog_lambda/tag_object.py +++ b/datadog_lambda/tag_object.py @@ -3,6 +3,7 @@ # This product includes software developed at Datadog (https://www.datadoghq.com/). # Copyright 2021 Datadog, Inc. +from decimal import Decimal import json import logging @@ -26,7 +27,7 @@ def tag_object(span, key, obj, depth=0): except ValueError: redacted = _redact_val(key, obj[0:5000]) return span.set_tag(key, redacted) - if isinstance(obj, int) or isinstance(obj, float): + if isinstance(obj, int) or isinstance(obj, float) or isinstance(obj, Decimal): return span.set_tag(key, obj) if isinstance(obj, list): for k, v in enumerate(obj): diff --git a/tests/test_tag_object.py b/tests/test_tag_object.py index 0936f0c5c..868b0a04e 100644 --- a/tests/test_tag_object.py +++ b/tests/test_tag_object.py @@ -1,4 +1,5 @@ import unittest +from decimal import Decimal try: from unittest.mock import MagicMock, patch, call @@ -82,3 +83,16 @@ def test_unicode_tag_object(self): ], True, ) + + def test_decimal_tag_object(self): + payload = { + "myValue": Decimal(500.50) + } + spanMock = MagicMock() + tag_object(spanMock, "function.request", payload) + spanMock.set_tag.assert_has_calls( + [ + call("function.request.myValue", Decimal(500.50)), + ], + True, + ) \ No newline at end of file From 37d9b1e68b3d7e300a171b41d5bb08aa81407041 Mon Sep 17 00:00:00 2001 From: AJ Stuyvenberg Date: Tue, 15 Mar 2022 15:00:39 -0500 Subject: [PATCH 2/6] fix: black --- tests/test_tag_object.py | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/tests/test_tag_object.py b/tests/test_tag_object.py index 868b0a04e..ea4f2a57c 100644 --- a/tests/test_tag_object.py +++ b/tests/test_tag_object.py @@ -85,14 +85,9 @@ def test_unicode_tag_object(self): ) def test_decimal_tag_object(self): - payload = { - "myValue": Decimal(500.50) - } + payload = {"myValue": Decimal(500.50)} spanMock = MagicMock() tag_object(spanMock, "function.request", payload) spanMock.set_tag.assert_has_calls( - [ - call("function.request.myValue", Decimal(500.50)), - ], - True, - ) \ No newline at end of file + [call("function.request.myValue", Decimal(500.50)),], True, + ) From e8a159953794d6843517b58d7caf90d8d2be8bd1 Mon Sep 17 00:00:00 2001 From: AJ Stuyvenberg Date: Tue, 15 Mar 2022 15:04:32 -0500 Subject: [PATCH 3/6] fix: black --- tests/test_tag_object.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/test_tag_object.py b/tests/test_tag_object.py index ea4f2a57c..cdb2941c5 100644 --- a/tests/test_tag_object.py +++ b/tests/test_tag_object.py @@ -89,5 +89,8 @@ def test_decimal_tag_object(self): spanMock = MagicMock() tag_object(spanMock, "function.request", payload) spanMock.set_tag.assert_has_calls( - [call("function.request.myValue", Decimal(500.50)),], True, + [ + call("function.request.myValue", Decimal(500.50)), + ], + True, ) From 37ec84221a0d208b0c2e518d77363ef09365893a Mon Sep 17 00:00:00 2001 From: AJ Stuyvenberg Date: Tue, 15 Mar 2022 15:11:29 -0500 Subject: [PATCH 4/6] feat: --allow-releaseinfo-change --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0d00bfc3e..56600f84b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -101,7 +101,7 @@ jobs: run: sudo yarn global add serverless@^2.72.2 --prefix /usr/local - name: Install Crossbuild Deps run: | - sudo apt-get update + sudo apt-get update --allow-releaseinfo-change sudo apt install -y qemu-user-static binfmt-support - name: Install dependencies From 2f68897a2dc3a9827a055c5a8ea35e321f472d9a Mon Sep 17 00:00:00 2001 From: AJ Stuyvenberg Date: Tue, 15 Mar 2022 15:14:32 -0500 Subject: [PATCH 5/6] feat: --fix-missing --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 56600f84b..7d7884def 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -101,7 +101,7 @@ jobs: run: sudo yarn global add serverless@^2.72.2 --prefix /usr/local - name: Install Crossbuild Deps run: | - sudo apt-get update --allow-releaseinfo-change + sudo apt-get update --allow-releaseinfo-change --fix-missing sudo apt install -y qemu-user-static binfmt-support - name: Install dependencies From 26e4a8252f2dbe6cc036da3763577cfc5d9da368 Mon Sep 17 00:00:00 2001 From: AJ Stuyvenberg Date: Tue, 15 Mar 2022 15:17:13 -0500 Subject: [PATCH 6/6] add apt-get update before apt install --- .github/workflows/check-size.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/check-size.yml b/.github/workflows/check-size.yml index 69d578d05..1c247e66d 100644 --- a/.github/workflows/check-size.yml +++ b/.github/workflows/check-size.yml @@ -15,7 +15,9 @@ jobs: python-version: 3.7 - name: Install Crossbuild Deps - run: sudo apt install -y qemu-user-static binfmt-support + run: | + sudo apt-get update --allow-releaseinfo-change --fix-missing + sudo apt install -y qemu-user-static binfmt-support - name: Install dependencies run: |