model: align HTTP with ECS
- Dominant language
- Go
- Stars
- 1.3k
- Forks
- 543
- Avg merge
- 1d 18h
- Merged PRs (30d)
- 109
Description
ECS defines the [HTTP](https://www.elastic.co/guide/en/ecs/current/ecs-http.html) fieldset.
APM stores transaction HTTP fields in compliance with ECS, but span HTTP fields are nested inside the span namespace. We should move these fields to the top level http namespace. Some of the fields are currently indexed; these fields would need to be duplicated to avoid breaking changes.
APM stores additional HTTP fields for transactions and spans that are not yet defined in ECS:
- `http.response.decoded_body_size`
- `http.response.encoded_body_size`
- `http.response.headers`
- `http.response.transfer_size`
- `http.request.cookies`
We should compare these to the ECS-defined fields (`http.request.bytes`, etc.) and propose changes to ECS or the APM Server code as necessary.
APM stores the HTTP request body as `http.request.body.original`, whereas ECS defines it as `http.request.body.content`. When upgrading to 7.0 we agreed on keeping original; not sure if we need to revisit.
Contributor guide
Assessment
This issue has not been assessed yet.