Payload format description for communication between the Agent and the Datadog backend.
This repository includes the protocol-buffer IDL used by the agent6 and agent7 to communicate with the Datadog backend. Those payloads are only supported by the V2 API endpoints. The generated Go, Python and Java implementations are checked into this repository and can be used directly.
The logs payload is defined in proto/logs/agent_logs_payload.proto
.
The following implementations are available:
- Go (gogofast): github.com/DataDog/agent-payload/pb
- Java:
java/com/dd/agent/pb/Log.java
The metrics payload is defined in proto/metrics/agent_payload.proto
.
The following implementations are available:
- Go (gogofast): github.com/DataDog/agent-payload/gogen
- Python:
python/agent_payload_pb2.py
The process payload is defined in proto/process/agent.proto
.
The following implementations are available:
- Go (gogofast): github.com/DataDog/agent-payload/process (note that this go package contains additional functionality beyond the generated PB implementation).
After updating the IDL you must:
- Regenerate the code:
GOPATH=$(go env GOPATH) rake codegen
- Create a new tag with the updated version of the payload