Skip to content

Commit

Permalink
fix: add before send to remove langfuse defaultErrorResponse (#8361)
Browse files Browse the repository at this point in the history
  • Loading branch information
ZhouhaoJiang authored Sep 13, 2024
1 parent 5dfd7ab commit 84ac5cc
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 6 deletions.
10 changes: 10 additions & 0 deletions api/extensions/ext_sentry.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,15 @@
from werkzeug.exceptions import HTTPException


def before_send(event, hint):
if "exc_info" in hint:
exc_type, exc_value, tb = hint["exc_info"]
if parse_error.defaultErrorResponse in str(exc_value):
return None

return event


def init_app(app):
if app.config.get("SENTRY_DSN"):
sentry_sdk.init(
Expand All @@ -16,4 +25,5 @@ def init_app(app):
profiles_sample_rate=app.config.get("SENTRY_PROFILES_SAMPLE_RATE", 1.0),
environment=app.config.get("DEPLOY_ENV"),
release=f"dify-{app.config.get('CURRENT_VERSION')}-{app.config.get('COMMIT_SHA')}",
before_send=before_send,
)
24 changes: 18 additions & 6 deletions api/services/ops_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,16 +31,28 @@ def get_tracing_app_config(cls, app_id: str, tracing_provider: str):
if tracing_provider == "langfuse" and (
"project_key" not in decrypt_tracing_config or not decrypt_tracing_config.get("project_key")
):
project_key = OpsTraceManager.get_trace_config_project_key(decrypt_tracing_config, tracing_provider)
new_decrypt_tracing_config.update(
{"project_url": "{host}/project/{key}".format(host=decrypt_tracing_config.get("host"), key=project_key)}
)
try:
project_key = OpsTraceManager.get_trace_config_project_key(decrypt_tracing_config, tracing_provider)
new_decrypt_tracing_config.update(
{
"project_url": "{host}/project/{key}".format(
host=decrypt_tracing_config.get("host"), key=project_key
)
}
)
except Exception:
new_decrypt_tracing_config.update(
{"project_url": "{host}/".format(host=decrypt_tracing_config.get("host"))}
)

if tracing_provider == "langsmith" and (
"project_url" not in decrypt_tracing_config or not decrypt_tracing_config.get("project_url")
):
project_url = OpsTraceManager.get_trace_config_project_url(decrypt_tracing_config, tracing_provider)
new_decrypt_tracing_config.update({"project_url": project_url})
try:
project_url = OpsTraceManager.get_trace_config_project_url(decrypt_tracing_config, tracing_provider)
new_decrypt_tracing_config.update({"project_url": project_url})
except Exception:
new_decrypt_tracing_config.update({"project_url": "https://smith.langchain.com/"})

trace_config_data.tracing_config = new_decrypt_tracing_config
return trace_config_data.to_dict()
Expand Down

0 comments on commit 84ac5cc

Please sign in to comment.