Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[APPSEC-56128] Replace telemetry error with report #4222

Closed

Conversation

Strech
Copy link
Member

@Strech Strech commented Dec 12, 2024

What does this PR do?

Replace AppSec telemetry error with report upon receiving internal "implicit" error of libddwaf.

Motivation:

This change is a part-done set of changes in order to have a single monitor to control issues with libddwaf calls.

With this change we will be able to see errors both "implicit" and explicit in the same place to build a Monitor around them.

Screenshot 2024-12-12 at 12 58 35 (example picture for reference - live log)

We have a task to replace exceptions in libddwaf-rb with return status Result (implicit error) which means two things:

  1. a single place to record the error - in report execution method
  2. a better Result object from libddwaf-rb (decouple from its origin interface)

Change log entry

No.

Additional Notes:

In order to deliver log which will appear in ErrorTracking I need a backtrace and a faster backtrace collection appears only in Ruby 3.4.0.

Telemetry to ErrorTracking is not in the perfect state, which means errors will have a generic name instead of a name of exception. But I've added this request to the APM Language team.

How to test the change?

CI is enough

@Strech Strech requested a review from a team as a code owner December 12, 2024 12:44
@github-actions github-actions bot added the appsec Application Security monitoring product label Dec 12, 2024
@Strech Strech force-pushed the appsec-56128-replace-telemetry-error-with-report branch from 413066f to 34c83a0 Compare December 12, 2024 12:47
@Strech Strech added the dev/internal Other internal work that does not need to be included in the changelog label Dec 12, 2024
@datadog-datadog-prod-us1
Copy link
Contributor

datadog-datadog-prod-us1 bot commented Dec 12, 2024

Datadog Report

Branch report: appsec-56128-replace-telemetry-error-with-report
Commit report: 34c83a0
Test service: dd-trace-rb

✅ 0 Failed, 22099 Passed, 1458 Skipped, 5m 31.09s Total Time

@pr-commenter
Copy link

pr-commenter bot commented Dec 12, 2024

Benchmarks

Benchmark execution time: 2024-12-12 13:11:44

Comparing candidate commit 34c83a0 in PR branch appsec-56128-replace-telemetry-error-with-report with baseline commit 3c0de7d in branch master.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 31 metrics, 2 unstable metrics.

@codecov-commenter
Copy link

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 97.75%. Comparing base (3c0de7d) to head (34c83a0).

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #4222   +/-   ##
=======================================
  Coverage   97.75%   97.75%           
=======================================
  Files        1355     1355           
  Lines       82148    82151    +3     
  Branches     4202     4202           
=======================================
+ Hits        80302    80310    +8     
+ Misses       1846     1841    -5     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Strech Strech closed this Dec 13, 2024
@Strech Strech deleted the appsec-56128-replace-telemetry-error-with-report branch December 13, 2024 06:37
@Strech
Copy link
Member Author

Strech commented Dec 13, 2024

After I sleep over with that change, I think it's unnecessary performance impact without actual benefit, hence - closed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
appsec Application Security monitoring product dev/internal Other internal work that does not need to be included in the changelog
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants