diff options
author | Daria Kobtseva <daria.kts@gmail.com> | 2020-06-21 12:29:42 +0200 |
---|---|---|
committer | Daria Kobtseva <daria.kts@gmail.com> | 2020-06-21 12:29:42 +0200 |
commit | 61a0ff8ace87e917d31231f28f3be6b21a113624 (patch) | |
tree | b64df145fd618e153a21f0337bcad0493f6d7c69 | |
parent | 8569b6d65fa1d35db6f8c9b6a4ca95ece88f7e4b (diff) | |
download | osprofiler-61a0ff8ace87e917d31231f28f3be6b21a113624.tar.gz |
Fix empty 'args' and 'kwargs' when using 'hide_args' with Jaeger3.2.2
When 'hide_args=True' is used in @profiler.trace() decorator
along with Jaeger driver, trace 'args' and 'kwargs' function
parameters are empty, which leads to a key error.
This change introduces a key check before adding those parameters to
tags.
Change-Id: I312da1b175a04d4ddee7f823111b8320dd4777d6
-rw-r--r-- | osprofiler/drivers/jaeger.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/osprofiler/drivers/jaeger.py b/osprofiler/drivers/jaeger.py index 82b7a23..262f6a6 100644 --- a/osprofiler/drivers/jaeger.py +++ b/osprofiler/drivers/jaeger.py @@ -140,8 +140,10 @@ class Jaeger(base.Driver): tags["http.scheme"] = info["request"]["scheme"] elif info.get("function"): # RPC, function calls - tags["args"] = info["function"]["args"] - tags["kwargs"] = info["function"]["kwargs"] + if "args" in info["function"]: + tags["args"] = info["function"]["args"] + if "kwargs" in info["function"]: + tags["kwargs"] = info["function"]["kwargs"] tags["name"] = info["function"]["name"] return tags |