From b09b936b153cf83e9112633b2772a83a9f586dc2 Mon Sep 17 00:00:00 2001 From: mrT23 Date: Wed, 28 Feb 2024 16:05:52 +0200 Subject: [PATCH 1/3] get_log_context --- pr_agent/servers/github_app.py | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/pr_agent/servers/github_app.py b/pr_agent/servers/github_app.py index 5f59969b..d72ae1fd 100644 --- a/pr_agent/servers/github_app.py +++ b/pr_agent/servers/github_app.py @@ -218,6 +218,18 @@ def handle_closed_pr(body, event, action, log_context): get_logger().info("PR-Agent statistics for closed PR", analytics=True) +def get_log_context(body, event, action, build_number): + sender = body.get("sender", {}).get("login") + sender_id = body.get("sender", {}).get("id") + repo = body.get("repository", {}).get("full_name", "") + org = body.get("organization", {}).get("login", "") + app_name = get_settings().get("CONFIG.APP_NAME", "Unknown") + log_context = {"action": action, "event": event, "sender": sender, "server_type": "github_app", + "request_id": uuid.uuid4().hex, "build_number": build_number, "app_name": app_name, + "repo": repo, "org": org} + return log_context, sender, sender_id + + async def handle_request(body: Dict[str, Any], event: str): """ Handle incoming GitHub webhook requests. @@ -230,11 +242,7 @@ async def handle_request(body: Dict[str, Any], event: str): if not action: return {} agent = PRAgent() - sender = body.get("sender", {}).get("login") - sender_id = body.get("sender", {}).get("id") - app_name = get_settings().get("CONFIG.APP_NAME", "Unknown") - log_context = {"action": action, "event": event, "sender": sender, "server_type": "github_app", - "request_id": uuid.uuid4().hex, "build_number": build_number, "app_name": app_name} + log_context, sender, sender_id = get_log_context(body, event, action, build_number) # handle comments on PRs if action == 'created': From d5e72c2183d3d5273d9c65c43982915fb6a0d634 Mon Sep 17 00:00:00 2001 From: mrT23 Date: Wed, 28 Feb 2024 16:10:57 +0200 Subject: [PATCH 2/3] get_log_context --- pr_agent/servers/github_app.py | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/pr_agent/servers/github_app.py b/pr_agent/servers/github_app.py index d72ae1fd..3f793551 100644 --- a/pr_agent/servers/github_app.py +++ b/pr_agent/servers/github_app.py @@ -219,14 +219,20 @@ def handle_closed_pr(body, event, action, log_context): def get_log_context(body, event, action, build_number): - sender = body.get("sender", {}).get("login") - sender_id = body.get("sender", {}).get("id") - repo = body.get("repository", {}).get("full_name", "") - org = body.get("organization", {}).get("login", "") - app_name = get_settings().get("CONFIG.APP_NAME", "Unknown") - log_context = {"action": action, "event": event, "sender": sender, "server_type": "github_app", - "request_id": uuid.uuid4().hex, "build_number": build_number, "app_name": app_name, - "repo": repo, "org": org} + sender = "" + sender_id = "" + try: + sender = body.get("sender", {}).get("login") + sender_id = body.get("sender", {}).get("id") + repo = body.get("repository", {}).get("full_name", "") + org = body.get("organization", {}).get("login", "") + app_name = get_settings().get("CONFIG.APP_NAME", "Unknown") + log_context = {"action": action, "event": event, "sender": sender, "server_type": "github_app", + "request_id": uuid.uuid4().hex, "build_number": build_number, "app_name": app_name, + "repo": repo, "org": org} + except Exception as e: + get_logger().error("Failed to get log context", e) + log_context = {} return log_context, sender, sender_id From 8d498cd70ccf10d0e0fd36489471437fbbd00711 Mon Sep 17 00:00:00 2001 From: mrT23 Date: Wed, 28 Feb 2024 16:14:13 +0200 Subject: [PATCH 3/3] git_org --- pr_agent/servers/github_app.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pr_agent/servers/github_app.py b/pr_agent/servers/github_app.py index 3f793551..f2b0d92b 100644 --- a/pr_agent/servers/github_app.py +++ b/pr_agent/servers/github_app.py @@ -225,11 +225,11 @@ def get_log_context(body, event, action, build_number): sender = body.get("sender", {}).get("login") sender_id = body.get("sender", {}).get("id") repo = body.get("repository", {}).get("full_name", "") - org = body.get("organization", {}).get("login", "") + git_org = body.get("organization", {}).get("login", "") app_name = get_settings().get("CONFIG.APP_NAME", "Unknown") log_context = {"action": action, "event": event, "sender": sender, "server_type": "github_app", "request_id": uuid.uuid4().hex, "build_number": build_number, "app_name": app_name, - "repo": repo, "org": org} + "repo": repo, "git_org": git_org} except Exception as e: get_logger().error("Failed to get log context", e) log_context = {}