From 98da3d62c429c217019ab836ff405e0253069f2a Mon Sep 17 00:00:00 2001 From: im3671198 Date: Thu, 8 Aug 2024 14:17:00 -0300 Subject: [PATCH 1/5] error en dynatrace por version de mongo --- autodynatrace/wrappers/pymongo/wrapper.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/autodynatrace/wrappers/pymongo/wrapper.py b/autodynatrace/wrappers/pymongo/wrapper.py index 73d9cc7..2b39c07 100644 --- a/autodynatrace/wrappers/pymongo/wrapper.py +++ b/autodynatrace/wrappers/pymongo/wrapper.py @@ -14,7 +14,7 @@ def __init__(self): def started(self, event): try: - db_name = event.database_name + #db_name = event.database_name collection_name = event.command.get(event.command_name) operation = "{} at {}".format(event.command_name, collection_name) host, port = event.connection_id @@ -24,8 +24,6 @@ def started(self, event): tracer = sdk.trace_sql_database_request(db_info, "{}".format(operation)) self._tracer_dict[_get_tracer_dict_key(event)] = tracer tracer.start() - logger.debug("Tracing Mongo call: {}({})@{}:{}".format(operation, db_name, host, port)) - except Exception as e: logger.debug("Error instrumenting MongoDB: {}".format(e)) From 2759b9dd3389a0f8815e7a1b18b71cefd4a603f2 Mon Sep 17 00:00:00 2001 From: im3671198 Date: Thu, 8 Aug 2024 14:18:39 -0300 Subject: [PATCH 2/5] prueba --- autodynatrace/wrappers/pymongo/wrapper.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/autodynatrace/wrappers/pymongo/wrapper.py b/autodynatrace/wrappers/pymongo/wrapper.py index 2b39c07..007e3a6 100644 --- a/autodynatrace/wrappers/pymongo/wrapper.py +++ b/autodynatrace/wrappers/pymongo/wrapper.py @@ -14,7 +14,7 @@ def __init__(self): def started(self, event): try: - #db_name = event.database_name + db_name = event.database_name collection_name = event.command.get(event.command_name) operation = "{} at {}".format(event.command_name, collection_name) host, port = event.connection_id @@ -24,6 +24,8 @@ def started(self, event): tracer = sdk.trace_sql_database_request(db_info, "{}".format(operation)) self._tracer_dict[_get_tracer_dict_key(event)] = tracer tracer.start() + #logger.debug("Tracing Mongo call: {}@{}:{}".format(operation, db_name, host, port)) + except Exception as e: logger.debug("Error instrumenting MongoDB: {}".format(e)) From 523cb1ba2647abe9daf9f7b75cbeda1740f62990 Mon Sep 17 00:00:00 2001 From: im3671198 Date: Thu, 8 Aug 2024 14:56:29 -0300 Subject: [PATCH 3/5] fix error dynatrace --- autodynatrace/wrappers/pymongo/wrapper.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/autodynatrace/wrappers/pymongo/wrapper.py b/autodynatrace/wrappers/pymongo/wrapper.py index 007e3a6..a5de5e3 100644 --- a/autodynatrace/wrappers/pymongo/wrapper.py +++ b/autodynatrace/wrappers/pymongo/wrapper.py @@ -42,7 +42,7 @@ def end(self, failed, event, message=""): logger.debug("Got bad pymongo event: {}".format(event)) tracer.mark_failed("MongoDB Command", message) - logger.debug("Ending Mongo call: {}({})@{}:{}".format(event.command_name, event.database_name, event.connection_id[0], event.connection_id[1])) + #logger.debug("Ending Mongo call: {}({})@{}:{}".format(event.command_name, event.database_name, event.connection_id[0], event.connection_id[1])) tracer.end() self._tracer_dict.pop(_get_tracer_dict_key(event)) From 759c0f8879d06149c12a5e637b8f885c984a29ea Mon Sep 17 00:00:00 2001 From: HichamBenbriqa Date: Tue, 3 Dec 2024 11:39:18 -0300 Subject: [PATCH 4/5] Add logs to urllib instrument --- autodynatrace/wrappers/urllib/wrapper.py | 30 ++++++++++++++++++++---- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/autodynatrace/wrappers/urllib/wrapper.py b/autodynatrace/wrappers/urllib/wrapper.py index 82cae87..a902547 100644 --- a/autodynatrace/wrappers/urllib/wrapper.py +++ b/autodynatrace/wrappers/urllib/wrapper.py @@ -12,13 +12,27 @@ def dynatrace_putrequest(wrapped, instance, args, kwargs): method, path = args[:2] scheme = "https" if "HTTPS" in instance.__class__.__name__ else "http" url = "{}://{}{}{}".format( - scheme, instance.host, ":{}".format(instance.port) if str(instance.port) not in ["80", "443"] else "", path + scheme, + instance.host, + ":{}".format(instance.port) + if str(instance.port) not in ["80", "443"] + else "", + path, ) tracer = sdk.trace_outgoing_web_request(url, method) tracer.start() setattr(instance, "__dynatrace_tracer", tracer) ret = wrapped(*args, **kwargs) - tag = tracer.outgoing_dynatrace_string_tag + tag = tracer.outgoing_dynatrace_string_tag # outgoing_dynatrace_byte_tag + + byte_tag = tracer.outgoing_dynatrace_byte_tag + decoded_tag = tracer.outgoing_dynatrace_string_tag.decode("utf-8") + + logger.debug("Tracing urllib, url: '{}', Byte tag: '{}'".format(url, byte_tag)) + logger.debug( + "Tracing urllib, url: '{}', Decoded tag: '{}'".format(url, decoded_tag) + ) + logger.debug("Tracing urllib, url: '{}', tag: '{}'".format(url, tag)) instance.putheader("x-dynatrace", tag) return ret @@ -35,7 +49,15 @@ def dynatrace_getresponse(wrapped, instance, args, kwargs): return response - setattr(httplib.HTTPConnection, "putrequest", wrapt.FunctionWrapper(httplib.HTTPConnection.putrequest, dynatrace_putrequest)) setattr( - httplib.HTTPConnection, "getresponse", wrapt.FunctionWrapper(httplib.HTTPConnection.getresponse, dynatrace_getresponse) + httplib.HTTPConnection, + "putrequest", + wrapt.FunctionWrapper(httplib.HTTPConnection.putrequest, dynatrace_putrequest), + ) + setattr( + httplib.HTTPConnection, + "getresponse", + wrapt.FunctionWrapper( + httplib.HTTPConnection.getresponse, dynatrace_getresponse + ), ) From abeb357785bac3d6b66a60017060f75a3fd09903 Mon Sep 17 00:00:00 2001 From: mariaeugeniadecia Date: Wed, 4 Dec 2024 08:25:48 -0300 Subject: [PATCH 5/5] Se agregan mas logs