Hanzo Telemetry
telemetry.hanzo.ai
The collector that sits between your app and wherever the data goes
One hop you control
01
OTLP in, OTLP out
Receives over gRPC and HTTP, exports the same way. OTLP is the format the OpenTelemetry SDKs already speak, so nothing in your code changes to point at it.
receivers:
02
Traces, metrics and logs
All three move through the same process, so there is one thing to run, one config to read and one place to look when telemetry stops arriving.
pipelines:
03
Batching
Spans arrive one at a time and leave in batches. That is the difference between a request per span and a request per few thousand, and your backend feels it.
batch:
04
A memory ceiling
Tell it how much memory it may use and it refuses work rather than exceeding it. Telemetry is the thing that should degrade during an incident, not the thing that causes one.
memory_limiter:
05
Assembled, not installed
This is the collector itself. Build a distribution with the receivers, processors and exporters you actually want, and ship one binary containing those and nothing else.
build:
06
It runs where you run
A binary in your own network. Whatever you decide not to forward, you decide before the data has left — which is the only point where that is still your call.
exporters:
01 / 06
1receivers:
2 otlp:
3 protocols:
4 grpc:
5 http:
6
7processors:
8 memory_limiter:
9 limit_mib: ${CEILING}
10 batch:
11
12exporters:
13 otlp:
14 endpoint: ${BACKEND}
15
16service:
17 pipelines:
18 traces: [otlp] → [memory_limiter, batch] → [otlp]
19 metrics: [otlp] → [memory_limiter, batch] → [otlp]
20 logs: [otlp] → [memory_limiter, batch] → [otlp]
Put it in front of your backend
Your config
signals
protocols
processors
receivers:
otlp:
protocols:
grpc:
http:
processors:
memory_limiter:
limit_mib: ${CEILING}
batch:
exporters:
otlp:
endpoint: ${BACKEND}
service:
pipelines:
traces:
receivers: [otlp]
processors: [memory_limiter, batch]
exporters: [otlp]
metrics:
receivers: [otlp]
processors: [memory_limiter, batch]
exporters: [otlp]
logs:
receivers: [otlp]
processors: [memory_limiter, batch]
exporters: [otlp]Get Telemetry
OpenTelemetry ingest
Paste and ship
Paste this into any agent. It reads the skill manifest and calls Telemetry from there.
Read https://hanzo.ai/skill.md and use Hanzo Telemetry in my project.