Aerospike
The OpenTelemetry Collector's Aerospike receiver collects 14 metrics from Aerospike 4.9+, including node connections, transactions, namespace memory and disk usage, query and scan counts, and geojson query statistics. This guide configures the receiver, connects to an Aerospike node, and ships metrics to base14 Scout.
Prerequisites
| Requirement | Minimum | Recommended |
|---|---|---|
| Aerospike | 4.9 | 7.x+ |
| OTel Collector Contrib | 0.90.0 | latest |
| base14 Scout | Any | — |
Before starting:
- Aerospike client port (3000) must be accessible from the host running the Collector
- No authentication required for Community Edition
- OTel Collector installed — see Docker Compose Setup
What You'll Monitor
- Connections: open connections, connection lifecycle counts
- Transactions: transaction counts by type and result
- Memory: node memory free percentage, namespace memory usage
- Disk: namespace disk availability
- Queries & Scans: query and scan counts by type and result, tracked queries
- GeoJSON: region query requests, points, cells, false positives
Full metric reference: OTel Aerospike Receiver
Access Setup
Verify your Aerospike instance is accessible:
# Check node status using asadm (if installed)
asadm -e "info"
# Or test connectivity with aql
aql -h localhost -p 3000 -c "show namespaces"
Community Edition requires no authentication. Enterprise Edition uses username/password — see Authentication below.
Configuration
receivers:
aerospike:
endpoint: localhost:3000 # Change to your Aerospike address
collection_interval: 30s
collect_cluster_metrics: false
metrics:
# Node metrics
aerospike.node.connection.count:
enabled: true
aerospike.node.connection.open:
enabled: true
aerospike.node.memory.free:
enabled: true
aerospike.node.query.tracked:
enabled: true
# Namespace metrics
aerospike.namespace.disk.available:
enabled: true
aerospike.namespace.memory.free:
enabled: true
aerospike.namespace.memory.usage:
enabled: true
aerospike.namespace.transaction.count:
enabled: true
aerospike.namespace.query.count:
enabled: true
aerospike.namespace.scan.count:
enabled: true
# GeoJSON metrics
aerospike.namespace.geojson.region_query_requests:
enabled: true
aerospike.namespace.geojson.region_query_points:
enabled: true
aerospike.namespace.geojson.region_query_cells:
enabled: true
aerospike.namespace.geojson.region_query_false_positive:
enabled: true
processors:
resource:
attributes:
- key: environment
value: ${env:ENVIRONMENT}
action: upsert
- key: service.name
value: ${env:SERVICE_NAME}
action: upsert
batch:
timeout: 10s
send_batch_size: 1024
# Export to base14 Scout
exporters:
otlphttp/b14:
endpoint: ${env:OTEL_EXPORTER_OTLP_ENDPOINT}
tls:
insecure_skip_verify: true
service:
pipelines:
metrics:
receivers: [aerospike]
processors: [resource, batch]
exporters: [otlphttp/b14]
Environment Variables
ENVIRONMENT=your_environment
SERVICE_NAME=your_service_name
OTEL_EXPORTER_OTLP_ENDPOINT=https://<your-tenant>.base14.io
Authentication
For Aerospike Enterprise Edition with authentication enabled:
receivers:
aerospike:
endpoint: localhost:3000
username: ${env:AEROSPIKE_USERNAME}
password: ${env:AEROSPIKE_PASSWORD}
tls:
insecure_skip_verify: true
Cluster-wide Collection
To collect metrics from all nodes discovered through the seed node:
receivers:
aerospike:
endpoint: localhost:3000
collect_cluster_metrics: true
Verify the Setup
Start the Collector and check for metrics within 60 seconds:
# Check Collector logs for successful connection
docker logs otel-collector 2>&1 | grep -i "aerospike"
# Verify Aerospike is running
aql -h localhost -p 3000 -c "show namespaces"
Troubleshooting
Connection refused on port 3000
Cause: Collector cannot reach Aerospike at the configured endpoint.
Fix:
- Verify Aerospike is running:
docker ps | grep aerospikeorsystemctl status aerospike - Confirm the service port in
aerospike.confmatches the receiver endpoint - Check firewall rules if the Collector runs on a separate host
Namespace metrics missing
Cause: Namespace-level disk and memory metrics require the namespace to have storage configured.
Fix:
aerospike.namespace.disk.availableonly appears when the namespace uses disk storage (storage-engine device)aerospike.namespace.memory.freeandmemory.usagerequirememory-sizeto be configured in the namespace- In-memory-only namespaces emit fewer namespace metrics
No metrics appearing in Scout
Cause: Metrics are collected but not exported.
Fix:
- Check Collector logs for export errors:
docker logs otel-collector - Verify
OTEL_EXPORTER_OTLP_ENDPOINTis set correctly - Confirm the pipeline includes both the receiver and exporter
FAQ
Does this work with Aerospike running in Kubernetes?
Yes. Set endpoint to the Aerospike service DNS
(e.g., aerospike.default.svc.cluster.local:3000). The Collector
can run as a sidecar or DaemonSet.
How do I monitor an Aerospike cluster?
Set collect_cluster_metrics: true and point the receiver at any
seed node. The receiver discovers all peer nodes and collects metrics
from the entire cluster. Alternatively, add multiple receiver blocks
for explicit control:
receivers:
aerospike/node1:
endpoint: aerospike-1:3000
aerospike/node2:
endpoint: aerospike-2:3000
Does this work with both Community and Enterprise Edition?
Yes. Community Edition requires no authentication. Enterprise Edition
requires username and password in the receiver config. The same
metrics are collected from both editions.
Why are GeoJSON metrics showing zero?
GeoJSON metrics only increment when geospatial queries are executed against secondary indexes with geojson data types. They remain at zero if geospatial features are not used.
What's Next?
- Create Dashboards: Explore pre-built dashboards or build your own. See Create Your First Dashboard
- Monitor More Components: Add monitoring for Redis, MongoDB, and other components
- Fine-tune Collection: Enable
collect_cluster_metricsfor cluster-wide visibility or adjustcollection_intervalbased on your workload
Related Guides
- OTel Collector Configuration — Advanced collector configuration
- Docker Compose Setup — Run the Collector locally
- Kubernetes Helm Setup — Production deployment
- Redis Monitoring — Alternative key-value store monitoring
- Creating Alerts — Alert on Aerospike metrics