-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
[exporter/elasticsearch] [chore] fix lint issues with golangci-lint 1.62 #36798
[exporter/elasticsearch] [chore] fix lint issues with golangci-lint 1.62 #36798
Conversation
cc @TylerHelmuth since you're self-assigned the dependabot PR. |
|
||
func safeUint64ToInt64(v uint64) int64 { | ||
if v > math.MaxInt64 { | ||
return math.MaxInt64 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This results in wrong values without notifying the user.
IMO, we can't just silently go on with modified count values here.
Or it needs to documented very well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note that an unchecked overflow will already send wrong values. We're chosing to send the highest maximum value rather than a negative number which would be even more confusing.
I don't mind adding some logging, but I haven't found any such precedent within the package.
And for that log line to be useful and not just cause more noise, we'd have to be able to correlate it to a specific document ID.
5d6437b
to
b250f87
Compare
Co-authored-by: Tim Rühsen <[email protected]>
Co-authored-by: Tim Rühsen <[email protected]>
Co-authored-by: Tim Rühsen <[email protected]>
Co-authored-by: Tim Rühsen <[email protected]>
@@ -1245,7 +1245,7 @@ func TestEncodeLogBodyMapMode(t *testing.T) { | |||
resourceLogs := logs.ResourceLogs().AppendEmpty() | |||
scopeLogs := resourceLogs.ScopeLogs().AppendEmpty() | |||
logRecords := scopeLogs.LogRecords() | |||
observedTimestamp := pcommon.Timestamp(time.Now().UnixNano()) | |||
observedTimestamp := pcommon.Timestamp(time.Now().UnixNano()) // nolint:gosec // UnixNano is positive and thus safe to convert to signed integer. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, messed up
observedTimestamp := pcommon.Timestamp(time.Now().UnixNano()) // nolint:gosec // UnixNano is positive and thus safe to convert to signed integer. | |
observedTimestamp := pcommon.Timestamp(time.Now().UnixNano()) // nolint:gosec // UnixNano is positive and thus safe to convert to unsigned integer. |
exporter/elasticsearchexporter/internal/objmodel/objmodel_test.go
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Co-authored-by: Christos Markou <[email protected]>
….62 (open-telemetry#36798) #### Description The golangci-lint upgrades causes a lot gosec issues due to a new check for integer conversion overflow. This PR checks for integer overflows within the elasticsearch exporter package. #### Link to tracking issue Related: open-telemetry#36638 --------- Co-authored-by: Carson Ip <[email protected]> Co-authored-by: Tim Rühsen <[email protected]> Co-authored-by: Christos Markou <[email protected]>
….62 (open-telemetry#36798) #### Description The golangci-lint upgrades causes a lot gosec issues due to a new check for integer conversion overflow. This PR checks for integer overflows within the elasticsearch exporter package. #### Link to tracking issue Related: open-telemetry#36638 --------- Co-authored-by: Carson Ip <[email protected]> Co-authored-by: Tim Rühsen <[email protected]> Co-authored-by: Christos Markou <[email protected]>
Description
The golangci-lint upgrades causes a lot gosec issues due to a new check for integer conversion overflow.
This PR checks for integer overflows within the elasticsearch exporter package.
Link to tracking issue
Related: #36638