Skip to content

Feat: Aerospike instrumentation#2545

Open
NimrodAvni78 wants to merge 1 commit into
open-telemetry:mainfrom
coralogix:nimrodavni78/aerospike
Open

Feat: Aerospike instrumentation#2545
NimrodAvni78 wants to merge 1 commit into
open-telemetry:mainfrom
coralogix:nimrodavni78/aerospike

Conversation

@NimrodAvni78

@NimrodAvni78 NimrodAvni78 commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Summary

First step in #2531
implement instrumentation for Aerospike Satabase calls.

Important things to mention

  • Aerospike currently does not have official or non-official otel instrumentation. and we relied on the general DB semantic conventions. with a new non-existing db.system.name: aerospike
  • Protocol detection is currently purely in user-space. only limitations i found currently is that some clients (for example java) receive responses split. first the header and only then the data. in that case we cannot read the status code correctly and assume a failed response is actually a success, we still try to parse the status code for best effort. and kernel side detction and implementation will be implemented in next steps
  • db.query.text is populated using the key used for the query. the key is not present in the request if the sendKey WriteOption is not enabled by the client.

All of this is also described in devdocs/protocols/tcp/aerospike.md

Validation

@NimrodAvni78 NimrodAvni78 requested a review from a team as a code owner June 30, 2026 19:18
@codecov

codecov Bot commented Jun 30, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 63.30275% with 120 lines in your changes missing coverage. Please review.
✅ Project coverage is 69.24%. Comparing base (8be3320) to head (e2049b4).
⚠️ Report is 6 commits behind head on main.

Files with missing lines Patch % Lines
pkg/ebpf/common/aerospike_detect_transform.go 66.22% 61 Missing and 16 partials ⚠️
pkg/appolly/app/request/span.go 34.28% 21 Missing and 2 partials ⚠️
pkg/export/otel/tracesgen/tracesgen.go 60.00% 10 Missing and 2 partials ⚠️
pkg/appolly/app/request/span_getters.go 40.00% 3 Missing ⚠️
pkg/ebpf/common/tcp_detect_transform.go 85.00% 3 Missing ⚠️
pkg/appolly/app/request/metric_attributes.go 0.00% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2545      +/-   ##
==========================================
+ Coverage   69.10%   69.24%   +0.14%     
==========================================
  Files         348      350       +2     
  Lines       47380    47842     +462     
==========================================
+ Hits        32740    33130     +390     
- Misses      12589    12641      +52     
- Partials     2051     2071      +20     
Flag Coverage Δ
integration-test 51.07% <55.98%> (-0.07%) ⬇️
integration-test-arm 27.07% <8.56%> (+0.73%) ⬆️
integration-test-vm-5.15-lts 27.74% <7.04%> (-0.22%) ⬇️
integration-test-vm-6.18-lts 26.93% <6.33%> (-0.72%) ⬇️
k8s-integration-test 34.34% <5.98%> (-1.20%) ⬇️
oats-test 35.18% <7.74%> (-0.16%) ⬇️
unittests 63.69% <59.50%> (+0.06%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant