Comments (3)
Hey @Ferdy89, thanks for bringing this up! Sounds like a good suggestion; we'll need to reconcile the Sidekiq error handler with how the Sidekiq tracer works. I'd be happy to take a deeper look at this and get back to you.
from dd-trace-rb.
Took a look into reproducing this issue, and it does indeed flag Sidekiq jobs that are aborted by Sidekiq::Shutdown
exceptions as errors.
Good news is that if you'd like these not to report as errors, you can using the "Processing Pipeline" feature, which allows you to modify or filter out spans to customize your application's needs.
Here's a snippet I whipped up that will remove the error status from Sidekiq jobs that fail via shutdown. It preserves the back traces and exception type, but the UI will render their status as "Ok" instead of "Error". Just add it to your Datadog initializer file:
# Unflag Sidekiq jobs that fail with Sidekiq::Shutdown errors
Datadog::Pipeline.before_flush(
Datadog::Pipeline::SpanProcessor.new do |span|
if span.name == 'sidekiq.job' && span.get_tag(Datadog::Ext::Errors::TYPE) == 'Sidekiq::Shutdown'
span.status = 0
end
end
)
Wanna give this a shot and let me know if this helps?
from dd-trace-rb.
Closing this given the lack of activity. Please feel free to respond here if you'd like to revisit this issue.
from dd-trace-rb.
Related Issues (20)
- ddtrace - throws error when deploying a rails 6.1 instance HOT 1
- Sinatra - missing trace_id when trying to correlate logs with traces HOT 2
- Qless support is missing from 2.0 HOT 1
- Capture tracing when a specific header is passed in an HTTP request HOT 3
- Instrumenting both Redis and Sidekiq leads to "stack level too deep (SystemStackError)" HOT 1
- GraphQL queries will error out after datadog upgrade ("Found two visible definitions") HOT 2
- With `datadog` 2.x, how can I mimic the 1.x test adapter that prints traces to `$stdout`? HOT 2
- Failed to report profiling data, connection closed before message completed HOT 3
- Anyway to make the faraday instrumentation split by domain but allow an override to not split by domain in some cases? HOT 5
- "Incompatible version of the passenger gem" even when Passenger has the right version HOT 7
- GRPC integration logging error even when tracing is disabled HOT 1
- We had a use case for Datadog::Tracing::Contrib::HTTP::Instrumentation.after_request HOT 3
- Wrong MIME/Content-Type for code provenance multipart data HOT 2
- Support tracing of Mysql2 gem prepared statements HOT 2
- Datadog::Tracing.correlation without trace information HOT 1
- AppSec crashes when parsing integer HTTP headers (undefined method `tr' for nil:NilClass (NoMethodError)) HOT 3
- Rails tracing produces duplicate mysql2 spans
- GraphQL unified tracer not autoloaded HOT 2
- suppress logs by default when running minitest tests HOT 2
- ActiveSupport::Cache instrumentation missing namespace
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dd-trace-rb.