Skip to content

Commit

Permalink
Better error check
Browse files Browse the repository at this point in the history
  • Loading branch information
Hellzy committed Jun 18, 2024
1 parent ce90381 commit aa9c24f
Showing 1 changed file with 5 additions and 4 deletions.
9 changes: 5 additions & 4 deletions contrib/database/sql/conn.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import (
"math"
"time"

"gopkg.in/DataDog/dd-trace-go.v1/appsec/events"
"gopkg.in/DataDog/dd-trace-go.v1/contrib/internal/options"
"gopkg.in/DataDog/dd-trace-go.v1/ddtrace"
"gopkg.in/DataDog/dd-trace-go.v1/ddtrace/ext"
Expand Down Expand Up @@ -140,7 +141,7 @@ func (tc *TracedConn) ExecContext(ctx context.Context, query string, args []driv
if appsec.Enabled() {
err = sqlsec.ProtectSQLOperation(ctx, query, tc.driverName)
}
if err == nil {
if !events.IsSecurityError(err) {
r, err = execContext.ExecContext(ctx, cquery, args)
}
tc.tryTrace(ctx, QueryTypeExec, query, start, err, append(withDBMTraceInjectedTag(tc.cfg.dbmPropagationMode), tracer.WithSpanID(spanID))...)
Expand All @@ -162,7 +163,7 @@ func (tc *TracedConn) ExecContext(ctx context.Context, query string, args []driv
if appsec.Enabled() {
err = sqlsec.ProtectSQLOperation(ctx, query, tc.driverName)
}
if err == nil {
if !events.IsSecurityError(err) {
r, err = execer.Exec(cquery, dargs)
}
tc.tryTrace(ctx, QueryTypeExec, query, start, err, append(withDBMTraceInjectedTag(tc.cfg.dbmPropagationMode), tracer.WithSpanID(spanID))...)
Expand Down Expand Up @@ -194,7 +195,7 @@ func (tc *TracedConn) QueryContext(ctx context.Context, query string, args []dri
if appsec.Enabled() {
err = sqlsec.ProtectSQLOperation(ctx, query, tc.driverName)
}
if err == nil {
if !events.IsSecurityError(err) {
rows, err = queryerContext.QueryContext(ctx, cquery, args)
}
tc.tryTrace(ctx, QueryTypeQuery, query, start, err, append(withDBMTraceInjectedTag(tc.cfg.dbmPropagationMode), tracer.WithSpanID(spanID))...)
Expand All @@ -216,7 +217,7 @@ func (tc *TracedConn) QueryContext(ctx context.Context, query string, args []dri
if appsec.Enabled() {
err = sqlsec.ProtectSQLOperation(ctx, query, tc.driverName)
}
if err == nil {
if !events.IsSecurityError(err) {
rows, err = queryer.Query(cquery, dargs)
}
tc.tryTrace(ctx, QueryTypeQuery, query, start, err, append(withDBMTraceInjectedTag(tc.cfg.dbmPropagationMode), tracer.WithSpanID(spanID))...)
Expand Down

0 comments on commit aa9c24f

Please sign in to comment.